aboutsummaryrefslogtreecommitdiff
path: root/Makefile.am
AgeCommit message (Collapse)Author
2012-11-13guix-download: Add support for file:// URIs.Ludovic Courtès
* guix-download.in (fetch-and-store): New procedure. (guix-download): Use it to compute PATH. Call `add-to-store' when a `file' URI scheme is used. * Makefile.am (AM_TESTS_ENVIRONMENT): New variable. * tests/guix-download.sh: Add test.
2012-11-13distro: Add GNU Texinfo.Ludovic Courtès
* distro/packages/texinfo.scm: New file. * Makefile.am (MODULES): Add it.
2012-11-13distro: Add GNU Libtasn1 and GnuTLS.Ludovic Courtès
* distro/packages/gnutls.scm: New file. * Makefile.am (MODULES): Add it.
2012-11-13distro: Add GNU Nettle.Ludovic Courtès
* distro/packages/nettle.scm: New file. * Makefile.am (MODULES): Add it.
2012-11-13build: Add $(top_builddir) to the load path.Ludovic Courtès
* Makefile.am (DOWNLOAD_FILE): Add $(top_builddir) to the search path, since that's where guix/config.scm is. (.scm.go): Likewise.
2012-11-13distro: Patch libc to avoid accessing /etc/ld.so.cache and friends.Ludovic Courtès
* distro/packages/base.scm (glibc): Apply `glibc-no-ld-so-cache.patch'. (glibc-final): Inherit GLIBC's inputs. * distro/packages/patches/glibc-no-ld-so-cache.patch: New file. * Makefile.am (dist_patch_DATA): Add it.
2012-11-13Remove (guix http) and (guix ftp).Ludovic Courtès
* guix/ftp.scm, guix/http.scm, guix/build/ftp.scm, guix/build/http.scm: Remove. * Makefile.am (MODULES): Likewise. * tests/builders.scm, distro/packages/base.scm, distro/packages/bash.scm, distro/packages/bdw-gc.scm, distro/packages/compression.scm, distro/packages/gawk.scm, distro/packages/gnupg.scm, distro/packages/gperf.scm, distro/packages/guile.scm, distro/packages/libffi.scm, distro/packages/libsigsegv.scm, distro/packages/libtool.scm, distro/packages/libunistring.scm, distro/packages/lout.scm, distro/packages/m4.scm, distro/packages/multiprecision.scm, distro/packages/ncurses.scm, distro/packages/perl.scm, distro/packages/pkg-config.scm, distro/packages/pth.scm, distro/packages/readline.scm, distro/packages/recutils.scm: Use `url-fetch' instead of `http-fetch' and `ftp-fetch'. * distro/packages/bootstrap.scm: Likewise (bootstrap-origin): Remove references to `http-fetch' and `ftp-fetch'. * guix.scm (%public-modules): Remove `http' and `ftp'; add `download'.
2012-11-12Add (guix download) and (guix build download).Ludovic Courtès
* guix/download.scm, guix/build/download.scm: New files. * Makefile.am (MODULES): Add them. * tests/builders.scm ("url-fetch"): New test. * distro/packages/bootstrap.scm (bootstrap-origin): Support `url-fetch'. * guix/snix.scm (snix-derivation->guix-package): Use `url-fetch' instead of `http-fetch'.
2012-11-11Move base32 code to (guix base32).Ludovic Courtès
* guix/utils.scm (bytevector-quintet-ref, bytevector-quintet-ref-right, bytevector-quintet-length, bytevector-quintet-fold, bytevector-quintet-fold-right, make-bytevector->base32-string, %nix-base32-chars, %rfc4648-base32-chars, bytevector->base32-string, bytevector->nix-base32-string, bytevector-quintet-set!, bytevector-quintet-set-right!, base32-string-unfold, base32-string-unfold-right, make-base32-string->bytevector, base32-string->bytevector, nix-base32-string->bytevector): Move to... * guix/base32.scm: ... here. New file. * tests/utils.scm (%nix-hash, "bytevector->base32-string", "base32-string->bytevector", "nix-base32-string->bytevector", "sha256 & bytevector->base32-string"): Move to... * tests/base32.scm: ... here. New file * guix-download.in, guix/derivations.scm, guix/packages.scm, guix/snix.scm, tests/builders.scm, tests/derivations.scm: Adjust accordingly. * guix.scm (%public-modules): Add `base32'.
2012-11-08guix-download: Error out when the HTTP response code is not 200.Ludovic Courtès
* guix-download.in (http-fetch): Leave with an error message when RESPONSE's code is not 200. * tests/guix-download.sh: New file. * Makefile.am (TESTS): Add it.
2012-11-07build: Remove now unnecessary dependency of downloads on guix/utils.go.Ludovic Courtès
* Makefile.am (distro/packages/bootstrap/x86_64-linux/guile-bootstrap-2.0.6.tar.xz, distro/packages/bootstrap/i686-linux/guile-bootstrap-2.0.6.tar.xz): Remove dependency on guix/utils.go.
2012-11-06distro: Move bootstrap tarball packages to (distro packages make-bootstrap).Ludovic Courtès
* distro/packages/base.scm (binutils-final): Make public. (static-package, %bash-static, %static-inputs, %static-binaries, %binutils-static, %binutils-static-stripped, %glibc-stripped, %gcc-static, %gcc-stripped, %guile-static, %guile-static-stripped, tarball-package, %bootstrap-binaries-tarball, %binutils-bootstrap-tarball, %glibc-bootstrap-tarball, %guile-bootstrap-tarball): Move to... * distro/packages/make-bootstrap.scm: ... here. New file. * Makefile.am (MODULES): Add it.
2012-11-05distro: Add GnuPG and companion libraries.Ludovic Courtès
* distro/packages/gnupg.scm: New file. * Makefile.am (MODULES): Add it.
2012-11-04distro: Add (distro packages compression).Ludovic Courtès
* distro/packages/base.scm (gzip, bzip2, xz): Move to... * distro/packages/compression.scm: ... here. New file. * Makefile.am (MODULES): Add it.
2012-11-04distro: Add GNU Pth.Ludovic Courtès
* distro/packages/pth.scm: New file. * Makefile.am (MODULES): Add it.
2012-11-04distro: Add GNU gperf.Ludovic Courtès
* distro/packages/gperf.scm: New file. * Makefile.am (MODULES): Add it. * distro/packages/guile.scm (guile-reader): Use it.
2012-11-04distro: Split (distro packages base) into several files.Ludovic Courtès
* distro/packages/base.scm (libsigsegv, gawk, perl, m4, gmp, mpfr, mpc, ncurses, readline, bash, libtool, libunistring, libffi, pkg-config, libgc): Move to modules of their own. (guile-1.8, guile-2.0): Move to... * distro/packages/guile.scm: ... here. * distro/packages/bash.scm, distro/packages/bdw-gc.scm, distro/packages/gawk.scm, distro/packages/libffi.scm, distro/packages/libsigsegv.scm, distro/packages/libtool.scm, distro/packages/libunistring.scm, distro/packages/m4.scm, distro/packages/multiprecision.scm, distro/packages/ncurses.scm, distro/packages/perl.scm, distro/packages/pkg-config.scm, distro/packages/readline.scm: New files.
2012-11-04distro: Move bootstrap packages to (distro packages bootstrap).Ludovic Courtès
* distro/packages/base.scm (glibc-dynamic-linker, %bootstrap-guile, bootstrap-origin, package-from-tarball, %bootstrap-base-url, %bootstrap-coreutils&co, %bootstrap-binutils, %bootstrap-glibc, %bootstrap-gcc, %bootstrap-inputs, package-with-bootstrap-guile): Move to ... * distro/packages/bootstrap.scm: ... here. New file. * Makefile.am (MODULES): Add it. * tests/builders.scm: Use (distro packages bootstrap). (%bootstrap-guile): Remove. * tests/packages.scm: Likewise. * tests/union.scm: Likewise, and remove @@ to access %bootstrap-inputs. * tests/derivations.scm: Use (distro packages bootstrap) and remove @@ to access %bootstrap-coreutils&co. * HACKING (When the platform is supported by Nixpkgs): Update accordingly.
2012-11-04distro: Go for one module per package.Ludovic Courtès
The alternative, which was to use one module per category, would probably not scale well. First, because many packages could fall into several categories (does GnuTLS go into "networking", "security", or "libraries"?). Second, because that could easily lead to circular dependencies among modules ("security" and "networking" depend on each other, etc.) * distro/packages/databases.scm: Rename to... * distro/packages/recutils.scm: ... this. * distro/packages/typesetting.scm: Rename to... * distro/packages/lout.scm: ... this. * Makefile.am (MODULES): Adjust accordingly. * po/POTFILES.in: Likewise.
2012-11-04Add (guix snix) and the `guix-import' command.Ludovic Courtès
* guix/snix.scm, tests/snix.scm, guix-import.in: New files. * configure.ac: Output `guix-import' and make it executable. * Makefile.am (bin_SCRIPTS): Add `guix-import'. (MODULES): Add `guix/snix.scm'. (TESTS): Add `tests/snix.scm'.
2012-11-03build: Require GNU libgcrypt.Ludovic Courtès
* guix/utils.scm (sha256): Remove Coreutils- and libchop-based implementations. * README: Update accordingly. * m4/guix.m4: New file. * configure.ac: Use `GUIX_ASSERT_LIBGCRYPT_USABLE'. Set and substitute `LIBGCRYPT_PREFIX'. * Makefile.am (AM_DISTCHECK_CONFIGURE_FLAGS): Pass `--with-libgcrypt-prefix=$(LIBGCRYPT_PREFIX)'.
2012-11-03build: Produce (guix config) instead of using compile-time tricks.Ludovic Courtès
* guix/config.scm.in: New file. * guix/utils.scm: Use it. (%libgcrypt): Remove. (%nixpkgs-directory): Don't capture the compile-time $NIXPKGS; use %NIXPKGS instead. (nixpkgs-derivation): Use %NIX-INSTANTIATE. * pre-inst-env.in (NIX_INSTANTIATE, NIXPKGS, LIBGCRYPT): Remove. * configure.ac: Emit `guix/config.scm'. * Makefile.am (GOBJECTS): Add `guix/config.go'. (nobase_nodist_guilemodule_DATA): Add `guix/config.scm'.
2012-11-03build: Clearly mark Nixpkgs as optional.Ludovic Courtès
* configure.ac: Always show the result of checking for Nixpkgs. Don't warn when Nixpkgs is not found. * Makefile.am (AM_DISTCHECK_CONFIGURE_FLAGS): Remove `--with-nixpkgs' flag. * guix/utils.scm (%nixpkgs-directory): Use either the compile-time or the run-time `NIXPKGS' environment variable. * release.nix (jobs.tarball, jobs.build): Remove `--with-nixpkgs' configure flag. * README: Mark Nixpkgs as optional. * distro/packages/databases.scm, distro/packages/guile.scm, distro/packages/typesetting.scm: Change uses of `nixpkgs-derivation*' to `nixpkgs-derivation', to avoid failing at compile-time.
2012-11-01Add a preliminary `guix-package' command-line tool.Ludovic Courtès
* guix-package.in, tests/guix-package.sh: New files. * configure.ac: Output `guix-package'. * Makefile.am (TESTS): Add `tests/guix-package.sh'. (bin_SCRIPTS): Add `guix-package'.
2012-11-01build: Add unit test for the `guix-build' command.Ludovic Courtès
* tests/guix-build.sh: New file. * Makefile.am (TESTS): Add it. (LOG_COMPILER): Rename to... (SCM_LOG_COMPILER): ... this. Move flags to... (AM_SCM_LOG_FLAGS): ... this. (TEST_EXTENSIONS, SH_LOG_COMPILER, AM_SH_LOG_FLAGS): New variables.
2012-11-01Add (guix ui).Ludovic Courtès
* guix/ui.scm: New file. * Makefile.am (MODULES): Add it. * po/POTFILES.in: Add it. * guix-build.in: Use it. (_, N_, leave): Remove. (guix-build): Use `with-error-handling' instead of the `guard' form. * guix-download.in: Use it. (_, N_, leave): Remove.
2012-10-29Add (guix build union).Ludovic Courtès
* guix/build/union.scm, tests/union.scm: New files. * Makefile.am (MODULES): Add `guix/build/union.scm'. (TESTS): Add `tests/union.scm'.
2012-10-27build: Preserve the executable bit of bootstrap binaries.Ludovic Courtès
* Makefile.am (install-data-hook): New target.
2012-10-27build: Fix out-of-source-tree builds.Ludovic Courtès
* Makefile.am (distro/packages/bootstrap/x86_64-linux/guile-bootstrap-2.0.6.tar.xz, distro/packages/bootstrap/i686-linux/guile-bootstrap-2.0.6.tar.xz): Make the target's parent directory. * pre-inst-env.in (DISTRO_BOOTSTRAP_PATH): Add the builddir-relative directory.
2012-10-27build: Move `distro/patches' to `distro/packages/patches'.Ludovic Courtès
* distro/patches: Move directory to... * distro/packages/patches: ... here. * Makefile.am (dist_patch_DATA): Adjust accordingly. * pre-inst-env.in (DISTRO_PATCH_DIRECTORY): Likewise.
2012-10-27build: Use `pre-inst-env' to compile the source.Ludovic Courtès
* Makefile.am (.scm.go): Use `pre-inst-env' instead of re-defining the environment variables, except for `DISTRO_INSTALLED_PATCH_DIRECTORY' and `DISTRO_INSTALLED_BOOTSTRAP_DIRECTORY'.
2012-10-26distro: Add i686-linux port.Ludovic Courtès
* distro/packages/bootstrap/i686-linux/bash, distro/packages/bootstrap/i686-linux/mkdir, distro/packages/bootstrap/i686-linux/tar, distro/packages/bootstrap/i686-linux/xz: New files. * distro/packages/base.scm (%bootstrap-coreutils&co, %bootstrap-binutils, %bootstrap-glibc, %bootstrap-gcc): Add hashes of the i686-linux tarballs. * Makefile.am (bootstrap_i686_linuxdir, dist_bootstrap_i686_linux_DATA, nodist_bootstrap_i686_linux_DATA): New variables (DISTCLEANFILES): Add $(nodist_bootstrap_i686_linux_DATA). (distro/packages/bootstrap/i686-linux/guile-bootstrap-2.0.6.tar.xz): New rule.
2012-10-25doc: Add `HACKING'.Ludovic Courtès
* HACKING: New file. * Makefile.am (EXTRA_DIST): Add it.
2012-10-25Add `guix-download'.Ludovic Courtès
* guix-download.in: New file. * configure.ac: Emit `guix-download' and make it executable. * Makefile.am (bin_SCRIPTS): Add `guix-download'. * po/POTFILES.in: Add `guix-download.in'.
2012-10-17distro: Use our own pre-built Guile to bootstrap.Ludovic Courtès
* distro/packages/base.scm (%bootstrap-guile): Build from a tarball containing a pre-built Guile. * distro.scm (%bootstrap-binaries-directory): New variable. (search-bootstrap-binary): New procedure. * Makefile.am (bootstrapdir, bootstrap_x86_64_linuxdir, dist_bootstrap_x86_64_linux_DATA, DISTCLEANFILES, DOWNLOAD_FILE): New variables. (distro/packages/bootstrap/x86_64-linux/guile-bootstrap-2.0.6.tar.xz): New rule. (EXTRA_DIST): Add `build-aux/download.scm'. (.scm.go): Define the `DISTRO_BOOTSTRAP_DIRECTORY' and `DISTRO_INSTALLED_BOOTSTRAP_DIRECTORY' environment variables. * pre-inst-env.in: Define `DISTRO_BOOTSTRAP_DIRECTORY'. * build-aux/download.scm: New file. * distro/packages/bootstrap/x86_64-linux/{bash, mkdir, tar, xz}: New files.
2012-10-17distro: Add patch to allow the bootstrap Guile to work without iconv.Ludovic Courtès
* distro/patches/guile-default-utf8.patch: New file. * Makefile.am (dist_patch_DATA): Add it. * distro/packages/base.scm (%guile-static): Use it. (%guile-static-stripped): Add call to `remove-store-references'.
2012-10-17build: Use `pre-inst-env' to run tests.Ludovic Courtès
* Makefile.am (TESTS_ENVIRONMENT): Remove. (LOG_COMPILER): Use `pre-inst-env'.
2012-10-13distro: Add a statically-linked, relocatable Guile 2.0 package.Ludovic Courtès
* distro/packages/base.scm (%guile-static, %guile-static-stripped): New variables. * distro/patches/guile-relocatable.patch: New file. * Makefile.am (dist_patch_DATA): Add it.
2012-10-13doc: Add the stub of a manual.Ludovic Courtès
* doc/guix.texi: New file. * doc/fdl-1.3.texi: New file, copied from Gnulib. * Makefile.am (info_TEXINFOS): New variable. (EXTRA_DIST): Add `doc/fdl-1.3.texi'.
2012-09-26distro: Add the `guile', `typesetting', and `databases' package modules.Ludovic Courtès
* distro.scm (package-files): Adjust PREFIX-LEN to use the top-level directory, not %DISTRO-MODULE-DIRECTORY. * distro/packages/base.scm (guile-reader, guile-reader/guile-1.8, guile-reader/guile-2.0, lout, recutils): Move to... * distro/packages/guile.scm, distro/packages/typesetting.scm, distro/packages/databases.scm: ... here. New files. * Makefile.am (MODULES): Add them. (EXTRA_DIST): Add `.dir-locals.el'. * .dir-locals.el: New file, with settings formerly in `base.scm'.
2012-09-26distro: Rename (distro ...) to (distro packages ...).Ludovic Courtès
* distro/base.scm, distro/ld-wrapper.scm: Move to `distro/packages'. Adjust LD-WRAPPER-BOOT3 input file name accordingly. * Makefile.am (MODULES): Adjust accordingly. * distro.scm (%distro-module-directory): Change to "/distro/packages". * guix/build-system/gnu.scm (standard-inputs): Change module name to (distro packages base). * tests/packages.scm (test-packages): Likewise.
2012-09-26distro: Add an `ld' wrapper, to pass missing `-rpath' flags.Ludovic Courtès
* 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-14distro: gcc: Patch `lib' spec to add `-rpath' for each `-L'.Ludovic Courtès
* 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-12Add (guix ftp) and companion modules.Ludovic Courtès
* 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-11distro: Add Perl.Ludovic Courtès
* distro/base.scm (perl): New variable. * distro/patches/perl-no-sys-dirs.patch: New file. * Makefile.am (dist_patch_DATA): Add it.
2012-09-10Add (guix build-system trivial).Ludovic Courtès
* 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-02distro: diffutils: Allow builds with glibc 2.16+.Ludovic Courtès
* 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-02distro: tar: Allow builds with glibc 2.16+.Ludovic Courtès
* 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-01distro: m4: Add patch to allow builds with glibc 2.16+.Ludovic Courtès
* 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-08-29distro: Add missing Binutils patch.Ludovic Courtès
* distro/patches/binutils-ld-new-dtags.patch: New file. * Makefile.am (dist_patch_DATA): Add it.