Ludovic Courtès
8b315a6dd5
doc: Add a "Porting" section.
...
* HACKING (Porting the Guix distro on a new platform): Remove.
* doc/guix.texi (Porting): New node. Describe cross-compilation as the
only approach.
2013-07-07 01:03:03 +02:00
Ludovic Courtès
401c53c469
doc: Add a "Boostrapping" section.
...
* doc/guix.texi (Package Modules): New node, with material formerly
under "GNU Distribution".
(Bootstrapping): New node.
* Makefile.am (EXTRA_DIST): Add doc/images/bootstrap-graph.dot and
doc/images/bootstrap-graph.eps.
(infoimagedir, dist_infoimage_DATA, DOT_OPTIONS): New variable.
(.dot.png, .dot.eps, doc/guix.pdf, doc/guix.info, doc/guix.ps): New
targets.
* doc/images/bootstrap-graph.dot: New file.
2013-07-07 00:29:50 +02:00
Ludovic Courtès
c8ebc82187
gnu: gcc: Add Texinfo to the native inputs.
...
* gnu/packages/gcc.scm (gcc-4.7): Add `native-inputs' field.
(gcc-4.8): Remove outdated comment.
* gnu/packages/base.scm (gcc-boot0): Add `native-inputs' field.
2013-07-06 18:08:29 +02:00
Ludovic Courtès
3a4ebc1124
gnu: make-bootstrap: guile-static-stripped has no "debug" output.
...
* gnu/packages/make-bootstrap.scm (%guile-static-stripped): Add
`outputs' field.
2013-07-05 14:39:47 +02:00
Ludovic Courtès
82f9b17687
build-system/gnu: Remove the "debug" output when `strip-binaries?' is #f.
...
* guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Delete "debug"
from OUTPUTS when STRIP-BINARIES? is false.
* gnu/packages/cross-base.scm (cross-libc): Leave `outputs' unchanged.
This reverts commit a4627d4
.
2013-07-04 13:26:35 +02:00
Ludovic Courtès
a4627d498a
gnu: cross-libc: Remove the "debug" output.
...
* gnu/packages/cross-base.scm (cross-libc): Remove "debug" from the
`outputs' field.
2013-07-04 11:08:28 +02:00
Ludovic Courtès
9bf62d9b1d
gnu: Add a "debug" output for some packages.
...
* gnu/packages/base.scm (coreutils, gnu-make, glibc): Add a "debug" output.
* gnu/packages/bdw-gc.scm (libgc): Likewise.
* gnu/packages/guile.scm (guile-2.0): Likewise.
* gnu/packages/libffi.scm (libffi): Likewise.
* gnu/packages/multiprecision.scm (gmp, mpfr, mpc): Likewise.
2013-07-03 23:55:04 +02:00
Ludovic Courtès
be58d01a7e
build-system/gnu: Write debug files to the "debug" sub-derivation, if any.
...
* guix/build/gnu-build-system.scm (strip): Add `objcopy-command' keyword
parameter.
[debug-output, debug-file-extension]: New variables.
[debug-file, make-debug-file, add-debug-link]: New procedures.
[strip-dir]: Use them.
2013-07-03 23:53:31 +02:00
Ludovic Courtès
d475b25953
utils: Re-export `alist-cons' and `alist-delete'.
...
* guix/build/utils.scm: Re-export `alist-cons' and `alist-delete'.
2013-07-03 23:08:41 +02:00
Ludovic Courtès
ca16cb9606
gnu: gcc: Use `gcc-configure-flags-for-triplet' when cross-compiling GCC.
...
* gnu/packages/cross-base.scm (gcc-configure-flags-for-triplet): Move to...
* gnu/packages/gcc.scm (gcc-configure-flags-for-triplet): ... here. New
procedure.
(gcc-4.7): Use it when (%current-target-system) is true.
2013-06-26 23:02:49 +02:00
Ludovic Courtès
58ab9f9b8e
build: Add "mips64el-linux-gnuabi64" as a cross build target.
...
* build-aux/hydra/gnu-system.scm (%packages-to-cross-build): Add
%bootstrap-tarballs.
(%cross-targets): Add "mips64el-linux-gnuabi64".
2013-06-26 22:41:09 +02:00
Ludovic Courtès
beda99e882
gnu: cross-base: Add support for `mips64el-linux-gnu-gnuabi64' (N64 ABI).
...
* gnu/packages/cross-base.scm (gcc-configure-flags-for-triplet): New
procedure.
(cross-gcc): Use it.
(xgcc-mips64el): Use *-gnuabi64 instead of the N32 ABI.
2013-06-26 22:39:21 +02:00
Ludovic Courtès
5708485357
gnu: make-bootstrap: Fix cross compilation of binutils-static.
...
* gnu/packages/make-bootstrap.scm (%binutils-static): Inherit configure
flags from BINUTILS.
2013-06-26 17:23:56 +02:00
Ludovic Courtès
11acdf1747
gnu: make-bootstrap: Have %gcc-static actually static when cross building.
...
* gnu/packages/make-bootstrap.scm (%gcc-static): Pass `-static' through
`LDFLAGS' when cross-compiling.
2013-06-26 17:01:10 +02:00
Ludovic Courtès
de1d41f980
gnu: gcc: Allow cross-compilation of GCC itself.
...
* gnu/packages/gcc.scm (gcc-4.7): Define `CC_FOR_TARGET',
`AR_FOR_TARGET', etc. when cross-compiling.
2013-06-26 16:51:39 +02:00
Ludovic Courtès
e7133c7680
gnu: cross-base: Make `glibc-dynamic-linker' do the right thing.
...
* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Determine SYSTEM
based on (%current-target-system) when it's true.
* gnu/packages/cross-base.scm (cross-gcc): Directly call
(package-arguments gcc-4.7) from the body of `arguments'.
2013-06-26 16:27:51 +02:00
Ludovic Courtès
c8fa51f2d6
gnu: cross-base: Build Binutils with `--with-sysroot=/'.
...
* gnu/packages/cross-base.scm (cross-binutils): Use `--with-sysroot=/'.
2013-06-26 14:31:24 +02:00
Ludovic Courtès
9306d350b2
build: Build the bootstrap tarballs on Hydra.
...
* build-aux/hydra/gnu-system.scm (%packages-to-cross-build): Uncomment
the bootstrap tarball packages.
2013-06-25 23:45:34 +02:00
Ludovic Courtès
a410a0105d
gnu: make-bootstrap: Allow cross-compilation of the bootstrap tarballs.
...
* gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc): Turn
`inputs' into a thunk. Add `native-inputs', and pass it to
`package-with-explicit-inputs'.
(%static-inputs): Add %BASH-STATIC as an input to gawk when cross
building.
(%glibc-stripped): When cross compiling,
use (glibc-for-bootstrap (cross-libc)) as the basis.
(%gcc-static): Base on GCC-4.7, not GCC-FINAL.
(tarball-package): TAR and XZ are native inputs. Choose the tarball
file name based on (%current-target-system) too.
2013-06-25 23:39:14 +02:00
Ludovic Courtès
a3cff41dd1
build-system/gnu: `package-with-explicit-inputs' skips non-GBS packages.
...
* guix/build-system/gnu.scm (package-with-explicit-inputs)[rewritten-input]:
Leave P unchanged if its build system is not GNU-BUILD-SYSTEM.
2013-06-25 23:04:32 +02:00
Ludovic Courtès
0de71c233c
gnu: cross-base: Make the cross tools native inputs.
...
* gnu/packages/cross-base.scm (cross-gcc): Change `inputs' to
`native-inputs', and set `inputs' to the empty list.
(cross-libc): Likewise.
2013-06-25 20:57:14 +02:00
Ludovic Courtès
7e873a6708
build-system/gnu: Augment `package-with-explicit-inputs' for cross builds.
...
* guix/build-system/gnu.scm (package-with-explicit-inputs): Add
`native-inputs' keyword parameter. Allow INPUTS and NATIVE-INPUTS to
be thunks.
2013-06-25 20:54:56 +02:00
Ludovic Courtès
ac5c1cec86
build-system/trivial: Don't bind `%target' in the builder.
...
* guix/build-system/trivial.scm (trivial-cross-build): Don't bind
`%target' here since this causes problem when BUILDER
contains (use-modules ...) clauses, and can be achieved differently
anyway.
2013-06-25 00:06:31 +02:00
Ludovic Courtès
1e4310f1f2
gnu: gawk: Allow cross-compilation.
...
* gnu/packages/gawk.scm (gawk)[arguments]: Annihilate the
`check-for-shared-lib-support' target when cross-compiling.
2013-06-25 00:00:09 +02:00
Ludovic Courtès
f7c3429073
build-system/gnu: Disable test suite when cross building.
...
* guix/build-system/gnu.scm (gnu-cross-build): Change #:tests? to
default to #f.
2013-06-24 23:26:50 +02:00
Ludovic Courtès
a62b83d52f
gnu: libffi: Upgrade to 3.0.13.
...
* gnu/packages/libffi.scm (libffi): Upgrade to 3.0.13.
2013-06-22 16:47:09 +02:00
Ludovic Courtès
b15669f37d
utils: `set-path-environment-variable' calls `unsetenv' for empty values.
...
* guix/build/utils.scm (set-path-environment-variable): When VALUE is
the empty string, call `unsetenv' instead of `setenv'.
* gnu/packages/guile.scm (guile-2.0)[arguments]: Remove `unsetenv'
trick.
2013-06-22 16:42:46 +02:00
Ludovic Courtès
ee26820636
gnu: acl, attr: Make `gettext' a native input.
...
* gnu/packages/acl.scm (acl): Make `gettext' a native input, always.
* gnu/packages/attr.scm (attr): Likewise.
2013-06-22 16:32:30 +02:00
Ludovic Courtès
8572bf5e0c
gnu: gmp: Upgrade to 5.1.2.
...
* gnu/packages/multiprecision.scm (gmp): Update to 5.1.2.
2013-06-22 16:29:40 +02:00
Ludovic Courtès
d16368cf41
gnu: gawk: Upgrade to 4.1.0.
...
* gnu/packages/gawk.scm (gawk): Update to 4.1.0. Remove wrong-headed
comments.
2013-06-22 16:29:19 +02:00
Ludovic Courtès
2a511f7a1a
gnu: gzip: Upgrade to 1.6.
...
* gnu/packages/compression.scm (gzip): Upgrade.
2013-06-22 16:27:13 +02:00
Ludovic Courtès
2f41f51c40
build-system/gnu: Set #:tests? to #f when cross-compiling.
...
* guix/build/gnu-build-system.scm (check): Add `target' formal
parameter. Change `tests?' to default to (not target).
2013-06-22 16:15:23 +02:00
Ludovic Courtès
4ca968eb95
build-system/gnu: Save `environment-variables' after each phase.
...
* guix/build/gnu-build-system.scm (set-paths): Move `system' call to...
(gnu-build): ... here.
2013-06-21 00:32:07 +02:00
Ludovic Courtès
56c092ce94
build-system/gnu: Unify with (guix build-system gnu-cross-build).
...
* guix/build/gnu-build-system.scm (set-paths): Add `native-inputs' and
`native-search-paths' keyword parameters. Honor them.
(configure): Add `target' and `native-inputs' keyword parameters.
Look for Bash in NATIVE-INPUTS or INPUTS. Pass `--host' when TARGET
is true.
(strip): Add `strip-command' keyword parameter. Use it.
* guix/build/gnu-cross-build.scm: Remove.
* Makefile.am (MODULES): Adjust accordingly.
* gnu/packages/acl.scm, gnu/packages/attr.scm, gnu/packages/base.scm,
gnu/packages/bash.scm, gnu/packages/gawk.scm,
gnu/packages/gettext.scm, gnu/packages/guile.scm,
gnu/packages/libffi.scm, gnu/packages/libsigsegv.scm,
gnu/packages/linux.scm, gnu/packages/ncurses.scm,
gnu/packages/readline.scm, guix/build-system/gnu.scm: Replace
`%standard-cross-phases' by `%standard-phases'. Remove references
to (guix build gnu-cross-build).
2013-06-21 00:25:54 +02:00
Ludovic Courtès
d501fad11c
Merge branch 'master' into core-updates
...
Conflicts:
gnu/packages/make-bootstrap.scm
2013-06-20 23:51:00 +02:00
Ludovic Courtès
4db00e4210
gnu: libgc: Always build with -DUSE_LIBC_PRIVATES.
...
* gnu/packages/bdw-gc.scm (libgc): Add `arguments' field.
* gnu/packages/make-bootstrap.scm (%guile-static): Remove local `libgc'.
2013-06-20 23:47:22 +02:00
Ludovic Courtès
fba96c4885
gnu: libgc: Switch to 7.2d.
...
* gnu/packages/bdw-gc.scm (libgc): Upgrade to 7.2d.
(libgc-7.2): Remove.
2013-06-20 23:45:41 +02:00
Ludovic Courtès
f3211ef386
build: Move Hydra recipe to build-aux/hydra.
...
* hydra.scm: Rename to...
* build-aux/hydra/gnu-system.scm: ... this.
* Makefile.am (EXTRA_DIST): Adjust accordingly.
2013-06-20 23:41:31 +02:00
Ludovic Courtès
fe1818e26a
package: Fix i18n of the number of packages message.
...
* guix/scripts/package.scm (guix-package)[process-actions]: Use `N_' for
i18n of the number of packages message.
2013-06-20 23:41:31 +02:00
Ludovic Courtès
a85060efec
substitute-binary: Report progress while downloading.
...
* guix/scripts/substitute-binary.scm (decompressed-port): Improve docstring.
(progress-report-port): New procedure.
(guix-substitute-binary)["--substitute"]: Use it to report progress.
* guix/build/download.scm: Export `progress-proc' and `uri-abbreviation'.
2013-06-20 23:41:28 +02:00
Ludovic Courtès
e3f6f8b448
Update eo.po.
2013-06-19 23:19:35 +02:00
Ludovic Courtès
d516736c58
build: Split Makefile.am into two parts.
...
* Makefile.am (MODULES): Move gnu/* to gnu-system.am.
(patchdir, dist_patch_DATA, bootstrapdir,
bootstrap_x86_64_linuxdir, bootstrap_i686_linuxdir,
dist_bootstrap_x86_64_linux_DATA, dist_bootstrap_i686_linux_DATA,
nodist_bootstrap_x86_64_linux_DATA, nodist_bootstrap_i686_linux_DATA,
install-data-hook, DISTCLEANFILES, DOWNLOAD_FILE,
gnu/packages/bootstrap/x86_64-linux/guile-2.0.7.tar.xz,
gnu/packages/bootstrap/i686-linux/guile-2.0.7.tar.xz): Move to...
* gnu-system.am: ... here. New file.
2013-06-19 23:19:03 +02:00
Ludovic Courtès
9af05aa29d
package: Display the number of installed packages upon completion.
...
* guix/scripts/package.scm (guix-package)[process-actions]: Display the
number of packages in the profile upon completion.
2013-06-19 22:42:03 +02:00
Ludovic Courtès
c7c834a998
Add `substitute-binary.scm' to POTFILES.in.
...
* po/POTFILES.in: Add guix/scripts/substitute-binary.scm.
2013-06-19 19:27:53 +02:00
Ludovic Courtès
7fa37abca0
gnu: Add ImageMagick.
...
* gnu/packages/imagemagick.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/download.scm (%mirrors): Add `imagemagick' entry.
2013-06-19 19:27:23 +02:00
Ludovic Courtès
2207f73156
substitute-binary: Provide feedback when the server is unresponsive.
...
* guix/scripts/substitute-binary.scm (%fetch-timeout): New variable.
(with-timeout): New macro.
(fetch): Add `timeout?' keyword parameter. Enclose `http-fetch' call
in `with-timeout'.
(guix-substitute-binary): Call `fetch' with #:timeout? #f.
2013-06-18 00:12:22 +02:00
Ludovic Courtès
8cf13c1f70
build: Fix `sync-with-upstream'.
...
* nix/sync-with-upstream: Remove schema.sql.hh.
2013-06-18 00:12:22 +02:00
Ludovic Courtès
90a0048f5e
gnu: Add Linux iproute2.
...
* gnu/packages/bdb.scm (bdb): Add `--enable-compat185'.
* gnu/packages/linux.scm (iproute): New variable.
2013-06-18 00:12:22 +02:00
Ludovic Courtès
10afdf5061
gnu: Add iptables.
...
* gnu/packages/linux.scm (iptables): New variable.
2013-06-18 00:12:22 +02:00
Ludovic Courtès
30ac136d6d
gnu: graphviz: Fix typo.
...
* gnu/packages/graphviz.scm (graphviz): Fix typo in description.
2013-06-18 00:12:22 +02:00