diff options
| author | Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de> | 2015-06-09 12:53:23 +0200 |
|---|---|---|
| committer | Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de> | 2015-06-12 12:57:30 +0200 |
| commit | 47da6268c45796d858eccff601e17ce11a7aeb62 (patch) | |
| tree | 3770e9cc6616eb22f3f2739f9c9dbe25650f9a4e /gnu/packages/java.scm | |
| parent | 36742f438939fc30c8ebd71400218e31540e8acb (diff) | |
gnu: icedtea7: Bootstrap with GCJ.
* gnu/packages/java.scm (icedtea7): Bootstrap with GCJ rather than compile
with IcedTea6.
Diffstat (limited to 'gnu/packages/java.scm')
| -rw-r--r-- | gnu/packages/java.scm | 71 |
1 files changed, 36 insertions, 35 deletions
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index ea8de9e2cf4..aa8cd2cf51a 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm | |||
| @@ -610,6 +610,9 @@ build process and its dependencies, whereas Make uses Makefile format.") | |||
| 610 | (modules '((guix build utils))) | 610 | (modules '((guix build utils))) |
| 611 | (snippet | 611 | (snippet |
| 612 | '(substitute* "Makefile.in" | 612 | '(substitute* "Makefile.in" |
| 613 | ;; link against libgcj to avoid linker error | ||
| 614 | (("-o native-ecj") | ||
| 615 | "-lgcj -o native-ecj") | ||
| 613 | ;; do not leak information about the build host | 616 | ;; do not leak information about the build host |
| 614 | (("DISTRIBUTION_ID=\"\\$\\(DIST_ID\\)\"") | 617 | (("DISTRIBUTION_ID=\"\\$\\(DIST_ID\\)\"") |
| 615 | "DISTRIBUTION_ID=\"\\\"guix\\\"\""))))) | 618 | "DISTRIBUTION_ID=\"\\\"guix\\\"\""))))) |
| @@ -627,15 +630,7 @@ build process and its dependencies, whereas Make uses Makefile format.") | |||
| 627 | #:locale "C" | 630 | #:locale "C" |
| 628 | ,@(substitute-keyword-arguments (package-arguments icedtea6) | 631 | ,@(substitute-keyword-arguments (package-arguments icedtea6) |
| 629 | ((#:configure-flags flags) | 632 | ((#:configure-flags flags) |
| 630 | `(let ((jdk (assoc-ref %build-inputs "icedtea6")) | 633 | `(delete "--with-openjdk-src-dir=./openjdk" ,flags)) |
| 631 | (ant (assoc-ref %build-inputs "ant"))) | ||
| 632 | `("--disable-bootstrap" | ||
| 633 | "--without-rhino" | ||
| 634 | "--enable-nss" | ||
| 635 | "--enable-system-lcms" | ||
| 636 | "--disable-downloading" | ||
| 637 | ,(string-append "--with-ant-home=" ant) | ||
| 638 | ,(string-append "--with-jdk-home=" jdk)))) | ||
| 639 | ((#:phases phases) | 634 | ((#:phases phases) |
| 640 | `(modify-phases ,phases | 635 | `(modify-phases ,phases |
| 641 | (replace | 636 | (replace |
| @@ -677,30 +672,37 @@ build process and its dependencies, whereas Make uses Makefile format.") | |||
| 677 | (replace | 672 | (replace |
| 678 | 'set-additional-paths | 673 | 'set-additional-paths |
| 679 | (lambda* (#:key inputs #:allow-other-keys) | 674 | (lambda* (#:key inputs #:allow-other-keys) |
| 680 | (substitute* "openjdk/jdk/make/common/shared/Sanity.gmk" | 675 | (let (;; Get target-specific include directory so that |
| 681 | (("ALSA_INCLUDE=/usr/include/alsa/version.h") | 676 | ;; libgcj-config.h is found when compiling hotspot. |
| 682 | (string-append "ALSA_INCLUDE=" | 677 | (gcjinclude (let* ((port (open-input-pipe "gcj -print-file-name=include")) |
| 683 | (assoc-ref inputs "alsa-lib") | 678 | (str (read-line port))) |
| 684 | "/include/alsa/version.h"))) | 679 | (close-pipe port) |
| 685 | (setenv "CC" "gcc") | 680 | str))) |
| 686 | (setenv "CPATH" | 681 | (substitute* "openjdk/jdk/make/common/shared/Sanity.gmk" |
| 687 | (string-append (assoc-ref inputs "libxrender") | 682 | (("ALSA_INCLUDE=/usr/include/alsa/version.h") |
| 688 | "/include/X11/extensions" ":" | 683 | (string-append "ALSA_INCLUDE=" |
| 689 | (assoc-ref inputs "libxtst") | 684 | (assoc-ref inputs "alsa-lib") |
| 690 | "/include/X11/extensions" ":" | 685 | "/include/alsa/version.h"))) |
| 691 | (assoc-ref inputs "libxinerama") | 686 | (setenv "CC" "gcc") |
| 692 | "/include/X11/extensions" ":" | 687 | (setenv "CPATH" |
| 693 | (or (getenv "CPATH") ""))) | 688 | (string-append gcjinclude ":" |
| 694 | (setenv "ALT_OBJCOPY" (which "objcopy")) | 689 | (assoc-ref inputs "libxrender") |
| 695 | (setenv "ALT_CUPS_HEADERS_PATH" | 690 | "/include/X11/extensions" ":" |
| 696 | (string-append (assoc-ref inputs "cups") | 691 | (assoc-ref inputs "libxtst") |
| 697 | "/include")) | 692 | "/include/X11/extensions" ":" |
| 698 | (setenv "ALT_FREETYPE_HEADERS_PATH" | 693 | (assoc-ref inputs "libxinerama") |
| 699 | (string-append (assoc-ref inputs "freetype") | 694 | "/include/X11/extensions" ":" |
| 700 | "/include")) | 695 | (or (getenv "CPATH") ""))) |
| 701 | (setenv "ALT_FREETYPE_LIB_PATH" | 696 | (setenv "ALT_OBJCOPY" (which "objcopy")) |
| 702 | (string-append (assoc-ref inputs "freetype") | 697 | (setenv "ALT_CUPS_HEADERS_PATH" |
| 703 | "/lib")))) | 698 | (string-append (assoc-ref inputs "cups") |
| 699 | "/include")) | ||
| 700 | (setenv "ALT_FREETYPE_HEADERS_PATH" | ||
| 701 | (string-append (assoc-ref inputs "freetype") | ||
| 702 | "/include")) | ||
| 703 | (setenv "ALT_FREETYPE_LIB_PATH" | ||
| 704 | (string-append (assoc-ref inputs "freetype") | ||
| 705 | "/lib"))))) | ||
| 704 | (add-after | 706 | (add-after |
| 705 | 'unpack 'fix-x11-extension-include-path | 707 | 'unpack 'fix-x11-extension-include-path |
| 706 | (lambda* (#:key inputs #:allow-other-keys) | 708 | (lambda* (#:key inputs #:allow-other-keys) |
| @@ -733,7 +735,6 @@ build process and its dependencies, whereas Make uses Makefile format.") | |||
| 733 | (delete 'patch-patches)))))) | 735 | (delete 'patch-patches)))))) |
| 734 | (native-inputs | 736 | (native-inputs |
| 735 | `(("ant" ,ant) | 737 | `(("ant" ,ant) |
| 736 | ("icedtea6" ,icedtea6 "jdk") | ||
| 737 | ("openjdk-drop" | 738 | ("openjdk-drop" |
| 738 | ,(drop "openjdk" | 739 | ,(drop "openjdk" |
| 739 | "03gxqn17cxwl1nspnwigacaqd28p02d45f396j5f4kkbzfnbl0ak")) | 740 | "03gxqn17cxwl1nspnwigacaqd28p02d45f396j5f4kkbzfnbl0ak")) |
| @@ -756,4 +757,4 @@ build process and its dependencies, whereas Make uses Makefile format.") | |||
| 756 | ,(drop "hotspot" | 757 | ,(drop "hotspot" |
| 757 | "1yqxfd2jwbm5y41wscyfx8h0fr3h8ny2g2mda5iwd8sikxsaj96p")) | 758 | "1yqxfd2jwbm5y41wscyfx8h0fr3h8ny2g2mda5iwd8sikxsaj96p")) |
| 758 | ,@(fold alist-delete (package-native-inputs icedtea6) | 759 | ,@(fold alist-delete (package-native-inputs icedtea6) |
| 759 | '("openjdk6-src" "ant-bootstrap" "gcj"))))))) | 760 | '("openjdk6-src" "ant-bootstrap"))))))) |
