Apparently, during grafting, Guix can somehow mangle compiled
Racket CS files (.zo) such that Racket will refuse to load them.
(Maybe it has something to do with compression?)
So, we stop patching Racket sources with absolute paths to store
files (i.e. for foreign libraries to dlopen).
Instead, we put them in a data file that doesn't get compiled or,
in one case, embed it in C.
Fixes https://issues.guix.gnu.org/47064
* gnu/packages/patches/racket-sh-via-rktio.patch: New file.
Adds a special case at the C level, controlled by a preprocessor macro,
to handle attempts to execute "/bin/sh".
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/scheme.scm (racket)[source](patches): Apply it.
(racket)[arguments](#:configure-flags): Add the CPP flag to enable it.
(racket)[arguments](#:modules): Use srfi-1.
(racket)[arguments](#:phases): Remove 'patch-/bin/sh and 'pre-configure.
Change 'pre-configure-minimal to just change directory.
Add 'patch-config.rktd-lib-search-dirs after 'build and before 'install
to configure Racket's "lib-search-dirs".
(racket, racket-minimal)[inputs]: Add bash-minimal as an explicit input.
(racket-minimal)[source]: Adjust to inherit patches from racket.
(racket-minimal)[arguments]: Inherit from racket: changes no longer needed.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This fixes the following error when running the "docker-system" test:
In ice-9/ftw.scm:
553:30 1 (_ #<directory stream db6660>)
In unknown file:
0 (readdir #<directory stream db6660>)
ERROR: In procedure readdir:
In procedure readdir: Cannot allocate memory
* gnu/tests/docker.scm (%test-docker-system): Bump image building VM memory
size to 1024 MiB.
* gnu/packages/maths.scm (make-blis): Remove internal function.
Inline into ...
(bliss): ... this variable. Update to 0.8.1.
[native-inputs]: Add "python" and "perl".
[arguments]: Adjust 'configure' phase to take advantage of new support
for "configuration families" with runtime hardware detection. Select
configuration automatically based on target systems, and allow
"--blis-config=" in #:configure-flags to override the default.
When building for x86_64, include all supported microarchetecture
specializations. Add "--enable-verbose-make" configure flag for better
build logs. Stop ignoring other flags from #:configure-flags.
Remove explicit #:substitutable? argument: the package is now always
substitutable. Add (srfi srfi-1) to #:modules.
(blis/x86_64): Remove internal macro.
(blis-sandybridge): Remove package: included in 'blis'.
(blis-haswell): Remove package: included in 'blis'.
(blis-knl): Remove package: included in 'blis'.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/embedded.scm (newlib-nano-arm-none-eabi)[arguments]: Hard link
library files from *.a to *_nano.a. Hard link newlib.h to a common location.
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
* gnu/packages/syncthing.scm (syncthing): Update to 1.15.1.
[source]: Use bundled dependencies.
[inputs]: Remove field.
[arguments]: Adjust the custom 'build' and 'install' phases for 1.15.1.
Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu/packages/patches/lksctp-tools-1.0.18-fix-header-file-name.patch:
New file.
* gnu/local.mk[patches]: Add it.
* gnu/packages/networking.scm(/lksctp-tools)[source]: Use this patch.