Ludovic Courtès
82dc2b9af9
distro: Add an `ld' wrapper, to pass missing `-rpath' flags.
...
* distro/ld-wrapper.scm: New file.
* Makefile.am (MODULES): Add it.
* distro/base.scm (ld-wrapper-boot3): New variable.
(%boot3-inputs): Add LD-WRAPPER-BOOT3.
(bash-final, guile-final, ld-wrapper): New final.
(%final-inputs): Use BASH-FINAL; add LD-WRAPPER.
(gcc-4.7): Remove the `-rpath' trick from the `lib' spec string.
2012-09-26 21:21:05 +02:00
Ludovic Courtès
dc8907d8e3
distro: gcc: Patch `lib' spec to add `-rpath' for each `-L'.
...
* distro/base.scm (gcc-4.7): Patch `LIB_SPEC' to add `-rpath' for each
`-L'. Spec string suggested by Marc Glisse <marc.glisse@inria.fr>.
(libtool): Add `libtool-skip-tests.patch'.
* distro/patches/libtool-skip-tests.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2012-09-14 00:49:39 +02:00
Ludovic Courtès
457dd86d66
Add (guix ftp) and companion modules.
...
* guix/ftp-client.scm, guix/ftp.scm, guix/build/ftp.scm: New files.
* Makefile.am (MODULES): Add them.
* distro/base.scm (libffi): Use `ftp-fetch'.
2012-09-12 23:47:49 +02:00
Ludovic Courtès
b289e9f9dd
distro: Add Perl.
...
* distro/base.scm (perl): New variable.
* distro/patches/perl-no-sys-dirs.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2012-09-11 22:17:20 +02:00
Ludovic Courtès
be13fbfa83
Add (guix build-system trivial).
...
* guix/build-system/trivial.scm: New file.
* Makefile.am (MODULES): Add it.
* tests/packages.scm ("trivial"): New test.
* guix/packages.scm (package-derivation): Allow SOURCE to be #f.
2012-09-10 22:47:10 +02:00
Ludovic Courtès
a5071b990d
distro: diffutils: Allow builds with glibc 2.16+.
...
* distro/patches/diffutils-gets-undeclared.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
* distro/base.scm (diffutils): Apply. `diffutils-gets-undeclared.patch'.
2012-09-02 16:13:49 +02:00
Ludovic Courtès
472894aae8
distro: tar: Allow builds with glibc 2.16+.
...
* distro/patches/tar-gets-undeclared.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
* distro/base.scm (tar): Apply. `tar-gets-undeclared.patch'.
2012-09-02 16:05:41 +02:00
Ludovic Courtès
9dd036f35c
distro: m4: Add patch to allow builds with glibc 2.16+.
...
* distro/base.scm (m4): Use `m4-gets-undeclared.patch'.
* distro/patches/m4-gets-undeclared.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2012-09-01 11:52:52 +02:00
Ludovic Courtès
c79dae6076
distro: Add missing Binutils patch.
...
* distro/patches/binutils-ld-new-dtags.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
2012-08-29 00:15:39 +02:00
Ludovic Courtès
800cdeef31
distro: Move patches to their own directory.
...
* Makefile.am (nobase_dist_guilemodule_DATA): Keep only $(MODULES).
(patchdir): New variable.
(dist_patch_DATA): New variable. Patch files formerly
in $(nobase_dist_guilemodule_DATA).
(.scm.go): Define `DISTRO_PATCH_DIRECTORY' and
`DISTRO_INSTALLED_PATCH_DIRECTORY'.
(TESTS_ENVIRONMENT): Define `DISTRO_PATCH_DIRECTORY'.
* distro.scm (%patch-directory): New variable.
(search-patch): New procedure.
* distro/base.scm: Use `search-patch' instead of `(search-path
%load-path ...)'.
* distro/findutils-absolute-paths.patch, distro/guile-1.8-cpp-4.5.patch,
distro/m4-readlink-EINVAL.patch, distro/m4-s_isdir.patch,
distro/make-impure-dirs.patch: Move to `distro/patches'.
2012-08-22 17:25:43 +02:00
Ludovic Courtès
af5521ca01
distro: Add GNU Findutils.
...
* distro/base.scm (findutils): New variable.
* distro/findutils-absolute-paths.patch: New file.
* Makefile.am (nobase_dist_guilemodule_DATA): Add it.
2012-08-22 15:51:17 +02:00
Ludovic Courtès
ab77686565
distro: Add GNU Make.
...
* distro/base.scm (gnu-make): New variable.
* distro/make-impure-dirs.patch: New file.
* Makefile.am (nobase_dist_guilemodule_DATA): Add it.
2012-08-21 18:14:57 +02:00
Ludovic Courtès
3a310cc017
build: Add `--with-libgcrypt-prefix'; capture the path to libgcrypt.
...
* configure.ac: Add `--with-libgcrypt-prefix'. Substitute `LIBGCRYPT'.
* Makefile.am (.scm.go): Pass $(LIBGCRYPT).
* guix/utils.scm (%libgcrypt): New variable.
(sha256): Use it.
2012-08-17 10:41:27 +02:00
Ludovic Courtès
437e0729d8
build: Pass the right flags for "make distcheck".
...
* Makefile.am (AM_DISTCHECK_CONFIGURE_FLAGS): New variable.
* configure.ac: Define and substitute `NIX_PREFIX'.
2012-08-14 18:50:36 +02:00
Ludovic Courtès
d95c0113c9
build: Add `test.drv' to the distribution.
...
* Makefile.am (EXTRA_DIST): Add `tests/test.drv'.
2012-08-14 18:44:52 +02:00
Ludovic Courtès
b86b00567c
build: Pass $(NIX_INSTANTIATE) to the build and test environments.
...
* Makefile.am (.scm.go): Define $NIX_INSTANTIATE.
(TESTS_ENVIRONMENT): Likewise, and define $NIX_HASH.
* guix/utils.scm (nixpkgs-derivation): Use $NIX_INSTANTIATE when
defined.
* tests/utils.scm (%nix-hash): New variable.
("sha256 & bytevector->nix-base32-string"): Use it.
2012-08-14 18:42:46 +02:00
Ludovic Courtès
ed795c0608
build: Add SRFI-64 to the distribution.
...
* Makefile.am (MODULES): Add `srfi/srfi-64.scm' and
`srfi/srfi-64.upstream.scm'.
2012-08-14 18:28:04 +02:00
Ludovic Courtès
2152e3c5b2
build: Add release.nix.
...
* release.nix: New file.
* Makefile.am (EXTRA_DIST): Add it.
2012-08-14 17:38:18 +02:00
Ludovic Courtès
2282ec3a04
distro: Add GNU Readline.
...
* distro/base.scm (readline): New variable.
(guile-1.8, guile-2.0): Use it.
* distro/readline-link-ncurses.patch: New file.
* Makefile.am (nobase_dist_guilemodule_DATA): Add it.
2012-07-12 16:54:00 +02:00
Ludovic Courtès
4ac3df4290
distro: Add GNU M4.
...
* distro/base.scm (m4): New variable.
* distro/m4-readlink-EINVAL.patch, distro/m4-s_isdir.patch: New files.
* Makefile.am (nobase_dist_guilemodule_DATA): Add them.
2012-07-11 15:42:40 +02:00
Ludovic Courtès
e1e7b29aae
build: Adjust tests to Automake 1.12.
...
* Makefile.am (TESTS_ENVIRONMENT): Remove `guile' invocation. Add
semicolons, and export the variables as shown in the Automake 1.12
manual.
(LOG_COMPILER): New variable, with `guile' invocation.
2012-07-07 22:51:40 +02:00
Ludovic Courtès
d767288490
distro: Add GNU Guile 1.8.
...
* distro/base.scm (guile-1.8): New variable.
* distro/guile-1.8-cpp-4.5.patch: New file.
* Makefile.am (nobase_dist_guilemodule_DATA): Add it.
2012-07-06 01:00:40 +02:00
Ludovic Courtès
b0e0d0e99f
Add builder-side utilities for phases, stream editing, & co.
...
* guix/build/utils.scm (with-directory-excursion): New macro.
(alist-cons-before, alist-cons-after, alist-replace): New procedures.
(substitute): New procedure.
* tests/build-utils.scm: New file.
* Makefile.am (TESTS): Add `tests/build-utils.scm'.
2012-07-05 00:13:30 +02:00
Ludovic Courtès
5f904ffbb1
build: Don't auto-compile tests.
...
* Makefile.am (TESTS_ENVIRONMENT): Add `--no-auto-compile'.
2012-07-02 01:35:39 +02:00
Ludovic Courtès
73fbb90431
build: Build (guix utils) first.
...
* Makefile.am (MODULES): Move `guix/utils.scm' first.
2012-07-01 15:10:50 +02:00
Ludovic Courtès
14a1c3197c
Add `guix-build'.
...
* guix-build.in: New file.
* configure.ac: Emit `guix-build'. Add `commands-exec'.
* Makefile.am (bin_SCRIPTS): New variable.
* po/POTFILES.in: Add `guix-build.in'.
2012-07-01 00:56:24 +02:00
Ludovic Courtès
6b1891b0a1
Add (distro) with a package searching facility.
...
* Makefile.am (MODULES): Add `distro.scm'.
* distro.scm: New file.
* po/POTFILES.in: Add it.
* tests/packages.scm ("find-packages-by-name", "find-packages-by-name
with version"): New tests.
2012-06-30 16:37:19 +02:00
Ludovic Courtès
f68b089361
Gettextize, with GNU Gettext 0.18.1.
...
* Makefile.am (EXTRA_DIST): Add `build-aux/config.rpath'.
(SUBDIRS, ACLOCAL_AMFLAGS): New variables.
* configure.ac: Use `AM_GNU_GETTEXT'. Emit `po/Makefile.in'.
* po/Makevars, po/POTFILES.in: New files.
2012-06-29 22:38:22 +02:00
Ludovic Courtès
e3ce5d709f
Add a declarative packaging layer.
...
* Makefile.am (MODULES): Add `guix/packages.scm' and `distro/base.scm'.
(TESTS): Add `tests/packages.scm'.
(EXTRA_DIST): New variable.
* guix/packages.scm, distro/base.scm, tests/packages.scm: New files.
* guix/http.scm (http-fetch): Make `name' an optional argument, to match
the expectations of `package-source-derivation'.
2012-06-28 01:24:34 +02:00
Ludovic Courtès
04a0b857d8
build: Define $NIXPKGS when compiling.
...
* Makefile.am (.scm.go): Define $NIXPKGS.
2012-06-28 00:53:13 +02:00
Ludovic Courtès
208f7cd155
Abstract build systems.
...
* Makefile.am (MODULES): Add `guix/build-system.scm' and
`guix/build-system/gnu.scm'. Remove `guix/gnu-build-system.scm'.
* guix/build-system.scm: New file.
* guix/gnu-build-system.scm: Rename to...
* guix/build-system/gnu.scm: ... this.
(gnu-build-system): New variable.
* tests/builders.scm: Adjust `use-module' clauses.
("gnu-build-system"): New test.
2012-06-27 23:58:07 +02:00
Ludovic Courtès
73d9659697
build: Be cross-compilation-ready.
...
* Makefile.am (.scm.go): Pass `--target=$(host)'.
* configure.ac: Use `AC_CANONICAL_HOST'.
2012-06-15 10:11:29 +02:00
Ludovic Courtès
48e8333d91
build: Provide the right include path when building modules.
...
* Makefile.am (.scm.go): Add missing `-L $(top_srcdir)'.
2012-06-15 10:04:38 +02:00
Ludovic Courtès
1273d44ac7
Build (guix) last.
...
* Makefile.am (MODULES): Move `guix.scm' last.
2012-06-15 10:03:08 +02:00
Ludovic Courtès
af51c820b1
Add a build system.
...
* configure.ac, Makefile.am: New files.
2012-06-13 18:01:25 +02:00