unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* WIP: IcedTea7
@ 2015-03-24 11:10 Ricardo Wurmus
  2015-03-29 13:20 ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Ricardo Wurmus @ 2015-03-24 11:10 UTC (permalink / raw)
  To: Guix-devel

[-- Attachment #1: Type: text/plain, Size: 7406 bytes --]

Hi Guix,

I'm having problems building OpenJDK 7 with our OpenJDK 6.  Attached is
the package definition I'm using.

The package build can be resumed in a session spawned by "guix
environment --pure icedtea7" on Fedora 21, so I suspect it is linking to
something that's available only on the host system.  Unfortunately, I
don't understand the build error.  What is this to do with glibc?

Here's the output as the build procedure fails:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Building lib:/buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk.build/lib/amd64/headless/libmawt.so
Begin parallel compiles: /buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk/jdk/make/sun/headless
make[6]: Entering directory '/buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk/jdk/make/sun/headless'
logname: no login name
INFO: ENABLE_FULL_DEBUG_SYMBOLS=1
INFO: no objcopy cmd found so cannot create .debuginfo files. You may need to set ALT_OBJCOPY.
gcc  -O2   -fno-strict-aliasing -fPIC -W -Wall  -Wno-unused -Wno-parentheses -pipe -fno-omit-frame-pointer -D_LITTLE_ENDIAN -g   -g -DHEADLESS=true -DNDEBUG -DARCH='"amd64"' -Damd64 -DLINUX -DRELEASE='"1.7.0_71"' -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT -D_LP64=1 -DUSE_PTHREADS -I. -I/buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/CClassHeaders -I../../../src/solaris/javavm/export -I../../../src/share/javavm/export -I../../../src/share/native/common -I../../../src/solaris/native/common -I../../../src/share/native/sun/awt -I../../../src/solaris/native/sun/awt   -DHEADLESS=true -I/gnu/store/q6xjdq8p6fx6s6n5i9jlpp56znmc4dia-cups-2.0.1/include -DUSE_SYSTEM_CUPS -I/gnu/store/af6yzmcj64q1y3v8aa4b13r3kfak01d7-freetype-2.5.5/include/freetype2 -I/gnu/store/hpbhilz8fxc6mrisvmjig01l79dyczqi-fontconfig-2.11.92/include -I/gnu/store/b671frr777ny62n2rg3sjs6by2m44q5y-expat-2.1.0/include -I/gnu/store/af6yzmcj64q1y3v8aa4b13r3kfak01d7-freetype-2.5.5/include/freetype2 -I/gnu/store/b671frr777ny62n2rg3sjs6by2m44q5y-expat-2.1.0/include  -DUSE_SYSTEM_FONTCONFIG -I../../../src/share/native/sun/awt/debug -I../../../src/share/native/sun/awt/../font -I../../../src/solaris/native/sun/awt/../font -I../../../src/share/native/sun/awt/image -I../../../src/share/native/sun/awt/image/cvutils -I../../../src/share/native/sun/awt/shell -I../../../src/share/native/sun/awt/alphacomposite -I../../../src/share/native/sun/awt/medialib -I../../../src/solaris/native/sun/awt/medialib -I../../../src/share/native/sun/awt/../java2d -I../../../src/solaris/native/sun/awt/../java2d -I../../../src/share/native/sun/awt/../java2d/loops -I../../../src/share/native/sun/awt/../java2d/pipe -I../../../src/share/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/x11 -I../../../src/share/native/sun/awt/../dc/doe -I../../../src/share/native/sun/awt/../dc/path -I../../../src/solaris/native/sun/awt/../jdga -I../../../src/solaris/native/sun/awt  -I  -c -o /buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/obj64/awt_Font.o  ../../../src/solaris/native/sun/awt/awt_Font.c
gcc  -O2   -fno-strict-aliasing -fPIC -W -Wall  -Wno-unused -Wno-parentheses -pipe -fno-omit-frame-pointer -D_LITTLE_ENDIAN -g   -g -DHEADLESS=true -DNDEBUG -DARCH='"amd64"' -Damd64 -DLINUX -DRELEASE='"1.7.0_71"' -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT -D_LP64=1 -DUSE_PTHREADS -I. -I/buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/CClassHeaders -I../../../src/solaris/javavm/export -I../../../src/share/javavm/export -I../../../src/share/native/common -I../../../src/solaris/native/common -I../../../src/share/native/sun/awt -I../../../src/solaris/native/sun/awt   -DHEADLESS=true -I/gnu/store/q6xjdq8p6fx6s6n5i9jlpp56znmc4dia-cups-2.0.1/include -DUSE_SYSTEM_CUPS -I/gnu/store/af6yzmcj64q1y3v8aa4b13r3kfak01d7-freetype-2.5.5/include/freetype2 -I/gnu/store/hpbhilz8fxc6mrisvmjig01l79dyczqi-fontconfig-2.11.92/include -I/gnu/store/b671frr777ny62n2rg3sjs6by2m44q5y-expat-2.1.0/include -I/gnu/store/af6yzmcj64q1y3v8aa4b13r3kfak01d7-freetype-2.5.5/include/freetype2 -I/gnu/store/b671frr777ny62n2rg3sjs6by2m44q5y-expat-2.1.0/include  -DUSE_SYSTEM_FONTCONFIG -I../../../src/share/native/sun/awt/debug -I../../../src/share/native/sun/awt/../font -I../../../src/solaris/native/sun/awt/../font -I../../../src/share/native/sun/awt/image -I../../../src/share/native/sun/awt/image/cvutils -I../../../src/share/native/sun/awt/shell -I../../../src/share/native/sun/awt/alphacomposite -I../../../src/share/native/sun/awt/medialib -I../../../src/solaris/native/sun/awt/medialib -I../../../src/share/native/sun/awt/../java2d -I../../../src/solaris/native/sun/awt/../java2d -I../../../src/share/native/sun/awt/../java2d/loops -I../../../src/share/native/sun/awt/../java2d/pipe -I../../../src/share/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/x11 -I../../../src/share/native/sun/awt/../dc/doe -I../../../src/share/native/sun/awt/../dc/path -I../../../src/solaris/native/sun/awt/../jdga -I../../../src/solaris/native/sun/awt  -I  -c -o /buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/obj64/awt_MToolkit.o  ../../../src/solaris/native/sun/awt/awt_MToolkit.c
../../../src/solaris/native/sun/awt/awt_Font.c: In function ?Java_java_awt_Font_initIDs?:
../../../src/solaris/native/sun/awt/awt_Font.c:86:12: warning: unused parameter ?env? [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
            ^
../../../src/solaris/native/sun/awt/awt_Font.c:86:24: warning: unused parameter ?cls? [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
                        ^
../../../src/solaris/native/sun/awt/awt_Font.c: In function ?Java_sun_awt_FontDescriptor_initIDs?:
../../../src/solaris/native/sun/awt/awt_Font.c:173:12: warning: unused parameter ?env? [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
            ^
../../../src/solaris/native/sun/awt/awt_Font.c:173:24: warning: unused parameter ?cls? [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
                        ^
../../../src/solaris/native/sun/awt/awt_Font.c: In function ?Java_sun_awt_PlatformFont_initIDs?:
../../../src/solaris/native/sun/awt/awt_Font.c:218:12: warning: unused parameter ?env? [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
            ^
../../../src/solaris/native/sun/awt/awt_Font.c:218:24: warning: unused parameter ?cls? [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
                        ^
/gnu/store/wiqbxcvzj3r35hd55yxzz919b1dv1hnv-glibc-2.21/lib/crt1.o: In function `_start':
(.text+0x20): undefined reference to `main'
collect2: error: ld returned 1 exit status
/buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk/jdk/make/common/internal/NativeCompileRules.gmk:74: recipe for target '/buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/obj64/awt_Font.o' failed
make[6]: *** [/buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/obj64/awt_Font.o] Error 1
make[6]: *** Waiting for unfinished jobs....
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

And here's a patch containing the definition of the icedtea7 package.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-WIP-icedtea7.patch --]
[-- Type: text/x-patch, Size: 9087 bytes --]

From e7088fa033401887c59cea0d80f7a7931af51201 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Date: Tue, 24 Mar 2015 12:09:29 +0100
Subject: [PATCH] WIP: icedtea7

---
 gnu/packages/java.scm | 159 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 158 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 3e7e4d5..738f429 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -20,6 +20,7 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix utils)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
   #:use-module (gnu packages attr)
@@ -45,7 +46,8 @@
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages zip)
-  #:use-module (gnu packages texinfo))
+  #:use-module (gnu packages texinfo)
+  #:use-module ((srfi srfi-1) #:select (fold alist-delete)))
 
 (define-public ant
   (package
@@ -562,3 +564,158 @@ build process and its dependencies, whereas Make uses Makefile format.")
     ;; IcedTea is released under the GPL2 + Classpath exception, which is the
     ;; same license as both GNU Classpath and OpenJDK.
     (license license:gpl2+)))
+
+(define-public icedtea7
+  (let* ((version "2.5.3")
+         (drop (lambda (name hash)
+                 (origin
+                   (method url-fetch)
+                   (uri (string-append
+                         "http://icedtea.classpath.org/download/drops/"
+                         "/icedtea7/" version "/" name ".tar.bz2"))
+                   (sha256 (base32 hash))))))
+    (package (inherit icedtea6)
+      (name "icedtea7")
+      (version "2.5.3")
+      (source (origin
+                (method url-fetch)
+                (uri (string-append
+                      "http://icedtea.wildebeest.org/download/source/icedtea-"
+                      version ".tar.xz"))
+                (sha256
+                 (base32
+                  "1w7i6j4wmg2ixv7d24mad6gphspnkb9w30azjdp4jqn2zqn95wpl"))
+                (modules '((guix build utils)))
+                (snippet
+                 '(substitute* "Makefile.in"
+                    ;; do not leak information about the build host
+                    (("DISTRIBUTION_ID=\"\\$\\(DIST_ID\\)\"")
+                     "DISTRIBUTION_ID=\"\\\"guix\\\"\"")))))
+      (arguments
+       (substitute-keyword-arguments `(#:modules ((guix build gnu-build-system)
+                                                  (guix build utils)
+                                                  (srfi srfi-1)
+                                                  (srfi srfi-26))
+                                                 ,@(package-arguments icedtea6))
+         ((#:configure-flags flags)
+          `(let ((jdk (assoc-ref %build-inputs "icedtea6"))
+                 (ant (assoc-ref %build-inputs "ant")))
+             `("--disable-bootstrap"
+               ;"--disable-bootstrap-tools"
+               "--without-rhino"
+               "--enable-nss"
+               "--enable-infinality"
+               "--enable-system-gio"
+               "--enable-system-gtk"
+               "--enable-system-gif"
+               "--enable-system-png"
+               "--enable-system-jpeg"
+               "--enable-system-zlib"
+               "--enable-system-lcms"
+               "--enable-system-fontconfig"
+               "--disable-downloading"
+               "--disable-xrender" ;; TODO: more X11 extensions are needed
+                                        ;see /usr/include/X11/extensions
+               ;;"--with-openjdk-src-dir=./openjdk"
+               ,(string-append "--with-ant-home=" ant)
+               ,(string-append "--with-jdk-home=" jdk)
+               )))
+         ((#:phases phases)
+          `(alist-replace
+            'unpack
+            (lambda* (#:key source inputs #:allow-other-keys)
+              (let ((target (string-append "icedtea-" ,version)))
+                (and (zero? (system* "tar" "xvf" source))
+                     (chdir target)
+                     (zero? (begin
+                              (system* "tar" "xvjf" (assoc-ref inputs "openjdk-drop"))
+                              (system* "mv" "icedtea7-forest-2-5-49dc79ef05ab"
+                                       "openjdk")))
+                     (zero? (begin
+                              (system* "tar" "xvjf" (assoc-ref inputs "corba-drop"))
+                              (system* "mv" "corba-4aed5efcd8df"
+                                       "openjdk/corba")))
+                     (zero? (begin
+                              (system* "tar" "xvjf" (assoc-ref inputs "jdk-drop"))
+                              (system* "mv" "jdk-6b81c7cc733e"
+                                       "openjdk/jdk")))
+                     (zero? (begin
+                              (system* "tar" "xvjf" (assoc-ref inputs "hotspot-drop"))
+                              (system* "mv" "hotspot-1d0d98e7c981"
+                                       "openjdk/hotspot"))))
+                (format #t "copying stuff\n")
+                ;; TODO: we already unpack them.  Can I disable the tarball check?
+                (copy-file (assoc-ref inputs "openjdk-drop")   "openjdk.tar.bz2")
+                (copy-file (assoc-ref inputs "corba-drop")     "corba.tar.bz2")
+                (copy-file (assoc-ref inputs "hotspot-drop")   "hotspot.tar.bz2")
+
+                (copy-file (assoc-ref inputs "jaxp-drop")      "jaxp.tar.bz2")
+                (copy-file (assoc-ref inputs "jaxws-drop")     "jaxws.tar.bz2")
+                (copy-file (assoc-ref inputs "jdk-drop")       "jdk.tar.bz2")
+                (copy-file (assoc-ref inputs "langtools-drop") "langtools.tar.bz2")))
+            (alist-replace
+             'set-additional-paths
+             (lambda* (#:key inputs #:allow-other-keys)
+               (substitute* "openjdk/jdk/make/common/shared/Sanity.gmk"
+                 (("ALSA_INCLUDE=/usr/include/alsa/version.h")
+                  (string-append "ALSA_INCLUDE="
+                                 (assoc-ref inputs "alsa-lib")
+                                 "/include/alsa/version.h")))
+               (setenv "CC" "gcc")
+               (setenv "JAVA_HOME"
+                       (assoc-ref %build-inputs "icedtea6"))
+               (setenv "ALT_PREVIOUS_RELEASE_IMAGE"
+                       (assoc-ref inputs "icedtea6"))
+               (setenv "CPATH"
+                       (string-append (assoc-ref inputs "libxrender")
+                                      "/include/X11/extensions" ":"
+                                      (assoc-ref inputs "libxtst")
+                                      "/include/X11/extensions" ":"
+                                      (assoc-ref inputs "libxinerama")
+                                      "/include/X11/extensions" ":"
+                                      (or (getenv "CPATH") "")))
+               (setenv "ALT_CUPS_HEADERS_PATH"
+                       (string-append (assoc-ref inputs "cups")
+                                      "/include"))
+               (setenv "ALT_FREETYPE_HEADERS_PATH"
+                       (string-append (assoc-ref inputs "freetype")
+                                      "/include"))
+               (setenv "ALT_FREETYPE_LIB_PATH"
+                       (string-append (assoc-ref inputs "freetype")
+                                      "/lib")))
+             (alist-delete 'patch-patches ,phases))))))
+      (native-inputs
+       `(("ant" ,ant)
+         ("icedtea6" ,icedtea6 "jdk")
+         ("openjdk7-src"
+          ,(origin
+             (method url-fetch)
+             (uri (string-append
+                   "http://download.java.net/openjdk/jdk7/"
+                   "promoted/b147/openjdk-7-fcs-src-b147-27_jun_2011.zip"))
+             (sha256
+              (base32
+               "1qhwlz9y5qmwmja4qnxg6sn3pgsg1i11fb9j41w8l26acyhk34rs"))))
+         ("openjdk-drop"
+          ,(drop "openjdk"
+                 "1jfmyls21i41l1sprw019ibrraqk4bsi3bz6iq78kmgmc83s789v"))
+         ("corba-drop"
+          ,(drop "corba"
+                 "0g64gmdr1h06cjw3c3ng6raglwrq4xpkcgcfp0agrdw20zb2rswc"))
+         ("jaxp-drop"
+          ,(drop "jaxp"
+                 "1vvjl9s7cr5pdbqn9pwhcjjkd4vifmg0wrqy3n1viwpkg0hah4rd"))
+         ("jaxws-drop"
+          ,(drop "jaxws"
+                 "07pbrqf9n3aldzzj9m200sg911r6wgarli9i3vnilgr00x9xhqss"))
+         ("jdk-drop"
+          ,(drop "jdk"
+                 "0bz1ldm4pkxk572psxw31c835z4ww62929kr7qhws3myd6lxvi20"))
+         ("langtools-drop"
+          ,(drop "langtools"
+                 "1l0xxxj02z36zwjr9vaa1niwb43qvry18z44j8h5ljwzf4hnqvsi"))
+         ("hotspot-drop"
+          ,(drop "hotspot"
+                 "0a5a2cmf5qn02ppgpqb4pvd4liqm6lms82qbkq1f8zzljxz1z3lc"))
+         ,@(fold alist-delete (package-native-inputs icedtea6)
+                 '("openjdk6-src" "ant-bootstrap" "gcj")))))))
-- 
2.1.0


[-- Attachment #3: Type: text/plain, Size: 52 bytes --]


I would be very glad for any pointers.

~~ Ricardo

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: WIP: IcedTea7
  2015-03-24 11:10 WIP: IcedTea7 Ricardo Wurmus
@ 2015-03-29 13:20 ` Ludovic Courtès
  2015-03-31  8:13   ` Ricardo Wurmus
  0 siblings, 1 reply; 4+ messages in thread
From: Ludovic Courtès @ 2015-03-29 13:20 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: Guix-devel

Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de> skribis:

> Building lib:/buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk.build/lib/amd64/headless/libmawt.so
> Begin parallel compiles: /buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk/jdk/make/sun/headless
> make[6]: Entering directory '/buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk/jdk/make/sun/headless'
> logname: no login name
> INFO: ENABLE_FULL_DEBUG_SYMBOLS=1
> INFO: no objcopy cmd found so cannot create .debuginfo files. You may need to set ALT_OBJCOPY.
> gcc  -O2   -fno-strict-aliasing -fPIC -W -Wall  -Wno-unused -Wno-parentheses -pipe -fno-omit-frame-pointer -D_LITTLE_ENDIAN -g   -g -DHEADLESS=true -DNDEBUG -DARCH='"amd64"' -Damd64 -DLINUX -DRELEASE='"1.7.0_71"' -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT -D_LP64=1 -DUSE_PTHREADS -I. -I/buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/CClassHeaders -I../../../src/solaris/javavm/export -I../../../src/share/javavm/export -I../../../src/share/native/common -I../../../src/solaris/native/common -I../../../src/share/native/sun/awt -I../../../src/solaris/native/sun/awt   -DHEADLESS=true -I/gnu/store/q6xjdq8p6fx6s6n5i9jlpp56znmc4dia-cups-2.0.1/include -DUSE_SYSTEM_CUPS -I/gnu/store/af6yzmcj64q1y3v8aa4b13r3kfak01d7-freetype-2.5.5/include/freetype2 -I/gnu/store/hpbhilz8fxc6mrisvmjig01l79dyczqi-fontconfig-2.11.92/include -I/gnu/store/b671frr777ny62n2rg3sjs6by2m44q5y-expat-2.1.0/include -I/gnu/store/af6yzmcj64q1y3v8aa4b13r3kfak01d7-freetype-2.5.5/include/freetype2 -I/gnu/store/b671frr777ny62n2rg3sjs6by2m44q5y-expat-2.1.0/include  -DUSE_SYSTEM_FONTCONFIG -I../../../src/share/native/sun/awt/debug -I../../../src/share/native/sun/awt/../font -I../../../src/solaris/native/sun/awt/../font -I../../../src/share/native/sun/awt/image -I../../../src/share/native/sun/awt/image/cvutils -I../../../src/share/native/sun/awt/shell -I../../../src/share/native/sun/awt/alphacomposite -I../../../src/share/native/sun/awt/medialib -I../../../src/solaris/native/sun/awt/medialib -I../../../src/share/native/sun/awt/../java2d -I../../../src/solaris/native/sun/awt/../java2d -I../../../src/share/native/sun/awt/../java2d/loops -I../../../src/share/native/sun/awt/../java2d/pipe -I../../../src/share/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/x11 -I../../../src/share/native/sun/awt/../dc/doe -I../../../src/share/native/sun/awt/../dc/path -I../../../src/solaris/native/sun/awt/../jdga -I../../../src/solaris/native/sun/awt  -I  -c -o /buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/obj64/awt_Font.o  ../../../src/solaris/native/sun/awt/awt_Font.c
> gcc  -O2   -fno-strict-aliasing -fPIC -W -Wall  -Wno-unused -Wno-parentheses -pipe -fno-omit-frame-pointer -D_LITTLE_ENDIAN -g   -g -DHEADLESS=true -DNDEBUG -DARCH='"amd64"' -Damd64 -DLINUX -DRELEASE='"1.7.0_71"' -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT -D_LP64=1 -DUSE_PTHREADS -I. -I/buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/CClassHeaders -I../../../src/solaris/javavm/export -I../../../src/share/javavm/export -I../../../src/share/native/common -I../../../src/solaris/native/common -I../../../src/share/native/sun/awt -I../../../src/solaris/native/sun/awt   -DHEADLESS=true -I/gnu/store/q6xjdq8p6fx6s6n5i9jlpp56znmc4dia-cups-2.0.1/include -DUSE_SYSTEM_CUPS -I/gnu/store/af6yzmcj64q1y3v8aa4b13r3kfak01d7-freetype-2.5.5/include/freetype2 -I/gnu/store/hpbhilz8fxc6mrisvmjig01l79dyczqi-fontconfig-2.11.92/include -I/gnu/store/b671frr777ny62n2rg3sjs6by2m44q5y-expat-2.1.0/include -I/gnu/store/af6yzmcj64q1y3v8aa4b13r3kfak01d7-freetype-2.5.5/include/freetype2 -I/gnu/store/b671frr777ny62n2rg3sjs6by2m44q5y-expat-2.1.0/include  -DUSE_SYSTEM_FONTCONFIG -I../../../src/share/native/sun/awt/debug -I../../../src/share/native/sun/awt/../font -I../../../src/solaris/native/sun/awt/../font -I../../../src/share/native/sun/awt/image -I../../../src/share/native/sun/awt/image/cvutils -I../../../src/share/native/sun/awt/shell -I../../../src/share/native/sun/awt/alphacomposite -I../../../src/share/native/sun/awt/medialib -I../../../src/solaris/native/sun/awt/medialib -I../../../src/share/native/sun/awt/../java2d -I../../../src/solaris/native/sun/awt/../java2d -I../../../src/share/native/sun/awt/../java2d/loops -I../../../src/share/native/sun/awt/../java2d/pipe -I../../../src/share/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/x11 -I../../../src/share/native/sun/awt/../dc/doe -I../../../src/share/native/sun/awt/../dc/path -I../../../src/solaris/native/sun/awt/../jdga -I../../../src/solaris/native/sun/awt  -I  -c -o /buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/obj64/awt_MToolkit.o  ../../../src/solaris/native/sun/awt/awt_MToolkit.c
> ../../../src/solaris/native/sun/awt/awt_Font.c: In function ?Java_java_awt_Font_initIDs?:
> ../../../src/solaris/native/sun/awt/awt_Font.c:86:12: warning: unused parameter ?env? [-Wunused-parameter]
>    (JNIEnv *env, jclass cls)
>             ^
> ../../../src/solaris/native/sun/awt/awt_Font.c:86:24: warning: unused parameter ?cls? [-Wunused-parameter]
>    (JNIEnv *env, jclass cls)
>                         ^
> ../../../src/solaris/native/sun/awt/awt_Font.c: In function ?Java_sun_awt_FontDescriptor_initIDs?:
> ../../../src/solaris/native/sun/awt/awt_Font.c:173:12: warning: unused parameter ?env? [-Wunused-parameter]
>    (JNIEnv *env, jclass cls)
>             ^
> ../../../src/solaris/native/sun/awt/awt_Font.c:173:24: warning: unused parameter ?cls? [-Wunused-parameter]
>    (JNIEnv *env, jclass cls)
>                         ^
> ../../../src/solaris/native/sun/awt/awt_Font.c: In function ?Java_sun_awt_PlatformFont_initIDs?:
> ../../../src/solaris/native/sun/awt/awt_Font.c:218:12: warning: unused parameter ?env? [-Wunused-parameter]
>    (JNIEnv *env, jclass cls)
>             ^
> ../../../src/solaris/native/sun/awt/awt_Font.c:218:24: warning: unused parameter ?cls? [-Wunused-parameter]
>    (JNIEnv *env, jclass cls)
>                         ^
> /gnu/store/wiqbxcvzj3r35hd55yxzz919b1dv1hnv-glibc-2.21/lib/crt1.o: In function `_start':
> (.text+0x20): undefined reference to `main'
> collect2: error: ld returned 1 exit status

It looks as though it was trying to build an executable, but the .o
files that make it lack ‘main’.  However, the two commands that you
pasted build .o files (with ‘-c’), not executables.

Could it be that it’s a -j build and the faulty command appear higher in
the log?  Or could it be that the build system is not parallel-safe?

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: WIP: IcedTea7
  2015-03-29 13:20 ` Ludovic Courtès
@ 2015-03-31  8:13   ` Ricardo Wurmus
  2015-04-15 15:44     ` Ricardo Wurmus
  0 siblings, 1 reply; 4+ messages in thread
From: Ricardo Wurmus @ 2015-03-31  8:13 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Guix-devel


Ludovic Courtès writes:

> Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de> skribis:
>
>> Building lib:/buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk.build/lib/amd64/headless/libmawt.so
>> Begin parallel compiles: /buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk/jdk/make/sun/headless
>> make[6]: Entering directory '/buildtmp/nix-build-icedtea7-2.5.3.drv-1/icedtea-2.5.3/openjdk/jdk/make/sun/headless'
>> logname: no login name
[...]
>
> It looks as though it was trying to build an executable, but the .o
> files that make it lack ‘main’.  However, the two commands that you
> pasted build .o files (with ‘-c’), not executables.
>
> Could it be that it’s a -j build and the faulty command appear higher in
> the log?  Or could it be that the build system is not parallel-safe?

It is indeed a -j build with 2 parallel jobs by default.  However, I get
the very same error when I pass the configure flag
"--with-parallel-jobs=1" or the make flag "COMPILE_APPROACH=normal" to
force a sequential build process:

~~~~~~~~~~~~~~~~~~~~~~~
make[5]: Entering directory '/buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk/jdk/make/sun/headless'
logname: no login name
INFO: ENABLE_FULL_DEBUG_SYMBOLS=1
INFO: no objcopy cmd found so cannot create .debuginfo files. You may need to set ALT_OBJCOPY.
/gnu/store/ga89pci8mqk9h5qbwi11p8m2aa84iaqd-coreutils-8.23/bin/mkdir -p /buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/obj64
rm -f /buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/obj64/.class.headers.amd64
# Running javah:
/buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/bootstrap/jdk1.6.0/bin/java -XX:-PrintVMOptions -XX:+UnlockDiagnosticVMOptions -XX:-LogVMOutput -Xmx512m -Xms512m -XX:PermSize=32m -XX:MaxPermSize=160m "-Xbootclasspath/p:/buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk.build/langtools/dist/bootstrap/lib/javah.jar:/buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk.build/langtools/dist/bootstrap/lib/javac.jar" -jar /buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk.build/langtools/dist/bootstrap/lib/javah.jar -bootclasspath "/buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk.build/classes" -d /buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/CClassHeaders/ \
	sun.font.FontManager sun.awt.image.ImageRepresentation sun.awt.image.GifImageDecoder sun.awt.image.NativeLibLoader sun.java2d.loops.Blit sun.java2d.loops.BlitBg sun.java2d.loops.ScaledBlit sun.java2d.loops.TransformBlit sun.java2d.loops.FillRect sun.java2d.loops.FillSpans sun.java2d.loops.FillParallelogram sun.java2d.loops.DrawParallelogram sun.java2d.loops.DrawGlyphList sun.java2d.loops.DrawGlyphListAA sun.java2d.loops.DrawGlyphListLCD sun.java2d.loops.DrawLine sun.java2d.loops.DrawRect sun.java2d.loops.DrawPolygons sun.java2d.loops.DrawPath sun.java2d.loops.FillPath sun.java2d.loops.MaskBlit sun.java2d.loops.MaskFill sun.java2d.loops.TransformHelper sun.java2d.loops.GraphicsPrimitiveMgr sun.java2d.loops.GraphicsPrimitive sun.java2d.pipe.hw.AccelSurface sun.java2d.pipe.hw.AccelDeviceEventNotifier sun.java2d.pipe.hw.ContextCapabilities sun.awt.image.ImagingLib sun.java2d.SurfaceData sun.java2d.SunGraphics2D sun.awt.KeyboardFocusManagerPeerImpl sun.awt.image.BufImgSurfaceData sun.awt.image.DataBufferNative sun.awt.motif.X11FontMetrics sun.awt.X11InputMethod sun.awt.motif.MFontConfiguration sun.awt.motif.MFontPeer sun.awt.motif.MToolkit sun.awt.DebugSettings sun.awt.EmbeddedFrame sun.awt.PlatformFont sun.awt.FontDescriptor sun.awt.NativeLibLoader sun.awt.X11GraphicsEnvironment sun.awt.X11GraphicsDevice sun.awt.X11GraphicsConfig sun.awt.CharsetString sun.awt.UNIXToolkit sun.java2d.pipe.BufferedContext sun.java2d.pipe.BufferedMaskBlit sun.java2d.pipe.BufferedOpCodes sun.java2d.pipe.BufferedMaskBlit sun.java2d.pipe.BufferedPaints sun.java2d.pipe.BufferedRenderPipe sun.java2d.pipe.BufferedTextPipe sun.java2d.pipe.RenderBuffer sun.java2d.pipe.ShapeSpanIterator sun.java2d.pipe.SpanClipRenderer sun.java2d.pipe.RegionIterator sun.awt.image.IntegerComponentRaster sun.java2d.cmm.CMSManager sun.java2d.cmm.PCMM sun.java2d.cmm.ColorTransform sun.awt.datatransfer.DataTransferer sun.awt.dnd.SunDragSourceContextPeer sun.awt.motif.MToolkitThreadBlockedHandler sun.java2d.opengl.OGLBlitLoops sun.java2d.opengl.OGLContext sun.java2d.opengl.OGLMaskFill sun.java2d.opengl.OGLPaints sun.java2d.opengl.OGLRenderer sun.java2d.opengl.OGLRenderQueue sun.java2d.opengl.OGLSurfaceData sun.java2d.opengl.OGLTextRenderer sun.java2d.opengl.GLXGraphicsConfig sun.java2d.opengl.GLXSurfaceData sun.java2d.x11.X11PMBlitLoops sun.java2d.x11.X11PMBlitBgLoops sun.java2d.x11.X11Renderer sun.java2d.x11.X11SurfaceData com.sun.java.swing.plaf.gtk.GTKEngine com.sun.java.swing.plaf.gtk.GTKStyle sun.awt.ExtendedKeyCodes java.awt.AlphaComposite java.awt.MouseInfo java.awt.Cursor java.awt.Graphics java.awt.Color java.awt.Image java.awt.Rectangle java.awt.Event java.awt.Font java.awt.Insets java.awt.Point java.awt.FontMetrics java.awt.Toolkit java.awt.Component java.awt.Container java.awt.Canvas java.awt.Button java.awt.List java.awt.Adjustable java.awt.Scrollbar java.awt.ScrollPane java.awt.ScrollPaneAdjustable java.awt.Window java.awt.TextField java.awt.Label java.awt.Choice java.awt.TextArea java.awt.MenuBar java.awt.Menu java.awt.MenuComponent java.awt.PopupMenu java.awt.Dialog java.awt.FileDialog java.awt.MenuItem java.awt.Checkbox java.awt.CheckboxMenuItem java.awt.CheckboxGroup java.awt.Frame java.awt.Transparency java.awt.AWTException java.awt.AWTEvent java.awt.AWTKeyStroke java.awt.KeyboardFocusManager java.awt.Dimension java.awt.SystemColor java.awt.TrayIcon java.awt.DisplayMode java.awt.color.ColorSpace java.awt.color.ICC_Profile java.awt.geom.PathIterator java.awt.image.AffineTransformOp java.awt.image.ImageConsumer java.awt.image.ImageObserver java.awt.image.BufferedImage java.awt.image.ColorModel java.awt.image.ConvolveOp java.awt.image.DirectColorModel java.awt.image.IndexColorModel java.awt.image.DataBuffer java.awt.datatransfer.Transferable java.awt.datatransfer.DataFlavor java.awt.datatransfer.UnsupportedFlavorException java.awt.datatransfer.Clipboard java.awt.datatransfer.ClipboardOwner java.awt.datatransfer.StringSelection java.awt.event.AdjustmentEvent java.awt.event.KeyEvent java.awt.event.MouseEvent java.awt.event.MouseWheelEvent java.awt.event.FocusEvent java.awt.event.InputEvent java.awt.event.WindowEvent java.awt.event.NativeLibLoader java.awt.peer.ComponentPeer java.awt.dnd.DnDConstants sun.awt.CausedFocusEvent  java.io.InputStream java.lang.ThreadGroup 
/gnu/store/ga89pci8mqk9h5qbwi11p8m2aa84iaqd-coreutils-8.23/bin/mkdir -p /buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk.build/lib/amd64/headless
Building lib:/buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk.build/lib/amd64/headless/libmawt.so
gcc  -O2   -fno-strict-aliasing -fPIC -W -Wall  -Wno-unused -Wno-parentheses -pipe -fno-omit-frame-pointer -D_LITTLE_ENDIAN -g   -g -DHEADLESS=true -DNDEBUG -DARCH='"amd64"' -Damd64 -DLINUX -DRELEASE='"1.7.0_71"' -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT -D_LP64=1 -DUSE_PTHREADS -I. -I/buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/CClassHeaders -I../../../src/solaris/javavm/export -I../../../src/share/javavm/export -I../../../src/share/native/common -I../../../src/solaris/native/common -I../../../src/share/native/sun/awt -I../../../src/solaris/native/sun/awt   -DHEADLESS=true -I/gnu/store/7g64rkm6gl8j5w29sfayip0pbvwylbkr-cups-2.0.1/include -DUSE_SYSTEM_CUPS -I/gnu/store/af6yzmcj64q1y3v8aa4b13r3kfak01d7-freetype-2.5.5/include/freetype2 -I/gnu/store/hpbhilz8fxc6mrisvmjig01l79dyczqi-fontconfig-2.11.92/include -I/gnu/store/b671frr777ny62n2rg3sjs6by2m44q5y-expat-2.1.0/include -I/gnu/store/af6yzmcj64q1y3v8aa4b13r3kfak01d7-freetype-2.5.5/include/freetype2 -I/gnu/store/b671frr777ny62n2rg3sjs6by2m44q5y-expat-2.1.0/include  -DUSE_SYSTEM_FONTCONFIG -I../../../src/share/native/sun/awt/debug -I../../../src/share/native/sun/awt/../font -I../../../src/solaris/native/sun/awt/../font -I../../../src/share/native/sun/awt/image -I../../../src/share/native/sun/awt/image/cvutils -I../../../src/share/native/sun/awt/shell -I../../../src/share/native/sun/awt/alphacomposite -I../../../src/share/native/sun/awt/medialib -I../../../src/solaris/native/sun/awt/medialib -I../../../src/share/native/sun/awt/../java2d -I../../../src/solaris/native/sun/awt/../java2d -I../../../src/share/native/sun/awt/../java2d/loops -I../../../src/share/native/sun/awt/../java2d/pipe -I../../../src/share/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/x11 -I../../../src/share/native/sun/awt/../dc/doe -I../../../src/share/native/sun/awt/../dc/path -I../../../src/solaris/native/sun/awt/../jdga -I../../../src/solaris/native/sun/awt  -I  -c -o /buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/obj64/awt_Font.o  ../../../src/solaris/native/sun/awt/awt_Font.c
../../../src/solaris/native/sun/awt/awt_Font.c: In function ‘Java_java_awt_Font_initIDs’:
../../../src/solaris/native/sun/awt/awt_Font.c:86:12: warning: unused parameter ‘env’ [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
            ^
../../../src/solaris/native/sun/awt/awt_Font.c:86:24: warning: unused parameter ‘cls’ [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
                        ^
../../../src/solaris/native/sun/awt/awt_Font.c: In function ‘Java_sun_awt_FontDescriptor_initIDs’:
../../../src/solaris/native/sun/awt/awt_Font.c:173:12: warning: unused parameter ‘env’ [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
            ^
../../../src/solaris/native/sun/awt/awt_Font.c:173:24: warning: unused parameter ‘cls’ [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
                        ^
../../../src/solaris/native/sun/awt/awt_Font.c: In function ‘Java_sun_awt_PlatformFont_initIDs’:
../../../src/solaris/native/sun/awt/awt_Font.c:218:12: warning: unused parameter ‘env’ [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
            ^
../../../src/solaris/native/sun/awt/awt_Font.c:218:24: warning: unused parameter ‘cls’ [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
                        ^
/gnu/store/wiqbxcvzj3r35hd55yxzz919b1dv1hnv-glibc-2.21/lib/crt1.o: In function `_start':
(.text+0x20): undefined reference to `main'
collect2: error: ld returned 1 exit status
/buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk/jdk/make/common/internal/NativeCompileRules.gmk:74: recipe for target '/buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/obj64/awt_Font.o' failed
make[5]: *** [/buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk.build/tmp/sun/sun.awt/headless/obj64/awt_Font.o] Error 1
make[5]: Leaving directory '/buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk/jdk/make/sun/headless'
Makefile:102: recipe for target 'all' failed
make[4]: *** [all] Error 1
make[4]: Leaving directory '/buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk/jdk/make/sun'
Makefile:253: recipe for target 'all' failed
make[3]: *** [all] Error 1
make[3]: Leaving directory '/buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk/jdk/make'
make/jdk-rules.gmk:92: recipe for target 'jdk-build' failed
make[2]: *** [jdk-build] Error 2
make[2]: Leaving directory '/buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk'
Makefile:251: recipe for target 'build_product_image' failed
make[1]: *** [build_product_image] Error 2
make[1]: Leaving directory '/buildtmp/nix-build-icedtea7-2.5.3.drv-2/icedtea-2.5.3/openjdk'
Makefile:2219: recipe for target 'stamps/icedtea.stamp' failed
make: *** [stamps/icedtea.stamp] Error 2
phase `build' failed after 1590 seconds
builder for `/gnu/store/4b3si368ivaz5m0d0zr15xnxafwkkv90-icedtea7-2.5.3.drv' failed with exit code 1
@ build-failed /gnu/store/4b3si368ivaz5m0d0zr15xnxafwkkv90-icedtea7-2.5.3.drv - 1 builder for `/gnu/store/4b3si368ivaz5m0d0zr15xnxafwkkv90-icedtea7-2.5.3.drv' failed with exit code 1
killing process 31706
guix build: error: build failed: build of `/gnu/store/4b3si368ivaz5m0d0zr15xnxafwkkv90-icedtea7-2.5.3.drv' failed
~~~~~~~~~~~~~~~~~~~~~~~

Confusing.

~~ Ricardo

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: WIP: IcedTea7
  2015-03-31  8:13   ` Ricardo Wurmus
@ 2015-04-15 15:44     ` Ricardo Wurmus
  0 siblings, 0 replies; 4+ messages in thread
From: Ricardo Wurmus @ 2015-04-15 15:44 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Guix-devel

[-- Attachment #1: Type: text/plain, Size: 7770 bytes --]

Also with the latest release of IcedTea (2.5.5) I get the same linker
error.  I obviously do not get this with IcedTea 1.13.x.  Here's the
matching section of the build logs for IcedTea 1.13.7 where you see
... nothing bad at all happening:

~~~~~~~~
...
make[6]: Entering directory '/buildtmp/nix-build-icedtea6-1.13.7.drv-0/icedtea6-1.13.7/openjdk-ecj/jdk/make/sun/headless'
logname: no login name
/gnu/store/4sqgnc9bc1kmn058yp4xnj4vpydmfzpq-gcc-4.8.4/bin/gcc  -O2   -fno-strict-aliasing -fPIC -W -Wall  -Wno-unused -Wno-parentheses -pipe -fno-omit-frame-pointer -D_LITTLE_ENDIAN -g  -g -DHEADLESS=true  -DARCH='"amd64"' -Damd64 -DLINUX -DRELEASE='"1.6.0_35"' -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT -D_LP64=1 -I. -I/buildtmp/nix-build-icedtea6-1.13.7.drv-0/icedtea6-1.13.7/openjdk.build-ecj/tmp/sun/sun.awt/headless/CClassHeaders -I../../../src/solaris/javavm/export -I../../../src/share/javavm/export -I../../../src/share/javavm/include -I../../../src/solaris/javavm/include -I../../../src/share/native/common -I../../../src/solaris/native/common -I../../../src/share/native/sun/awt -I../../../src/solaris/native/sun/awt   -DHEADLESS=true -I/gnu/store/7g64rkm6gl8j5w29sfayip0pbvwylbkr-cups-2.0.1/include -I../../../src/share/native/sun/awt/debug -I../../../src/share/native/sun/awt/../font -I../../../src/solaris/native/sun/awt/../font -I../../../src/share/native/sun/awt/image -I../../../src/share/native/sun/awt/image/cvutils -I../../../src/share/native/sun/awt/shell -I../../../src/share/native/sun/awt/alphacomposite -I../../../src/share/native/sun/awt/medialib -I../../../src/solaris/native/sun/awt/medialib -I../../../src/share/native/sun/awt/../java2d -I../../../src/solaris/native/sun/awt/../java2d -I../../../src/share/native/sun/awt/../java2d/loops -I../../../src/share/native/sun/awt/../java2d/pipe -I../../../src/share/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/x11 -I../../../src/share/native/sun/awt/../dc/doe -I../../../src/share/native/sun/awt/../dc/path -I../../../src/solaris/native/sun/awt/../jdga -I../../../src/solaris/native/sun/awt  -I/X11R6/include/X11/extensions -I/usr/include/X11/extensions  -c -o /buildtmp/nix-build-icedtea6-1.13.7.drv-0/icedtea6-1.13.7/openjdk.build-ecj/tmp/sun/sun.awt/headless/obj64/awt_Font.o  ../../../src/solaris/native/sun/awt/awt_Font.c
/gnu/store/4sqgnc9bc1kmn058yp4xnj4vpydmfzpq-gcc-4.8.4/bin/gcc  -O2   -fno-strict-aliasing -fPIC -W -Wall  -Wno-unused -Wno-parentheses -pipe -fno-omit-frame-pointer -D_LITTLE_ENDIAN -g  -g -DHEADLESS=true  -DARCH='"amd64"' -Damd64 -DLINUX -DRELEASE='"1.6.0_35"' -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT -D_LP64=1 -I. -I/buildtmp/nix-build-icedtea6-1.13.7.drv-0/icedtea6-1.13.7/openjdk.build-ecj/tmp/sun/sun.awt/headless/CClassHeaders -I../../../src/solaris/javavm/export -I../../../src/share/javavm/export -I../../../src/share/javavm/include -I../../../src/solaris/javavm/include -I../../../src/share/native/common -I../../../src/solaris/native/common -I../../../src/share/native/sun/awt -I../../../src/solaris/native/sun/awt   -DHEADLESS=true -I/gnu/store/7g64rkm6gl8j5w29sfayip0pbvwylbkr-cups-2.0.1/include -I../../../src/share/native/sun/awt/debug -I../../../src/share/native/sun/awt/../font -I../../../src/solaris/native/sun/awt/../font -I../../../src/share/native/sun/awt/image -I../../../src/share/native/sun/awt/image/cvutils -I../../../src/share/native/sun/awt/shell -I../../../src/share/native/sun/awt/alphacomposite -I../../../src/share/native/sun/awt/medialib -I../../../src/solaris/native/sun/awt/medialib -I../../../src/share/native/sun/awt/../java2d -I../../../src/solaris/native/sun/awt/../java2d -I../../../src/share/native/sun/awt/../java2d/loops -I../../../src/share/native/sun/awt/../java2d/pipe -I../../../src/share/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/x11 -I../../../src/share/native/sun/awt/../dc/doe -I../../../src/share/native/sun/awt/../dc/path -I../../../src/solaris/native/sun/awt/../jdga -I../../../src/solaris/native/sun/awt  -I/X11R6/include/X11/extensions -I/usr/include/X11/extensions  -c -o /buildtmp/nix-build-icedtea6-1.13.7.drv-0/icedtea6-1.13.7/openjdk.build-ecj/tmp/sun/sun.awt/headless/obj64/awt_MToolkit.o  ../../../src/solaris/native/sun/awt/awt_MToolkit.c
../../../src/solaris/native/sun/awt/awt_Font.c: In function ‘Java_java_awt_Font_initIDs’:
../../../src/solaris/native/sun/awt/awt_Font.c:86:12: warning: unused parameter ‘env’ [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
            ^
../../../src/solaris/native/sun/awt/awt_Font.c:86:24: warning: unused parameter ‘cls’ [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
                        ^
../../../src/solaris/native/sun/awt/awt_Font.c: In function ‘Java_sun_awt_FontDescriptor_initIDs’:
../../../src/solaris/native/sun/awt/awt_Font.c:173:12: warning: unused parameter ‘env’ [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
            ^
../../../src/solaris/native/sun/awt/awt_Font.c:173:24: warning: unused parameter ‘cls’ [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
                        ^
../../../src/solaris/native/sun/awt/awt_Font.c: In function ‘Java_sun_awt_PlatformFont_initIDs’:
../../../src/solaris/native/sun/awt/awt_Font.c:218:12: warning: unused parameter ‘env’ [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
            ^
../../../src/solaris/native/sun/awt/awt_Font.c:218:24: warning: unused parameter ‘cls’ [-Wunused-parameter]
   (JNIEnv *env, jclass cls)
                        ^
/gnu/store/4sqgnc9bc1kmn058yp4xnj4vpydmfzpq-gcc-4.8.4/bin/gcc  -O2   -fno-strict-aliasing -fPIC -W -Wall  -Wno-unused -Wno-parentheses -pipe -fno-omit-frame-pointer -D_LITTLE_ENDIAN -g  -g -DHEADLESS=true  -DARCH='"amd64"' -Damd64 -DLINUX -DRELEASE='"1.6.0_35"' -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT -D_LP64=1 -I. -I/buildtmp/nix-build-icedtea6-1.13.7.drv-0/icedtea6-1.13.7/openjdk.build-ecj/tmp/sun/sun.awt/headless/CClassHeaders -I../../../src/solaris/javavm/export -I../../../src/share/javavm/export -I../../../src/share/javavm/include -I../../../src/solaris/javavm/include -I../../../src/share/native/common -I../../../src/solaris/native/common -I../../../src/share/native/sun/awt -I../../../src/solaris/native/sun/awt   -DHEADLESS=true -I/gnu/store/7g64rkm6gl8j5w29sfayip0pbvwylbkr-cups-2.0.1/include -I../../../src/share/native/sun/awt/debug -I../../../src/share/native/sun/awt/../font -I../../../src/solaris/native/sun/awt/../font -I../../../src/share/native/sun/awt/image -I../../../src/share/native/sun/awt/image/cvutils -I../../../src/share/native/sun/awt/shell -I../../../src/share/native/sun/awt/alphacomposite -I../../../src/share/native/sun/awt/medialib -I../../../src/solaris/native/sun/awt/medialib -I../../../src/share/native/sun/awt/../java2d -I../../../src/solaris/native/sun/awt/../java2d -I../../../src/share/native/sun/awt/../java2d/loops -I../../../src/share/native/sun/awt/../java2d/pipe -I../../../src/share/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/opengl -I../../../src/solaris/native/sun/awt/../java2d/x11 -I../../../src/share/native/sun/awt/../dc/doe -I../../../src/share/native/sun/awt/../dc/path -I../../../src/solaris/native/sun/awt/../jdga -I../../../src/solaris/native/sun/awt  -I/X11R6/include/X11/extensions -I/usr/include/X11/extensions  -c -o /buildtmp/nix-build-icedtea6-1.13.7.drv-0/icedtea6-1.13.7/openjdk.build-ecj/tmp/sun/sun.awt/headless/obj64/fontpath.o  ../../../src/solaris/native/sun/awt/fontpath.c
...
~~~~~~~~

Attached is the latest recipe for IcedTea7, version 2.5.5.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-WIP-icedtea7.patch --]
[-- Type: text/x-patch, Size: 9308 bytes --]

From 42756d081274ff38e833cb093c7be3fc252a2013 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Date: Tue, 24 Mar 2015 12:09:29 +0100
Subject: [PATCH] WIP: icedtea7

---
 gnu/packages/java.scm | 156 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 155 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 00ee5a1..a2e7a0e 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -20,6 +20,7 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix utils)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
   #:use-module (gnu packages attr)
@@ -45,7 +46,8 @@
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages zip)
-  #:use-module (gnu packages texinfo))
+  #:use-module (gnu packages texinfo)
+  #:use-module ((srfi srfi-1) #:select (fold alist-delete)))
 
 (define-public ant
   (package
@@ -562,3 +564,155 @@ build process and its dependencies, whereas Make uses Makefile format.")
     ;; IcedTea is released under the GPL2 + Classpath exception, which is the
     ;; same license as both GNU Classpath and OpenJDK.
     (license license:gpl2+)))
+
+(define-public icedtea7
+  (let* ((version "2.5.5")
+         (drop (lambda (name hash)
+                 (origin
+                   (method url-fetch)
+                   (uri (string-append
+                         "http://icedtea.classpath.org/download/drops/"
+                         "/icedtea7/" version "/" name ".tar.bz2"))
+                   (sha256 (base32 hash))))))
+    (package (inherit icedtea6)
+      (name "icedtea7")
+      (version version)
+      (source (origin
+                (method url-fetch)
+                (uri (string-append
+                      "http://icedtea.wildebeest.org/download/source/icedtea-"
+                      version ".tar.xz"))
+                (sha256
+                 (base32
+                  "1irxk2ndwsfk4c1zbzb5h3rpwv2bc9bhfjvz6p4dws5476vsxrq9"))
+                (modules '((guix build utils)))
+                (snippet
+                 '(substitute* "Makefile.in"
+                    ;; do not leak information about the build host
+                    (("DISTRIBUTION_ID=\"\\$\\(DIST_ID\\)\"")
+                     "DISTRIBUTION_ID=\"\\\"guix\\\"\"")))))
+      (arguments
+       `(#:parallel-build? #f
+         ,@(substitute-keyword-arguments `(#:modules ((guix build gnu-build-system)
+                                                      (guix build utils)
+                                                      (srfi srfi-1)
+                                                      (srfi srfi-26))
+                                                     ,@(package-arguments icedtea6))
+             ((#:configure-flags flags)
+              `(let ((jdk (assoc-ref %build-inputs "icedtea6"))
+                     (ant (assoc-ref %build-inputs "ant")))
+                 `("--disable-bootstrap"
+                   ;;"--disable-bootstrap-tools"
+                   "--without-rhino"
+                   "--enable-nss"
+                   "--enable-infinality"
+                   "--enable-system-gio"
+                   "--enable-system-gtk"
+                   "--enable-system-gif"
+                   "--enable-system-png"
+                   "--enable-system-jpeg"
+                   "--enable-system-zlib"
+                   "--enable-system-lcms"
+                   "--enable-system-fontconfig"
+                   "--disable-downloading"
+                   "--disable-xrender" ;; TODO: more X11 extensions are needed
+                                        ;see /usr/include/X11/extensions
+                   ;;"--with-openjdk-src-dir=./openjdk"
+                   ,(string-append "--with-ant-home=" ant)
+                   ,(string-append "--with-jdk-home=" jdk)
+                   )))
+             ((#:phases phases)
+              `(alist-replace
+                'unpack
+                (lambda* (#:key source inputs #:allow-other-keys)
+                  (let ((target (string-append "icedtea-" ,version)))
+                    (and (zero? (system* "tar" "xvf" source))
+                         (chdir target)
+                         (mkdir "openjdk")
+                         (mkdir "openjdk/corba")
+                         (mkdir "openjdk/jdk")
+                         (mkdir "openjdk/hotspot")
+                         (zero? (system* "tar" "xvjf" (assoc-ref inputs "openjdk-drop")
+                                         "-C" "openjdk" "--strip-components=1"))
+                         (zero? (system* "tar" "xvjf" (assoc-ref inputs "corba-drop")
+                                         "-C" "openjdk/corba" "--strip-components=1"))
+                         (zero? (system* "tar" "xvjf" (assoc-ref inputs "jdk-drop")
+                                         "-C" "openjdk/jdk" "--strip-components=1"))
+                         (zero? (system* "tar" "xvjf" (assoc-ref inputs "hotspot-drop")
+                                         "-C" "openjdk/hotspot" "--strip-components=1")))
+                    (format #t "copying stuff\n")
+                    ;; TODO: we already unpack them.  Can I disable the tarball check?
+                    (copy-file (assoc-ref inputs "openjdk-drop")   "openjdk.tar.bz2")
+                    (copy-file (assoc-ref inputs "corba-drop")     "corba.tar.bz2")
+                    (copy-file (assoc-ref inputs "hotspot-drop")   "hotspot.tar.bz2")
+
+                    (copy-file (assoc-ref inputs "jaxp-drop")      "jaxp.tar.bz2")
+                    (copy-file (assoc-ref inputs "jaxws-drop")     "jaxws.tar.bz2")
+                    (copy-file (assoc-ref inputs "jdk-drop")       "jdk.tar.bz2")
+                    (copy-file (assoc-ref inputs "langtools-drop") "langtools.tar.bz2")))
+                (alist-replace
+                 'set-additional-paths
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   (substitute* "openjdk/jdk/make/common/shared/Sanity.gmk"
+                     (("ALSA_INCLUDE=/usr/include/alsa/version.h")
+                      (string-append "ALSA_INCLUDE="
+                                     (assoc-ref inputs "alsa-lib")
+                                     "/include/alsa/version.h")))
+                   (setenv "CC" "gcc")
+                   (setenv "JAVA_HOME"
+                           (assoc-ref %build-inputs "icedtea6"))
+                   (setenv "ALT_PREVIOUS_RELEASE_IMAGE"
+                           (assoc-ref inputs "icedtea6"))
+                   (setenv "CPATH"
+                           (string-append (assoc-ref inputs "libxrender")
+                                          "/include/X11/extensions" ":"
+                                          (assoc-ref inputs "libxtst")
+                                          "/include/X11/extensions" ":"
+                                          (assoc-ref inputs "libxinerama")
+                                          "/include/X11/extensions" ":"
+                                          (or (getenv "CPATH") "")))
+                   (setenv "ALT_CUPS_HEADERS_PATH"
+                           (string-append (assoc-ref inputs "cups")
+                                          "/include"))
+                   (setenv "ALT_FREETYPE_HEADERS_PATH"
+                           (string-append (assoc-ref inputs "freetype")
+                                          "/include"))
+                   (setenv "ALT_FREETYPE_LIB_PATH"
+                           (string-append (assoc-ref inputs "freetype")
+                                          "/lib")))
+                 (alist-delete 'patch-patches ,phases)))))))
+      (native-inputs
+       `(("ant" ,ant)
+         ("icedtea6" ,icedtea6 "jdk")
+         ("openjdk7-src"
+          ,(origin
+             (method url-fetch)
+             (uri (string-append
+                   "http://download.java.net/openjdk/jdk7/"
+                   "promoted/b147/openjdk-7-fcs-src-b147-27_jun_2011.zip"))
+             (sha256
+              (base32
+               "1qhwlz9y5qmwmja4qnxg6sn3pgsg1i11fb9j41w8l26acyhk34rs"))))
+         ("openjdk-drop"
+          ,(drop "openjdk"
+                 "03gxqn17cxwl1nspnwigacaqd28p02d45f396j5f4kkbzfnbl0ak"))
+         ("corba-drop"
+          ,(drop "corba"
+                 "0ldcckknn2f92jv1144cnn0z3wmvxln28wc00rc6xxblnjcnamzh"))
+         ("jaxp-drop"
+          ,(drop "jaxp"
+                 "0mnjdziffcnyqlyvf8dw1hrl4kiiwmh8ia0ym417wgvnjpaihci9"))
+         ("jaxws-drop"
+          ,(drop "jaxws"
+                 "1gkmypnhygx2mxhca3ngy620k993wi2cc1wysc0np06y1rkx1mkn"))
+         ("jdk-drop"
+          ,(drop "jdk"
+                 "10x43mqjfn43jlckic0nyf7apyyjyr910cdmmvy41kvw8ljhvg61"))
+         ("langtools-drop"
+          ,(drop "langtools"
+                 "0q5nqc14r6vmhxgikw3wgdcc0r9symp830v13isnv8qdjgm6kcki"))
+         ("hotspot-drop"
+          ,(drop "hotspot"
+                 "1yqxfd2jwbm5y41wscyfx8h0fr3h8ny2g2mda5iwd8sikxsaj96p"))
+         ,@(fold alist-delete (package-native-inputs icedtea6)
+                 '("openjdk6-src" "ant-bootstrap" "gcj")))))))
-- 
2.1.0


[-- Attachment #3: Type: text/plain, Size: 49 bytes --]


I would appreciate any suggestions.

~~ Ricardo

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-04-15 15:44 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-24 11:10 WIP: IcedTea7 Ricardo Wurmus
2015-03-29 13:20 ` Ludovic Courtès
2015-03-31  8:13   ` Ricardo Wurmus
2015-04-15 15:44     ` Ricardo Wurmus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).