unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] icedtea6: split outputs
@ 2015-03-04 10:17 Ricardo Wurmus
  2015-03-04 12:18 ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Ricardo Wurmus @ 2015-03-04 10:17 UTC (permalink / raw)
  To: Guix-devel

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

Hi Guix,

when I originally packaged up OpenJDK with IcedTea it did not occur to
me that the build output in openjdk.build contained multiple
distributions of the JDK and JRE in addition to various binaries and
libraries.

What really matters are these distribution directories named
"j2re-image", "j2sdk-image", and "j2sdk-server-image".  They contain the
JRE, the JDK with examples, and the JDK without examples, respectively.
The binaries and libraries contained in these directories are duplicates
of those in the various directories of "openjdk.build".  The
"j2sdk-server-image" is virtually identical to the "j2sdk-image", but it
lacks examples, so I chose to use the latter as the JDK.

The first attached patch splits the outputs of the icedtea6 package into
"doc", "jdk", and "out", containing the documentation, the contents of
the "j2sdk-image" directory, and the contents of the "j2re-image"
directory, respectively.

The other two patches update the packages for Ant and R, such that they
depend on the "jdk" output.

~~ Ricardo


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-icedtea6-split-outputs.patch --]
[-- Type: text/x-patch, Size: 1923 bytes --]

From 47b47b539d4d467b70861a42e0d9abba20f1362a Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Date: Wed, 4 Mar 2015 10:25:54 +0100
Subject: [PATCH 1/3] gnu: icedtea6: split outputs.

* gnu/packages/java.scm (icedtea6)[outputs]: Use separate outputs for
  documentation ("doc"), JDK ("jdk"), and JRE ("out").
---
 gnu/packages/java.scm | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index c486742..962d710 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -122,6 +122,9 @@ build process and its dependencies, whereas Make uses Makefile format.")
                   (("DISTRIBUTION_ID=\"\\$\\(DIST_ID\\)\"")
                    "DISTRIBUTION_ID=\"\\\"guix\\\"\"")))))
     (build-system gnu-build-system)
+    (outputs '("out"   ; Java Runtime Environment
+               "jdk"   ; Java Development Kit
+               "doc")) ; all documentation
     (arguments
      `(;; There are many failing tests and many are known to fail upstream.
        ;;
@@ -412,8 +415,13 @@ build process and its dependencies, whereas Make uses Makefile format.")
                           (run-test "check-jdk")))))
              (alist-replace
               'install
-              (lambda _
-                (copy-recursively "openjdk.build" %output))
+              (lambda* (#:key outputs #:allow-other-keys)
+                (let ((doc (string-append (assoc-ref outputs "doc") "/share/doc/" ,name))
+                      (jre (assoc-ref outputs "out"))
+                      (jdk (assoc-ref outputs "jdk")))
+                  (copy-recursively "openjdk.build/docs" doc)
+                  (copy-recursively "openjdk.build/j2re-image" jre)
+                  (copy-recursively "openjdk.build/j2sdk-image" jdk)))
               %standard-phases))))))))
     (native-inputs
      `(("ant-bootstrap"
-- 
2.1.0


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: 0002-gnu-ant-use-jdk-output-of-icedtea6.patch --]
[-- Type: text/x-patch, Size: 838 bytes --]

From 7e9189c0dd36704e9dddb71c31dac97fad23df73 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Date: Wed, 4 Mar 2015 11:08:16 +0100
Subject: [PATCH 2/3] gnu: ant: use "jdk" output of icedtea6.

* gnu/packages/java.scm (ant)[native-inputs]: Reference "jdk" output of
  icedtea6 package.
---
 gnu/packages/java.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 962d710..0d33293 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -90,7 +90,7 @@
           'configure
           (alist-delete 'install %standard-phases))))))
     (native-inputs
-     `(("icedtea6" ,icedtea6)))
+     `(("icedtea6" ,icedtea6 "jdk")))
     (home-page "http://ant.apache.org")
     (synopsis "Build tool for Java")
     (description
-- 
2.1.0


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #4: 0003-gnu-r-use-jdk-output-of-icedtea6.patch --]
[-- Type: text/x-patch, Size: 831 bytes --]

From 258e905e17e17f54a930855e6d4856d98a27a52f Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Date: Wed, 4 Mar 2015 11:10:11 +0100
Subject: [PATCH 3/3] gnu: r: use "jdk" output of icedtea6.

* gnu/packages/statistics.scm (r)[inputs]: Reference "jdk" output of icedtea6
  package.
---
 gnu/packages/statistics.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index acf7b78..ad7bc58 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -87,7 +87,7 @@
        ("cairo" ,cairo)
        ("gfortran" ,gfortran-4.8)
        ("icu4c" ,icu4c)
-       ("icedtea6" ,icedtea6)
+       ("icedtea6" ,icedtea6 "jdk")
        ("lapack" ,lapack)
        ("libjpeg" ,libjpeg)
        ("libpng" ,libpng)
-- 
2.1.0


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

* Re: [PATCH] icedtea6: split outputs
  2015-03-04 10:17 [PATCH] icedtea6: split outputs Ricardo Wurmus
@ 2015-03-04 12:18 ` Ludovic Courtès
  2015-03-04 15:06   ` Ricardo Wurmus
  0 siblings, 1 reply; 4+ messages in thread
From: Ludovic Courtès @ 2015-03-04 12:18 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: Guix-devel

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

> The first attached patch splits the outputs of the icedtea6 package into
> "doc", "jdk", and "out", containing the documentation, the contents of
> the "j2sdk-image" directory, and the contents of the "j2re-image"
> directory, respectively.
>
> The other two patches update the packages for Ant and R, such that they
> depend on the "jdk" output.

Merge these into one patch, since doing it separately would mean that in
the interim R and Ant would be left broken.

> From 47b47b539d4d467b70861a42e0d9abba20f1362a Mon Sep 17 00:00:00 2001
> From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
> Date: Wed, 4 Mar 2015 10:25:54 +0100
> Subject: [PATCH 1/3] gnu: icedtea6: split outputs.
>
> * gnu/packages/java.scm (icedtea6)[outputs]: Use separate outputs for
>   documentation ("doc"), JDK ("jdk"), and JRE ("out").

[...]

> +    (outputs '("out"   ; Java Runtime Environment
> +               "jdk"   ; Java Development Kit
> +               "doc")) ; all documentation

Could you add the size of each output in parentheses, to give the reader
an idea?

> From 7e9189c0dd36704e9dddb71c31dac97fad23df73 Mon Sep 17 00:00:00 2001
> From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
> Date: Wed, 4 Mar 2015 11:08:16 +0100
> Subject: [PATCH 2/3] gnu: ant: use "jdk" output of icedtea6.
>
> * gnu/packages/java.scm (ant)[native-inputs]: Reference "jdk" output of
>   icedtea6 package.

OK for both merged as one!

Thanks,
Ludo’.

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

* Re: [PATCH] icedtea6: split outputs
  2015-03-04 12:18 ` Ludovic Courtès
@ 2015-03-04 15:06   ` Ricardo Wurmus
  2015-03-04 20:57     ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Ricardo Wurmus @ 2015-03-04 15:06 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: Guix-devel


Ludovic Courtès writes:

> Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de> skribis:
>
>> The other two patches update the packages for Ant and R, such that they
>> depend on the "jdk" output.
>
> Merge these into one patch, since doing it separately would mean that in
> the interim R and Ant would be left broken.

I merged the three commits and pushed this.

>> From 47b47b539d4d467b70861a42e0d9abba20f1362a Mon Sep 17 00:00:00 2001
>> From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
>> Date: Wed, 4 Mar 2015 10:25:54 +0100
>> Subject: [PATCH 1/3] gnu: icedtea6: split outputs.
>>
>> * gnu/packages/java.scm (icedtea6)[outputs]: Use separate outputs for
>>   documentation ("doc"), JDK ("jdk"), and JRE ("out").
>
> [...]
>
>> +    (outputs '("out"   ; Java Runtime Environment
>> +               "jdk"   ; Java Development Kit
>> +               "doc")) ; all documentation
>
> Could you add the size of each output in parentheses, to give the reader
> an idea?

Oh, I forgot to do this before pushing :-/
I'll update the comments in a later commit.  My apologies.

~~ Ricardo

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

* Re: [PATCH] icedtea6: split outputs
  2015-03-04 15:06   ` Ricardo Wurmus
@ 2015-03-04 20:57     ` Ludovic Courtès
  0 siblings, 0 replies; 4+ messages in thread
From: Ludovic Courtès @ 2015-03-04 20:57 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: Guix-devel

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

> Ludovic Courtès writes:
>
>> Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de> skribis:
>>
>>> The other two patches update the packages for Ant and R, such that they
>>> depend on the "jdk" output.
>>
>> Merge these into one patch, since doing it separately would mean that in
>> the interim R and Ant would be left broken.
>
> I merged the three commits and pushed this.

Thank you!

>> Could you add the size of each output in parentheses, to give the reader
>> an idea?
>
> Oh, I forgot to do this before pushing :-/
> I'll update the comments in a later commit.  My apologies.

No big deal.

Ludo’.

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

end of thread, other threads:[~2015-03-04 20:57 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-04 10:17 [PATCH] icedtea6: split outputs Ricardo Wurmus
2015-03-04 12:18 ` Ludovic Courtès
2015-03-04 15:06   ` Ricardo Wurmus
2015-03-04 20:57     ` Ludovic Courtès

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).