Commit Graph

70 Commits

Author SHA1 Message Date
Ludovic Courtès ec29907160 gnu: gcc: Build libsanitizer's bundled libbacktrace without -Werror.
* gnu/packages/gcc.scm (gcc-4.7)[arguments]: Also patch
  libsanitizer/libbacktrace/Makefile.in.
2015-06-14 14:41:01 +02:00
Mark H Weaver 1492801655 Merge branch 'master' into core-updates 2015-06-10 17:50:27 -04:00
Ludovic Courtès d0b62698c9 gnu: gcc: Build libbacktrace without -Werror.
* gnu/packages/gcc.scm (gcc-4.7)[arguments] <pre-configure>: Remove -Werror
  from libbacktrace/configure.
2015-06-09 22:32:15 +02:00
Ludovic Courtès 9063ef0f79 gnu: gcc: Add "debug" output, debugging symbols of libraries.
* gnu/packages/gcc.scm (gcc-4.7)[install-target]: Remove.
  [outputs]: Add "debug".
  [arguments]: Remove #:strip-binaries?.  Remove 'install' phase.
2015-06-09 22:32:15 +02:00
Ludovic Courtès 811974925d gnu: gcc: Do not add -rpath=LIBDIR/lib64 to the "lib" spec.
* gnu/packages/gcc.scm (gcc-4.7): Remove unneeded LIBDIR/lib64 from
  GNU_USER_TARGET_LIB_SPEC.
2015-06-09 22:32:15 +02:00
Ludovic Courtès 2068559ba0 gnu: gcc: Move patch upstream status in the patch itself.
* gnu/packages/patches/gcc-arm-link-spec-fix.patch: Add bug and patch URLs.
* gnu/packages/gcc.scm (gcc-4.8): Remove them.
2015-06-04 09:30:20 +02:00
Ricardo Wurmus ad12c43e97 gnu: gcj: Add $libdir to RUNPATH.
* gnu/packages/gcc.scm (gcj)[arguments]: Add build phase to add library output
  directory to RUNPATH.
2015-05-08 13:14:36 +02:00
Ludovic Courtès 167a05aabc gnu: gcc-5.1: Add specific libvtv patch.
* gnu/packages/patches/gcc-5.0-libvtv-runpath.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/gcc.scm (gcc-5.1)[source]: Use it.
2015-05-04 00:24:21 +02:00
Ricardo Wurmus 5f6887e839 gnu: gcj: Remove broken symlink and conflicting files.
* gnu/packages/gcc.scm (gcj)[arguments]: Add a build phase to remove a broken
  symlink and generic stump binaries.
2015-05-02 21:06:52 +02:00
Ludovic Courtès 9e7594027d gnu: gcc: Add link to upstream bug report.
* gnu/packages/gcc.scm (gcc-4.8): Add link to bug report in comment.
2015-04-30 13:43:55 +02:00
Ludovic Courtès 7e35b9dd3d gnu: gcc: Add $libdir to the RUNPATH of libvtv.so.
* gnu/packages/gcc.scm (gcc-4.9): Inherit from GCC-4.8.
  [source]: Add 'gcc-libvtv-runpath.patch'.
  (gcc-5.1): Inherit from GCC-4.9.
  [source]: Use patches from GCC-4.9.
* gnu/packages/patches/gcc-libvtv-runpath.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
2015-04-30 13:31:59 +02:00
Andreas Enge 4ac0d6444d Merge branch 'master' into core-updates. 2015-04-26 20:08:49 +02:00
Mark H Weaver 60e2d5fe82 gnu: Add gcc-5.1.0 and gcc-toolchain-5.1.0.
* gnu/packages/gcc.scm (gcc-5.1): New variable.
* gnu/packages/commencement.scm (gcc-toolchain-5.1): New variable.
2015-04-23 01:06:40 -04:00
Ludovic Courtès d485ebba42 gnu: gcc: Do not always disable RUNPATH validation.
* gnu/packages/gcc.scm (gcc-4.7)[arguments]: Remove explicit
  #:validate-runpath? #f.
* gnu/packages/commencement.scm (gcc-boot0)[arguments]: Remove case for
  #:validate-runpath?.
  (gcc-final)[arguments]: Add literal #:validate-runpath? #f.
* gnu/packages/cross-base.scm (cross-gcc-arguments): Remove case for
  #:validate-runpath?.
2015-04-23 00:06:37 +02:00
Ludovic Courtès 21e583def3 gnu: gcc: Add a RUNPATH to libstdc++.so so that it finds libgcc_s.so.
Fixes <http://bugs.gnu.org/20358>.
Reported by 宋文武 <iyzsong@gmail.com>.

* gnu/packages/gcc.scm (gcc-4.7)[arguments]: Add 'substitute*' form for
  "libstdc++-v3/src/Makefile.in".
2015-04-23 00:06:37 +02:00
Ludovic Courtès 38cf2ba084 gnu: Remove all #:select from (gnu packages ...) modules.
This works around Guile bug <http://bugs.gnu.org/15540>.
Reported by Andreas Enge <andreas@enge.fr>.

* gnu/packages/engineering.scm: Don't #:select from (gnu packages ...).
* gnu/packages/gcc.scm: Likewise.
* gnu/packages/package-management.scm: Likewise.
* gnu/packages/photo.scm: Likewise.
* gnu/packages/pulseaudio.scm: Likewise.
* gnu/packages/moe.scm: Likewise, and #:select from (guix licenses)
  instead.
2015-04-20 15:50:59 +02:00
Mark H Weaver 1421afa94a gnu: gcc: Do not pass -dynamic-linker to linker when !shared on arm.
Fixes <http://bugs.gnu.org/20102>.

* gnu/packages/patches/gcc-arm-link-spec-fix.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/gcc.scm (gcc-4.8, gcc-4.9): Add patch.
* gnu/packages/cross-base.scm (cross-gcc): Preserve patches from gcc-4.8.

Co-Authored-By: Ludovic Courtès <ludo@gnu.org>
2015-04-09 01:58:04 -04:00
Ludovic Courtès dfc8bb2071 gnu: gcc: Disable RUNPATH validation for native builds.
* gnu/packages/gcc.scm (gcc-4.7)[arguments]: Pass
  #:validate-runpath? #f.
* gnu/packages/commencement.scm (gcc-boot0)[arguments]: Override
  #:validate-runpath? with 'substitute-keyword-arguments'.
  (gcc-final)[arguments]: Likewise.
* gnu/packages/cross-base.scm (cross-gcc-arguments): Likewise.
2015-04-07 22:28:36 +02:00
Ludovic Courtès 7e3c9f741b gnu: gcc: Fix libgcc_s directory in RUNPATH for cross-compiled binaries.
* gnu/packages/gcc.scm (gcc-4.7): Add 'libdir' procedure.  Use it to
  determine the right libdir, including when cross-compiling.  This
  fixes a bug whereby the RUNPATH of cross-compiled binaries would be
  set to $crossgcc/lib instead of $crossgcc/$triplet/lib.
  See <http://hydra.gnu.org/build/354389/nixlog/1/raw> for an example.
2015-04-02 10:26:15 +02:00
Ludovic Courtès 61af1014c6 gnu: gcj: Use a versioned URL for 'javac.in'.
* gnu/packages/gcc.scm (javac.in): Use a ViewVC URL that specifies the
  CVS revision.
2015-03-08 22:27:20 +01:00
Andreas Enge ed2b1c4f55 gnu: gcj: Move javac.in from a file in the distribution to an origin.
* gnu/packages/javac.in: Delete file.
* gnu-system.am (MISC_DISTRO_FILES): Delete.
* gnu/packages/gcc.scm (javac.in): New variable.
  (gcj-4.8): Use it as an input.
2015-03-07 10:45:47 +01:00
Andreas Enge e2808a4ac6 gnu: gcc: Add copyright line. 2015-03-07 10:44:58 +01:00
Ricardo Wurmus 74574fd1e3 gnu: Add GCJ
* gnu/packages/gcc.scm (gcj-4.8, ecj-bootstrap-4.8): New variables.
* gnu/packages/javac.in: New file.
* gnu-system.am (MISC_DISTRO_FILES): Add it.
* Makefile.am (nobase_dist_guilemodule_DATA): Add MISC_DISTRO_FILES.
2015-01-27 15:33:08 +01:00
Mark H Weaver 3f00ff8b43 gnu: Add toolchain support for 'armhf-linux'.
Based on preliminary work by John Darrington <john@darrington.wattle.id.au>.

* gnu/packages/cross-base.scm (xgcc-armhf): New variable.
* gnu/packages/gcc.scm (gcc-configure-flags-for-triplet): Add armhf case.
  (gcc-4.7)[pre-configure]: Add gcc/config/*/linux-eabi.h to the list
  of files in which to patch GLIBC_DYNAMIC_LINKER.
* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add armhf case.
* guix/utils.scm (gnu-triplet->nix-system, nix-system->gnu-triplet):
  Add armhf cases.
2015-01-07 16:27:55 -05:00
Mark H Weaver 76e639a00f gnu: gcc: Use 'gcc-configure-flags-for-triplet' for native compilers too.
* gnu/packages/gcc.scm (gcc-configure-flags-for-triplet): Do not export it.
  (gcc-4.7): Pass the result of 'gcc-configure-flags-for-triplet' to configure
  for all builds, including native ones.
* gnu/packages/cross-base.scm (cross-gcc-arguments): Do not add the result of
  'gcc-configure-flags-for-triplet' here, since it is now included in the
  configure-flags inherited from gcc-4.8.
2015-01-07 12:34:13 -05:00
Mark H Weaver 270b501ee2 gnu: gcc-static: Remove -lgcc_s from GNU_USER_TARGET_LIB_SPEC.
* gnu/packages/make-bootstrap.scm (%gcc-static): Add 'remove-lgcc_s
  phase.
* gnu/packages/gcc.scm (gcc-4.7): Add comment.
2015-01-07 12:33:38 -05:00
Mark H Weaver fa1e2f3d0d Revert "gnu: gcc: Add '-lgcc_s' only when '-pthread' is given."
This reverts commit 9097e666d4.

This turned out not to be a good strategy.  Some build system, e.g. tcl's, do
not pass -pthread on GNU/Linux by default, but merely link with -lpthread.
Also, Ludovic found other cases where libgcc_s is dlopened by libc that have
nothing to do with pthreads, e.g. to walk the stack.
2015-01-07 09:51:23 -05:00
Mark H Weaver 9097e666d4 gnu: gcc: Add '-lgcc_s' only when '-pthread' is given.
Suggested by Ludovic Courtès <ludo@gnu.org>.

* gnu/packages/gcc.scm (gcc-4.7): In our modified GNU_USER_TARGET_LIB_SPEC,
  add '-lgcc_s' only when '-pthread' is given.
2015-01-06 19:46:48 -05:00
Mark H Weaver 91c47befb8 gnu: gcc: Improve dynamic linker patching code.
* gnu/packages/gcc.scm (gcc-4.7): Join multi-line definitions of
  GLIBC_DYNAMIC_LINKER* before attempting substitutions.
  (gcc-4.9)[arguments]: Remove arguments override.
2015-01-06 19:37:04 -05:00
Mark H Weaver 23800e4736 Merge branch 'master' into core-updates 2015-01-06 12:57:15 -05:00
Mark H Weaver fcdebadf39 gnu: gcc-4.9: Fix build on MIPS.
* gnu/packages/gcc.scm (gcc-4.9): Add 'join-two-line-dynamic-linker-defns
  phase.
2015-01-03 23:48:44 -05:00
Ludovic Courtès af07095516 packages: Add 'file-type' field to 'search-path-specification'.
Fixes <http://bugs.gnu.org/18033>.

* guix/packages.scm (<search-path-specification>): Rename 'directories'
  field to 'files'.  Add 'file-type'.
  (search-path-specification->sexp): Honor 'file-type'.
* gnu/packages/autotools.scm, gnu/packages/bootstrap.scm,
  gnu/packages/cross-base.scm, gnu/packages/games.scm,
  gnu/packages/gcc.scm, gnu/packages/glib.scm,
  gnu/packages/guile.scm, gnu/packages/man.scm,
  gnu/packages/perl.scm, gnu/packages/pkg-config.scm,
  gnu/packages/python.scm, gnu/packages/ruby.scm,
  gnu/packages/xfce.scm: Change 'directories' to 'files'.
* tests/packages.scm ("search paths"): Change 'directories' field to
  'files'.
* guix/scripts/environment.scm (for-each-search-path): Likewise.
2014-12-27 23:22:49 +01:00
Ludovic Courtès 0d12bc744e gnu: gcc-4.8: Update to 4.8.4.
* gnu/packages/gcc.scm (gcc-4.8): Update to 4.8.4.  Remove patch.
* gnu/packages/patches/gcc-fix-pr61801.patch: Remove.
* gnu-system.am (dist_patch_DATA): Adjust accordingly.
2014-12-27 00:17:43 +01:00
Ludovic Courtès 3b1bba4cab gnu: gcc-4.9: Update to 4.9.2.
* gnu/packages/gcc.scm (gcc-4.9): Update to 4.9.2.
2014-11-04 18:59:25 +01:00
Eric Bavier 35b9e4232c gnu: Some cleanup based on lint checkers.
* gnu/packages/admin.scm, gnu/packages/aidc.scm, gnu/packages/algebra.scm,
  gnu/packages/apr.scm, gnu/packages/avahi.scm, gnu/packages/backup.scm,
  gnu/packages/base.scm, gnu/packages/calcurse.scm, gnu/packages/cdrom.scm,
  gnu/packages/check.scm, gnu/packages/compression.scm, gnu/packages/cook.scm,
  gnu/packages/crypto.scm, gnu/packages/cryptsetup.scm, gnu/packages/curl.scm,
  gnu/packages/cyrus-sasl.scm, gnu/packages/databases.scm,
  gnu/packages/doxygen.scm, gnu/packages/dwm.scm, gnu/packages/elf.scm,
  gnu/packages/emacs.scm, gnu/packages/feh.scm, gnu/packages/file.scm,
  gnu/packages/fish.scm, gnu/packages/flex.scm, gnu/packages/fltk.scm,
  gnu/packages/fontutils.scm, gnu/packages/games.scm, gnu/packages/gcal.scm,
  gnu/packages/gcc.scm, gnu/packages/geeqie.scm, gnu/packages/ghostscript.scm,
  gnu/packages/gimp.scm, gnu/packages/gl.scm, gnu/packages/glib.scm,
  gnu/packages/gnome.scm, gnu/packages/gnunet.scm, gnu/packages/gnupg.scm,
  gnu/packages/gperf.scm, gnu/packages/grub.scm, gnu/packages/gsasl.scm,
  gnu/packages/gtk.scm, gnu/packages/guile-wm.scm, gnu/packages/guile.scm,
  gnu/packages/hurd.scm, gnu/packages/icu4c.scm, gnu/packages/image.scm,
  gnu/packages/imagemagick.scm, gnu/packages/irssi.scm, gnu/packages/kde.scm,
  gnu/packages/libdaemon.scm, gnu/packages/libevent.scm,
  gnu/packages/libidn.scm, gnu/packages/libusb.scm, gnu/packages/linux.scm,
  gnu/packages/lout.scm, gnu/packages/lsh.scm, gnu/packages/lsof.scm,
  gnu/packages/lua.scm, gnu/packages/maths.scm, gnu/packages/mcrypt.scm,
  gnu/packages/mp3.scm, gnu/packages/netpbm.scm, gnu/packages/noweb.scm,
  gnu/packages/ocaml.scm, gnu/packages/openssl.scm, gnu/packages/pcre.scm,
  gnu/packages/pdf.scm, gnu/packages/pkg-config.scm,
  gnu/packages/pretty-print.scm, gnu/packages/python.scm, gnu/packages/qt.scm,
  gnu/packages/rsync.scm, gnu/packages/scheme.scm, gnu/packages/scrot.scm,
  gnu/packages/sdl.scm, gnu/packages/skribilo.scm, gnu/packages/ssh.scm,
  gnu/packages/stalonetray.scm, gnu/packages/tcl.scm, gnu/packages/tcsh.scm,
  gnu/packages/telephony.scm, gnu/packages/texlive.scm, gnu/packages/tor.scm,
  gnu/packages/valgrind.scm, gnu/packages/version-control.scm,
  gnu/packages/vim.scm, gnu/packages/vpn.scm, gnu/packages/w3m.scm,
  gnu/packages/web.scm, gnu/packages/wordnet.scm, gnu/packages/xiph.scm,
  gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/packages/zile.scm,
  gnu/packages/zip.scm, gnu/packages/zsh.scm [synopsis, description]: Adjust
  according to lint checkers.
* gnu/packages/fltk.scm (fltk)[source]: Wrap long line in uri.
* /gnu/packages/xiph.scm (libogg, libtheora, vorbis-tools)[source]: Same.
2014-10-26 13:03:53 -05:00
Ludovic Courtès 6904ecce5f gnu: gcc-4.8.3: Add patch for PR61801.
* gnu/packages/patches/gcc-fix-pr61801.patch: New file.
* gnu/packages/gcc.scm (gcc-4.8): Use it.
* gnu-system.am (dist_patch_DATA): Add it.
2014-09-17 17:17:43 +02:00
Ludovic Courtès 9e771e3bb6 gnu: Adjust synopses as recommended by 'guix lint'.
Remove leading articles and trailing periods in package synopses.
2014-09-13 15:50:30 +02:00
Mark H Weaver c4df90a594 gnu: gccgo: Suppress the separate "lib" output.
Fixes <http://debbugs.gnu.org/18101>.

* gnu/packages/gcc.scm (custom-gcc): Add 'separate-lib-output?'
  keyword argument.
  (gccgo-4.8): Pass #:separate-lib-output? #f to 'custom-gcc'.
2014-07-31 18:26:07 -04:00
Mark H Weaver da9c810280 gnu: gcc: Update to 4.9.1.
* gnu/packages/gcc.scm (gcc-4.9): Update to 4.9.1.
2014-07-24 10:13:38 -04:00
Ludovic Courtès 5c860cec83 gnu: gcc: Really avoid 'install-strip' when cross-compiling.
This is a followup to 6b9229c.

* gnu/packages/gcc.scm (gcc-4.7): Turn 'install-target' into a thunk,
  so (%current-target-system) is current.
2014-06-14 23:28:28 +02:00
Ludovic Courtès d2e2f14226 gnu: gcc-4.7: Upgrade to 4.7.4.
* gnu/packages/gcc.scm (gcc-4.7): Upgrade to 4.7.4.
2014-06-14 22:21:29 +02:00
Ludovic Courtès 6b9229ca51 gnu: gcc: Don't use the 'install-strip' target when cross-compiling.
* gnu/packages/gcc.scm (gcc-4.7): Add 'install-target' variable.  Use
  it in the 'install' phase.
2014-06-14 22:16:03 +02:00
Ludovic Courtès fd0b276624 gnu: gcc: Fix cross-compilation of gcc (Canadian cross).
* gnu/packages/gcc.scm (gcc-4.7)[arguments] <#:make-flags>:
  When (%current-target-system) is true, pass the empty list or
  '("CFLAGS=-g0 -O2").
2014-06-14 16:04:38 +02:00
Ludovic Courtès 84e6756c57 gnu: gcc: Add a "lib" output.
* gnu/packages/gcc.scm (gcc-4.7)[configure-flags]: Add
  --with-gxx-include-dir.
  [outputs]: New field.
  [arguments] <phases>: Adjust to use the "lib" output.  Add
  'substitute*' calls for "libstdc++-v3/python/Makefile.in" and
  "gcc/config.in".
* gnu/packages/base.scm (gcc-boot0) <symlink-libgcc_eh>: Use the "lib"
  output.
  (cross-gcc-wrapper): Add 'outputs' field.
  (glibc-final)[arguments]: Adjust #:allowed-references to list
  '(GCC-BOOT0 "lib").
  (libstdc++): Add 'outputs' field.
  (gcc-final)[arguments]: Add "lib" to #:allowed-references.
* gnu/packages/make-bootstrap.scm (%gcc-static): Add 'outputs' field.
2014-06-09 11:58:43 +02:00
Ludovic Courtès a43da8f90c gnu: gcc-4.8: Upgrade to 4.8.3.
* gnu/packages/gcc.scm (gcc-4.8): Upgrade to 4.8.3.
2014-05-27 23:22:50 +02:00
Ludovic Courtès 571aa6cd81 gnu: Add GCC 4.9.0.
* gnu/packages/gcc.scm (gcc-4.9): New variable.
* gnu/packages/base.scm (gcc-toolchain-4.9): New variable.
2014-04-22 17:45:09 +02:00
Ludovic Courtès 6f58d58243 More /gnu/store replacements.
* gnu/packages/gcc.scm (gcc-4.7): Change /nix/store in comment.
* gnu/system/vm.scm (operating-system-default-contents):
  Use (%store-prefix) instead of "/nix/store".
* guix/derivations.scm (derivation-path->output-path,
  derivation-path->output-paths): Change to /gnu/store in docstring.
2014-03-10 23:58:40 +01:00
Ludovic Courtès 3e778ad3af gnu: Move libelf and patchelf to (gnu packages elf).
* gnu/packages/patchelf.scm (patchelf): Move to...
* gnu/packages/elf.scm (patchelf): ... here.
* gnu/packages/patchelf.scm: Remove.
* gnu-system.am (GNU_SYSTEM_MODULES): Adjust accordingly.
* gnu/packages/gcc.scm (libelf): Move to...
* gnu/packages/elf.scm (libelf): ... here.
* gnu/packages/cdrom.scm, gnu/packages/icu4c.scm,
  gnu/packages/samba.scm, gnu/packages/scheme.scm, gnu/packages/ssh.scm:
  Adjust references to (gnu packages patchelf).
2013-12-15 23:27:56 +01:00
Ludovic Courtès 79c311b81c gnu: Synchronize descriptions with 'gnumaint'. 2013-12-01 22:33:23 +01:00
Ludovic Courtès a7bf595fff gnu: gcc: Really always link against libgcc_s.so.
* gnu/packages/gcc.scm (gcc-4.7): Add snippet to add -lgcc_s to the
  "lib" spec.  Remove --as-needed trick from 65d3b7c: it had no effect
  in cases where we have !static-libgcc && !shared-libgcc.
2013-11-18 14:06:47 +01:00