Ludovic Courtès
1959fb04dc
build: Provide a replacement (srfi srfi-37) when the user's one is broken.
...
* srfi/srfi-37.scm.in: New file, taken from Guile 2.0.9.
* m4/guix.m4: New macro.
* configure.ac: Use it. Define Automake conditional `INSTALL_SRFI_37'.
* Makefile.am (nobase_nodist_guilemodule_DATA)[INSTALL_SRFI_37]: Add
srfi/srfi-37.scm.
(GOBJECTS)[INSTALL_SRFI_37]: Add srfi/srfi-37.go.
(srfi/srfi-37.scm)[INSTALL_SRFI_37]: New target.
(EXTRA_DIST): Add srfi/srfi-37.scm.in.
2013-07-17 11:05:19 +02:00
Ludovic Courtès
b97556d75c
build: Bail out on unsupported platforms; add `--with-courage'.
...
* m4/guix.m4 (GUIX_ASSERT_SUPPORTED_SYSTEM): New macro.
* configure.ac: Use it.
2013-07-05 21:54:52 +02:00
Ludovic Courtès
4bc3fcc771
build: Switch to 0.3.
...
* configure.ac: Bump to 0.3. Use the full URL.
2013-05-18 23:01:28 +02:00
Ludovic Courtès
e8b3afeb92
build: Use separate `AC_CONFIG_FILES' invocations for executable files.
...
* configure.ac: Use separate AC_CONFIG_FILES invocations for files that
need to be made executable.
* config-daemon.ac: Likewise.
2013-05-12 23:26:46 +02:00
Ludovic Courtès
9c7dd33a48
build: Make sure the user's Guile has all the required features.
...
* m4/guix.m4 (GUIX_ASSERT_GUILE_FEATURES): New macro.
* configure.ac: Use it.
2013-05-10 00:36:00 +02:00
Ludovic Courtès
56dbcb09d8
build: Explicitly require Guile >= 2.0.5.
...
* configure.ac: Require guile-2.0 >= 2.0.5.
2013-04-27 11:28:47 +02:00
Mark H Weaver
e49951eb3e
Replace individual scripts with master 'guix' script.
...
* scripts/guix.in: New script.
* Makefile.am (bin_SCRIPTS): Add 'scripts/guix'. Remove 'guix-build',
'guix-download', 'guix-import', 'guix-package', and 'guix-gc'.
(MODULES): Add 'guix/scripts/build.scm', 'guix/scripts/download.scm',
'guix/scripts/import.scm', 'guix/scripts/package.scm', and
'guix/scripts/gc.scm'.
* configure.ac (AC_CONFIG_FILES): Add 'scripts/guix'. Remove 'guix-build',
'guix-download', 'guix-import', 'guix-package', and 'guix-gc'.
* guix-build.in, guix-download.in, guix-gc.in, guix-import.in,
guix-package.in: Remove shell script boilerplate. Move to guix-COMMAND.in
to guix/scripts/COMMAND.scm. Rename module from (guix-COMMAND) to
(guix scripts COMMAND). Change "guix-COMMAND" to "guix COMMAND" in
usage help string.
* pre-inst-env.in: Add "@abs_top_builddir@/scripts" to the front of $PATH.
Export $GUIX_UNINSTALLED.
* tests/guix-build.sh, tests/guix-daemon.sh, tests/guix-download.sh,
tests/guix-gc.sh, tests/guix-package.sh: Use "guix COMMAND" instead of
"guix-COMMAND".
* doc/guix.texi: Replace all occurrences of "guix-COMMAND" with
"guix COMMAND".
* po/POTFILES.in: Update.
2013-02-16 22:17:37 -05:00
Ludovic Courtès
8dc2ecfcd9
build: `chmod +x' scripts as they are generated.
...
* configure.ac: Add the `chmod +x' as a second argument to
`AC_CONFIG_FILES'. Remove `AC_CONFIG_COMMANDS' invocation.
2013-02-06 23:04:10 +01:00
Ludovic Courtès
8aab64fca9
build: Require Automake 1.12 or later.
...
* configure.ac: Require Automake 1.12 or later.
2013-01-28 22:30:16 +01:00
Ludovic Courtès
c217708f7b
build: Use "nix-instantiate" as the default name for that program.
...
* configure.ac: Have `NIX_INSTANTIATE' default to `nix-instantiate'.
2013-01-19 23:09:36 +01:00
Ludovic Courtès
5fc5c2f340
build: Bump to version 0.2.
...
* configure.ac: Bump version number.
2013-01-18 16:59:02 +01:00
Ludovic Courtès
fe8ff02827
Add `guix-gc'.
...
* guix-gc.in, tests/guix-gc.sh: New files.
* configure.ac: Output `guix-gc', and make it executable.
* Makefile.am (bin_SCRIPTS): Add `guix-gc'.
(TESTS): Add `tests/guix-gc.sh'.
* doc/guix.texi (Features): Add xref to "Invoking guix-gc".
(Invoking guix-gc): New node.
* po/POTFILES.in: Add `guix-gc.in'.
2013-01-06 00:28:06 +01:00
Ludovic Courtès
c9b70836d0
build: Make `--enable-daemon' the default.
...
* configure.ac: Have $guix_build_daemon default to "yes".
2012-12-13 00:27:27 +01:00
Ludovic Courtès
3a61f8017a
build: When `--enable-daemon', don't error out when Nix programs are missing.
...
* config-daemon.ac: Move AC_ARG_ENABLE([daemon]...)...
* configure.ac: ... here.
When Nix programs are not found, error out only when
$guix_build_daemon is no.
2012-12-13 00:26:41 +01:00
Ludovic Courtès
d8eea3d2bc
build: Capture configure-time settings in (guix config).
...
* configure.ac: Compute and substitute `guix_localstatedir'.
* m4/guix.m4: Substitute `guix_system'.
* guix/config.scm.in (%store-directory, %store-directory, %system): New
variables.
* guix/store.scm (%nix-state-dir): Remove.
(%default-socket-path): Use %STATE-DIRECTORY as the default.
(%store-prefix): Use %STORE-DIRECTORY as the default.
* guix/utils.scm (%current-system): Default to %SYSTEM.
2012-12-06 00:07:17 +01:00
Ludovic Courtès
69cfce50db
build: Run all the tests against the just-built daemon.
...
* test-env.in: New file.
* configure.ac: Add it to `AC_CONFIG_FILES' and `commands-exec'.
* config-daemon.ac: Set and substitute `GUIX_TEST_ROOT'.
* Makefile.am (SCM_LOG_COMPILER, SH_LOG_COMPILER): Use it in lieu of
`pre-inst-env'.
* daemon.am (test_root): Remove
(AM_TESTS_ENVIRONMENT): Remove `TEST_ROOT'.
(clean-local): Use $(GUIX_TEST_ROOT); make files writable before
removing them.guix_test_root
* tests/guix-daemon.sh: Remove `NIX_' variable settings; don't launch
`guix-daemon'.
2012-12-06 00:07:08 +01:00
Ludovic Courtès
c2033df432
build: Include a copy of Nix's libstore and daemon; build it.
...
* configure.ac: Call `AC_USE_SYSTEM_EXTENSIONS', and
`GUIX_SYSTEM_TYPE'. Add `--with-store-dir' option, and substitute
`storedir'. Include `config-daemon.ac'.
* config-daemon.ac: New file.
* Makefile.am [BUILD_DAEMON]: Include `daemon.am'.
* daemon.am: New file.
* m4/guix.m4 (GUIX_SYSTEM_TYPE): New macro.
* nix/libutil/gcrypt-hash.cc, nix/libutil/gcrypt-hash.hh,
nix/libutil/md5.h, nix/libutil/sha1.h, nix/libutil/sha256.h,
nix/nix-daemon/guix-daemon.cc, nix/nix-daemon/shared.hh: New files.
2012-12-03 23:05:08 +01:00
Ludovic Courtès
ec5288609b
build: Change bug-report address; add URL.
...
* configure.ac: Change bug-report address in `AC_INIT'; add URL.
2012-11-24 00:36:36 +01:00
Ludovic Courtès
f8348b91ad
Turn Guix into "GNU Guix".
...
* configure.ac: Change package name to "GNU Guix", and bug-report
address to `gnu-system-discuss@gnu.org'.
* doc/guix.texi: Replace "Guix" by "GNU Guix" in some places.
(Top, Introduction): Mention "for the GNU system".
* HACKING, README: Use "GNU Guix" instead of "Guix" in some places.
2012-11-18 15:22:00 +01:00
Ludovic Courtès
10226c05b1
Add (guix snix) and the `guix-import' command.
...
* 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-04 19:38:31 +01:00
Ludovic Courtès
d388c2c435
build: Require GNU libgcrypt.
...
* 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-03 21:49:54 +01:00
Ludovic Courtès
00e219d1c9
build: Produce (guix config) instead of using compile-time tricks.
...
* 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-03 21:11:28 +01:00
Ludovic Courtès
e76bdf8b87
build: Clearly mark Nixpkgs as optional.
...
* 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-03 21:11:26 +01:00
Ludovic Courtès
0afdc48532
Add a preliminary `guix-package' command-line tool.
...
* 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-01 01:46:15 +01:00
Ludovic Courtès
c52a5bf09a
Add `guix-download'.
...
* 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-25 00:58:37 +02:00
Ludovic Courtès
f4544767b4
Add `pre-inst-env' script.
...
* pre-inst-env.in: New file.
* configure.ac: Add it to `AC_CONFIG_FILES' and `AC_CONFIG_COMMANDS'.
2012-10-04 23:12:15 +02:00
Cyprien Nicolas (fulax)
73f9a978ef
configure.ac: Make 'guild' configure check fatal, otherwise one gets 'compile: command not found' during make
2012-08-27 15:44:32 +02:00
Ludovic Courtès
2dda7734ba
build: Bump version number.
...
* configure.ac: Switch to version 0.1.
2012-08-22 17:25:47 +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
6365068393
build: Use Automake's `gnu' option.
...
* configure.ac: Use Automake's `gnu' option.
* ChangeLog, NEWS: New files.
2012-07-07 22:53:01 +02:00
Ludovic Courtès
0a04234081
build: Use `AM_GNU_GETTEXT_VERSION'.
...
* configure.ac: Add `AM_GNU_GETTEXT_VERSION'. Suggested by
Antono Vasiljev.
2012-07-02 01:35:39 +02:00
Ludovic Courtès
6152632593
build: Capitalize the package name.
...
* configure.ac: Use "Guix", not "guix", as the package name.
2012-07-01 00:58:32 +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
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
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
af51c820b1
Add a build system.
...
* configure.ac, Makefile.am: New files.
2012-06-13 18:01:25 +02:00