summary refs log tree commit diff
path: root/pkgs/development/compilers
diff options
context:
space:
mode:
authorShea Levy <shea@shealevy.com>2012-08-23 23:07:38 -0400
committerShea Levy <shea@shealevy.com>2012-08-23 23:07:38 -0400
commit6ed6d1c5c0ba55ac5e989878a5618d5032776c45 (patch)
tree0dccbebada3d0d53bdcc27729f1677fa48a014f0 /pkgs/development/compilers
parentdbe524fe3f1ccb0765d273e056a8ec3dd5c40e49 (diff)
downloadnixpkgs-6ed6d1c5c0ba55ac5e989878a5618d5032776c45.tar
nixpkgs-6ed6d1c5c0ba55ac5e989878a5618d5032776c45.tar.gz
nixpkgs-6ed6d1c5c0ba55ac5e989878a5618d5032776c45.tar.bz2
nixpkgs-6ed6d1c5c0ba55ac5e989878a5618d5032776c45.tar.lz
nixpkgs-6ed6d1c5c0ba55ac5e989878a5618d5032776c45.tar.xz
nixpkgs-6ed6d1c5c0ba55ac5e989878a5618d5032776c45.tar.zst
nixpkgs-6ed6d1c5c0ba55ac5e989878a5618d5032776c45.zip
Add expression to create an openjdk bootstrap capable of building the full openjdk
Diffstat (limited to 'pkgs/development/compilers')
-rw-r--r--pkgs/development/compilers/openjdk/make-bootstrap.nix19
1 files changed, 19 insertions, 0 deletions
diff --git a/pkgs/development/compilers/openjdk/make-bootstrap.nix b/pkgs/development/compilers/openjdk/make-bootstrap.nix
new file mode 100644
index 00000000000..539e1bd2350
--- /dev/null
+++ b/pkgs/development/compilers/openjdk/make-bootstrap.nix
@@ -0,0 +1,19 @@
+{ runCommand, openjdk }:
+
+let arch = if openjdk.system == "x86_64-linux" then "amd64" else "i386"; in
+
+runCommand "${openjdk.name}-bootstrap" {} ''
+  mkdir -p $out/bin
+  mkdir -p $out/lib
+  mkdir -p $out/jre/lib/{security,ext,${arch}/{jli,server,headless}}
+  cp ${openjdk}/bin/{idlj,ja{va{,c,p,h},r},rmic} $out/bin
+  cp ${openjdk}/lib/tools.jar $out/lib
+  cp ${openjdk}/jre/lib/{meta-index,{charsets,jce,jsse,rt,resources}.jar,currency.data} $out/jre/lib
+  cp ${openjdk}/jre/lib/security/java.security $out/jre/lib/security
+  cp ${openjdk}/jre/lib/ext/{meta-index,sunjce_provider.jar} $out/jre/lib/ext
+  cp ${openjdk}/jre/lib/${arch}/{jvm.cfg,lib{awt,java,verify,zip,nio,net}.so} $out/jre/lib/${arch}
+  cp ${openjdk}/jre/lib/${arch}/jli/libjli.so $out/jre/lib/${arch}/jli
+  cp ${openjdk}/jre/lib/${arch}/server/libjvm.so $out/jre/lib/${arch}/server
+  cp ${openjdk}/jre/lib/${arch}/headless/libmawt.so $out/jre/lib/${arch}/headless
+  cp -a ${openjdk}/include $out
+''