From 1df2d5e5570a735a4591523e23a6907539004d3d Mon Sep 17 00:00:00 2001 From: Tim Biermann Date: Sun, 7 Feb 2021 01:31:08 +0100 Subject: [PATCH] openjdk8-boot: initial commit --- openjdk8-boot/.footprint | 170 +++++++++++++++++++++++++++++++++++++ openjdk8-boot/Pkgfile | 175 +++++++++++++++++++++++++++++++++++++++ openjdk8-boot/README | 3 + 3 files changed, 348 insertions(+) create mode 100644 openjdk8-boot/.footprint create mode 100644 openjdk8-boot/Pkgfile create mode 100644 openjdk8-boot/README diff --git a/openjdk8-boot/.footprint b/openjdk8-boot/.footprint new file mode 100644 index 0000000..980deb2 --- /dev/null +++ b/openjdk8-boot/.footprint @@ -0,0 +1,170 @@ +drwxr-xr-x root/root openjdk8-boot/ +drwxr-xr-x root/root openjdk8-boot/bin/ +-rwxr-xr-x root/root openjdk8-boot/bin/appletviewer +-rwxr-xr-x root/root openjdk8-boot/bin/clhsdb +-rwxr-xr-x root/root openjdk8-boot/bin/extcheck +-rwxr-xr-x root/root openjdk8-boot/bin/hsdb +-rwxr-xr-x root/root openjdk8-boot/bin/idlj +-rwxr-xr-x root/root openjdk8-boot/bin/jar +-rwxr-xr-x root/root openjdk8-boot/bin/jarsigner +-rwxr-xr-x root/root openjdk8-boot/bin/java +-rwxr-xr-x root/root openjdk8-boot/bin/java-rmi.cgi +-rwxr-xr-x root/root openjdk8-boot/bin/javac +-rwxr-xr-x root/root openjdk8-boot/bin/javadoc +-rwxr-xr-x root/root openjdk8-boot/bin/javah +-rwxr-xr-x root/root openjdk8-boot/bin/javap +-rwxr-xr-x root/root openjdk8-boot/bin/jcmd +-rwxr-xr-x root/root openjdk8-boot/bin/jconsole +-rwxr-xr-x root/root openjdk8-boot/bin/jdb +-rwxr-xr-x root/root openjdk8-boot/bin/jdeps +-rwxr-xr-x root/root openjdk8-boot/bin/jhat +-rwxr-xr-x root/root openjdk8-boot/bin/jinfo +-rwxr-xr-x root/root openjdk8-boot/bin/jjs +-rwxr-xr-x root/root openjdk8-boot/bin/jmap +-rwxr-xr-x root/root openjdk8-boot/bin/jps +-rwxr-xr-x root/root openjdk8-boot/bin/jrunscript +-rwxr-xr-x root/root openjdk8-boot/bin/jsadebugd +-rwxr-xr-x root/root openjdk8-boot/bin/jstack +-rwxr-xr-x root/root openjdk8-boot/bin/jstat +-rwxr-xr-x root/root openjdk8-boot/bin/jstatd +-rwxr-xr-x root/root openjdk8-boot/bin/keytool +-rwxr-xr-x root/root openjdk8-boot/bin/native2ascii +-rwxr-xr-x root/root openjdk8-boot/bin/orbd +-rwxr-xr-x root/root openjdk8-boot/bin/pack200 +-rwxr-xr-x root/root openjdk8-boot/bin/policytool +-rwxr-xr-x root/root openjdk8-boot/bin/rmic +-rwxr-xr-x root/root openjdk8-boot/bin/rmid +-rwxr-xr-x root/root openjdk8-boot/bin/rmiregistry +-rwxr-xr-x root/root openjdk8-boot/bin/schemagen +-rwxr-xr-x root/root openjdk8-boot/bin/serialver +-rwxr-xr-x root/root openjdk8-boot/bin/servertool +-rwxr-xr-x root/root openjdk8-boot/bin/tnameserv +-rwxr-xr-x root/root openjdk8-boot/bin/unpack200 +-rwxr-xr-x root/root openjdk8-boot/bin/wsgen +-rwxr-xr-x root/root openjdk8-boot/bin/wsimport +-rwxr-xr-x root/root openjdk8-boot/bin/xjc +drwxr-xr-x root/root openjdk8-boot/include/ +-rw-r--r-- root/root openjdk8-boot/include/classfile_constants.h +-rw-r--r-- root/root openjdk8-boot/include/jawt.h +-rw-r--r-- root/root openjdk8-boot/include/jdwpTransport.h +-rw-r--r-- root/root openjdk8-boot/include/jni.h +-rw-r--r-- root/root openjdk8-boot/include/jvmti.h +-rw-r--r-- root/root openjdk8-boot/include/jvmticmlr.h +drwxr-xr-x root/root openjdk8-boot/include/linux/ +-rw-r--r-- root/root openjdk8-boot/include/linux/jawt_md.h +-rw-r--r-- root/root openjdk8-boot/include/linux/jni_md.h +drwxr-xr-x root/root openjdk8-boot/jre/ +drwxr-xr-x root/root openjdk8-boot/jre/bin/ +lrwxrwxrwx root/root openjdk8-boot/jre/bin/java -> ../../bin/java +lrwxrwxrwx root/root openjdk8-boot/jre/bin/jjs -> ../../bin/jjs +lrwxrwxrwx root/root openjdk8-boot/jre/bin/keytool -> ../../bin/keytool +lrwxrwxrwx root/root openjdk8-boot/jre/bin/orbd -> ../../bin/orbd +lrwxrwxrwx root/root openjdk8-boot/jre/bin/pack200 -> ../../bin/pack200 +lrwxrwxrwx root/root openjdk8-boot/jre/bin/policytool -> ../../bin/policytool +lrwxrwxrwx root/root openjdk8-boot/jre/bin/rmid -> ../../bin/rmid +lrwxrwxrwx root/root openjdk8-boot/jre/bin/rmiregistry -> ../../bin/rmiregistry +lrwxrwxrwx root/root openjdk8-boot/jre/bin/servertool -> ../../bin/servertool +lrwxrwxrwx root/root openjdk8-boot/jre/bin/tnameserv -> ../../bin/tnameserv +lrwxrwxrwx root/root openjdk8-boot/jre/bin/unpack200 -> ../../bin/unpack200 +drwxr-xr-x root/root openjdk8-boot/jre/lib/ +drwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/ +drwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/jli/ +lrwxrwxrwx root/root openjdk8-boot/jre/lib/amd64/jli/libjli.so -> ../../../../lib/amd64/jli/libjli.so +-rw-r--r-- root/root openjdk8-boot/jre/lib/amd64/jvm.cfg +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libattach.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libawt.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libawt_headless.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libawt_xawt.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libdt_socket.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libfontmanager.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libhprof.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libinstrument.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libj2gss.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libj2krb5.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libj2pcsc.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libj2pkcs11.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libj2sctp.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libjaas_unix.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libjava.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libjava_crw_demo.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libjavajpeg.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libjavalcms.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libjawt.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libjdwp.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libjsdt.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libjsig.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libjsound.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libjsoundalsa.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libmanagement.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libmlib_image.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libnet.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libnio.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libnpt.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libsaproc.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libsplashscreen.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libsunec.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libunpack.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libverify.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/libzip.so +drwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/server/ +-r--r--r-- root/root openjdk8-boot/jre/lib/amd64/server/classes.jsa +lrwxrwxrwx root/root openjdk8-boot/jre/lib/amd64/server/libjsig.so -> ../libjsig.so +-rwxr-xr-x root/root openjdk8-boot/jre/lib/amd64/server/libjvm.so +drwxr-xr-x root/root openjdk8-boot/jre/lib/applet/ +-rw-r--r-- root/root openjdk8-boot/jre/lib/charsets.jar +-rw-r--r-- root/root openjdk8-boot/jre/lib/classlist +drwxr-xr-x root/root openjdk8-boot/jre/lib/cmm/ +-r--r--r-- root/root openjdk8-boot/jre/lib/cmm/CIEXYZ.pf +-r--r--r-- root/root openjdk8-boot/jre/lib/cmm/GRAY.pf +-r--r--r-- root/root openjdk8-boot/jre/lib/cmm/LINEAR_RGB.pf +-r--r--r-- root/root openjdk8-boot/jre/lib/cmm/PYCC.pf +-r--r--r-- root/root openjdk8-boot/jre/lib/cmm/sRGB.pf +-r--r--r-- root/root openjdk8-boot/jre/lib/currency.data +drwxr-xr-x root/root openjdk8-boot/jre/lib/ext/ +-rw-r--r-- root/root openjdk8-boot/jre/lib/ext/cldrdata.jar +-rw-r--r-- root/root openjdk8-boot/jre/lib/ext/dnsns.jar +-rw-r--r-- root/root openjdk8-boot/jre/lib/ext/jaccess.jar +-rw-r--r-- root/root openjdk8-boot/jre/lib/ext/localedata.jar +-rw-r--r-- root/root openjdk8-boot/jre/lib/ext/meta-index +-rw-r--r-- root/root openjdk8-boot/jre/lib/ext/nashorn.jar +-rw-r--r-- root/root openjdk8-boot/jre/lib/ext/sunec.jar +-rw-r--r-- root/root openjdk8-boot/jre/lib/ext/sunjce_provider.jar +-rw-r--r-- root/root openjdk8-boot/jre/lib/ext/sunpkcs11.jar +-rw-r--r-- root/root openjdk8-boot/jre/lib/ext/zipfs.jar +-rw-r--r-- root/root openjdk8-boot/jre/lib/jce.jar +-rwxr-xr-x root/root openjdk8-boot/jre/lib/jexec +-rw-r--r-- root/root openjdk8-boot/jre/lib/jsse.jar +-rw-r--r-- root/root openjdk8-boot/jre/lib/management-agent.jar +drwxr-xr-x root/root openjdk8-boot/jre/lib/management/ +-rw-r--r-- root/root openjdk8-boot/jre/lib/management/jmxremote.access +-rw-r--r-- root/root openjdk8-boot/jre/lib/meta-index +-rw-r--r-- root/root openjdk8-boot/jre/lib/resources.jar +-rw-r--r-- root/root openjdk8-boot/jre/lib/rt.jar +drwxr-xr-x root/root openjdk8-boot/jre/lib/security/ +-rw-r--r-- root/root openjdk8-boot/jre/lib/security/blacklisted.certs +-r--r--r-- root/root openjdk8-boot/jre/lib/security/cacerts +-rw-r--r-- root/root openjdk8-boot/jre/lib/security/java.policy +-rw-r--r-- root/root openjdk8-boot/jre/lib/security/java.security +-rw-r--r-- root/root openjdk8-boot/jre/lib/security/nss.cfg +drwxr-xr-x root/root openjdk8-boot/jre/lib/security/policy/ +drwxr-xr-x root/root openjdk8-boot/jre/lib/security/policy/limited/ +-rw-r--r-- root/root openjdk8-boot/jre/lib/security/policy/limited/US_export_policy.jar +-rw-r--r-- root/root openjdk8-boot/jre/lib/security/policy/limited/local_policy.jar +drwxr-xr-x root/root openjdk8-boot/jre/lib/security/policy/unlimited/ +-rw-r--r-- root/root openjdk8-boot/jre/lib/security/policy/unlimited/US_export_policy.jar +-rw-r--r-- root/root openjdk8-boot/jre/lib/security/policy/unlimited/local_policy.jar +-rw-r--r-- root/root openjdk8-boot/jre/lib/tzdb.dat +drwxr-xr-x root/root openjdk8-boot/lib/ +drwxr-xr-x root/root openjdk8-boot/lib/amd64/ +drwxr-xr-x root/root openjdk8-boot/lib/amd64/jli/ +-rwxr-xr-x root/root openjdk8-boot/lib/amd64/jli/libjli.so +-rwxr-xr-x root/root openjdk8-boot/lib/amd64/libjawt.so +-rw-r--r-- root/root openjdk8-boot/lib/ct.sym +-rw-r--r-- root/root openjdk8-boot/lib/dt.jar +-rw-r--r-- root/root openjdk8-boot/lib/ir.idl +-rw-r--r-- root/root openjdk8-boot/lib/jconsole.jar +-rwxr-xr-x root/root openjdk8-boot/lib/jexec +-rw-r--r-- root/root openjdk8-boot/lib/orb.idl +-rw-r--r-- root/root openjdk8-boot/lib/sa-jdi.jar +-rw-r--r-- root/root openjdk8-boot/lib/tools.jar +-rw-r--r-- root/root openjdk8-boot/release diff --git a/openjdk8-boot/Pkgfile b/openjdk8-boot/Pkgfile new file mode 100644 index 0000000..4fa6275 --- /dev/null +++ b/openjdk8-boot/Pkgfile @@ -0,0 +1,175 @@ +# Description: OpenJDK 8 built using IcedTea build harness (minimal pkg for bootstrapping) +# URL: http://icedtea.classpath.org http://openjdk.java.net +# Maintainer: John Vogel, jvogel4 at stny dot rr dot com +# Depends on: alsa-lib cups fontconfig freetype giflib gtk krb5 lcms2 libjpeg-turbo libpng libxslt nss p11-kit unzip xorg-libxt xorg-libxtst xorg-libxinerama zip + +name=openjdk8-boot +version=8u275-b01 +icedtea_version=3.17.1 +boot_version=20200504 +release=1 +source=(http://icedtea.wildebeest.org/download/source/icedtea-$icedtea_version.tar.xz + https://nullvoid.de/crux/distfiles/$name/corba-$version.tar.xz + https://nullvoid.de/crux/distfiles/$name/hotspot-$version.tar.xz + https://nullvoid.de/crux/distfiles/$name/jaxp-$version.tar.xz + https://nullvoid.de/crux/distfiles/$name/jaxws-$version.tar.xz + https://nullvoid.de/crux/distfiles/$name/jdk-$version.tar.xz + https://nullvoid.de/crux/distfiles/$name/langtools-$version.tar.xz + https://nullvoid.de/crux/distfiles/$name/nashorn-$version.tar.xz + https://nullvoid.de/crux/distfiles/$name/openjdk-$version.tar.xz) + #https://nullvoid.de/crux/distfiles/$name/$name-boot-$boot_version-bin.tar.xz) + +unpack_source() { + for file in ${source[@]}; do + case ${file##*/} in + icedtea-$icedtea_version.tar.xz|\ + openjdk7-boot-$boot_version-bin.tar.xz) + bsdtar -p -o -C $SRC -xf $(get_filename $file) ;; + *) + cp $(get_filename $file) $SRC ;; + esac + done +} + +build() { + # Most of these flags were snarfed directly from Alpine Linux APKBUILD for openjdk7, added -fabi-version. + # Fixes build failures due to suspected gcc8 changes for default std and abi. + export EXTRA_CPP_FLAGS="$CXXFLAGS -fabi-version=10 -std=gnu++98 -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-strict-overflow" + export EXTRA_CFLAGS="$CFLAGS -fabi-version=10 -std=gnu++98 -Wno-error -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-strict-overflow" + + OLD_PATH=$PATH + #export JAVA_HOME=$SRC/openjdk7-boot + #export PATH=$JAVA_HOME/bin:$OLD_PATH + + if [ -f /etc/pki/tls/java/cacerts ]; then + JAVA_CACERTS=/etc/pki/tls/java/cacerts + else + /usr/sbin/make-ca -g -D $SRC/certs || exit 1 + JAVA_CACERTS=$SRC/certs/etc/pki/tls/java/cacerts + fi + + mkdir $SRC/build-boot + cd $SRC/build-boot + + LC_ALL=C \ + CONFIG_SHELL=/bin/bash \ + ../icedtea-$icedtea_version/configure \ + --prefix=$SRC/build-boot/openjdk.build/images/j2sdk-image \ + --disable-bootstrap \ + --disable-docs \ + --disable-downloading \ + --disable-precompiled-headers \ + --disable-tests \ + --disable-hotspot-tests \ + --disable-langtools-tests \ + --disable-jdk-tests \ + --disable-systemtap-tests \ + --disable-system-pcsc \ + --disable-system-sctp \ + --enable-system-cups \ + --enable-system-fontconfig \ + --enable-system-gio \ + --enable-system-gtk \ + --enable-system-jpeg \ + --enable-system-kerberos \ + --enable-system-lcms \ + --enable-system-png \ + --enable-system-zlib \ + --enable-non-nss-curves \ + --enable-nss \ + --with-openjdk-src-zip=$SRC/openjdk-$version.tar.xz \ + --with-hotspot-src-zip=$SRC/hotspot-$version.tar.xz \ + --with-corba-src-zip=$SRC/corba-$version.tar.xz \ + --with-jaxp-src-zip=$SRC/jaxp-$version.tar.xz \ + --with-jaxws-src-zip=$SRC/jaxws-$version.tar.xz \ + --with-jdk-src-zip=$SRC/jdk-$version.tar.xz \ + --with-langtools-src-zip=$SRC/langtools-$version.tar.xz \ + --with-nashorn-src-zip=$SRC/nashorn-$version.tar.xz \ + --with-pkgversion=CRUX \ + --with-jdk-home=$JAVA_HOME \ + --with-cacerts-file=$JAVA_CACERTS \ + --with-tzdata-dir=/usr/share/zoneifno + + LC_ALL=C \ + make + + # Rebuild with our new openjdk8 + unset JAVA_HOME + export JAVA_HOME=$SRC/build-boot/openjdk.build/images/j2sdk-image + export PATH=$JAVA_HOME/bin:/bin:/sbin:/usr/bin:/usr/sbin + + mkdir $SRC/build + cd $SRC/build + + LC_ALL=C \ + CONFIG_SHELL=/bin/bash \ + ../icedtea-$icedtea_version/configure \ + --prefix=/$name \ + --disable-bootstrap \ + --disable-docs \ + --disable-downloading \ + --disable-precompiled-headers \ + --disable-tests \ + --disable-hotspot-tests \ + --disable-langtools-tests \ + --disable-jdk-tests \ + --disable-systemtap-tests \ + --disable-system-pcsc \ + --disable-system-sctp \ + --enable-system-cups \ + --enable-system-fontconfig \ + --enable-system-gio \ + --enable-system-gtk \ + --enable-system-jpeg \ + --enable-system-kerberos \ + --enable-system-lcms \ + --enable-system-png \ + --enable-system-zlib \ + --enable-non-nss-curves \ + --enable-nss \ + --with-openjdk-src-zip=$SRC/openjdk-$version.tar.xz \ + --with-hotspot-src-zip=$SRC/hotspot-$version.tar.xz \ + --with-corba-src-zip=$SRC/corba-$version.tar.xz \ + --with-jaxp-src-zip=$SRC/jaxp-$version.tar.xz \ + --with-jaxws-src-zip=$SRC/jaxws-$version.tar.xz \ + --with-jdk-src-zip=$SRC/jdk-$version.tar.xz \ + --with-langtools-src-zip=$SRC/langtools-$version.tar.xz \ + --with-nashorn-src-zip=$SRC/nashorn-$version.tar.xz \ + --with-pkgversion=CRUX \ + --with-jdk-home=$JAVA_HOME \ + --with-cacerts-file=$JAVA_CACERTS \ + --with-tzdata-dir=/usr/share/zoneifno + + LC_ALL=C \ + make + + # Copy the sdk image first before pruning it, saving original for later inspection/comparison. + mkdir -p $PKG/$name + cp -r openjdk.build/images/j2sdk-image/* $PKG/$name + + # Remove unneeded files + rm -f $PKG/$name/src.zip + rm -rf $PKG/$name/{demo,man,sample,jre/lib/images} + rm -f $PKG/$name/{,jre/}THIRD_PARTY_README + find $PKG/$name \( \ + -name '*.ja' -o \ + -name '*.txt' -o \ + -name '*.properties' -o \ + -name '*.template' -o \ + -name 'fontconfig.*' -o \ + -name 'ASSEMBLY_EXCEPTION' -o \ + -name 'LICENSE' -o \ + -name 'THIRD_PARTY_README' \) \ + -delete + + # Deduplicate + rm $PKG/$name/jre/lib/amd64/jli/libjli.so + ln -sr $PKG/$name/lib/amd64/jli/libjli.so \ + $PKG/$name/jre/lib/amd64/jli/libjli.so + for f in $PKG/$name/jre/bin/* ; do + if [ -f $PKG/$name/bin/${f##*/} ]; then + rm $f + ln -sr $PKG/$name/bin/${f##*/} $f + fi + done +} diff --git a/openjdk8-boot/README b/openjdk8-boot/README new file mode 100644 index 0000000..aaef21f --- /dev/null +++ b/openjdk8-boot/README @@ -0,0 +1,3 @@ +The sole purpose of the openjdk8-boot port is for creating a bootstrapper +package to build other openjdk ports, primarily openjdk8. The resultant +package is stripped down considerably and not useful for other applications.