diff options
author | Andrew Clemons <andrew.clemons@gmail.com> | 2024-01-08 08:24:53 +0700 |
---|---|---|
committer | Willy Sudiarto Raharjo <willysr@slackbuilds.org> | 2024-01-08 11:26:25 +0700 |
commit | 3cd0fdafb27a3efb47468f51fd32e35af4002e18 (patch) | |
tree | 1e357efb35e375adcab6784ada215520c65a7807 /development/zulu-openjdk21 | |
parent | 47b9b5617198b38cc9124b2fe0b1a920b9183eb3 (diff) |
development/zulu-openjdk21: Added (Java Development Kit).
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'development/zulu-openjdk21')
-rw-r--r-- | development/zulu-openjdk21/README | 10 | ||||
-rw-r--r-- | development/zulu-openjdk21/slack-desc | 19 | ||||
-rw-r--r-- | development/zulu-openjdk21/zulu-openjdk21.SlackBuild | 99 | ||||
-rw-r--r-- | development/zulu-openjdk21/zulu-openjdk21.csh | 10 | ||||
-rw-r--r-- | development/zulu-openjdk21/zulu-openjdk21.info | 10 | ||||
-rw-r--r-- | development/zulu-openjdk21/zulu-openjdk21.sh | 10 |
6 files changed, 158 insertions, 0 deletions
diff --git a/development/zulu-openjdk21/README b/development/zulu-openjdk21/README new file mode 100644 index 000000000000..f325e0d478df --- /dev/null +++ b/development/zulu-openjdk21/README @@ -0,0 +1,10 @@ +This is a SlackBuild to repackage the Azul's build of the OpenJDK 21 +LTS (Long Term Support) that is compliant with the latest Java SE +standard. + +Before installing this package please consider any other jdk's/jre's +that you have already installed as they may cause conflicts with the +PATH, JAVA_HOME and MANPATH variables. + +After installing the package you will need to logout/reboot your machine +as it will add files to the /etc/profile.d folder. diff --git a/development/zulu-openjdk21/slack-desc b/development/zulu-openjdk21/slack-desc new file mode 100644 index 000000000000..244b67dd9ca6 --- /dev/null +++ b/development/zulu-openjdk21/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. +# Line up the first '|' above the ':' following the base package name, and +# the '|' on the right side marks the last column you can put a character in. +# You must make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':' except on otherwise blank lines. + + |-----handy-ruler------------------------------------------------------| +zulu-openjdk21: zulu-openjdk21 (Open Implementation of JDK) +zulu-openjdk21: +zulu-openjdk21: Prebuild binary of ZuluOpenJDK21 LTS (Long Term Support) from Azul +zulu-openjdk21: that is compliant with the latest Java SE standard. +zulu-openjdk21: +zulu-openjdk21: Zulu has been verified by passing all tests in the latest Java +zulu-openjdk21: SE version of the OpenJDK Community TCK (Technology Compatibility +zulu-openjdk21: Kit). +zulu-openjdk21: +zulu-openjdk21: https://www.azul.com/downloads/ +zulu-openjdk21: diff --git a/development/zulu-openjdk21/zulu-openjdk21.SlackBuild b/development/zulu-openjdk21/zulu-openjdk21.SlackBuild new file mode 100644 index 000000000000..13154e863175 --- /dev/null +++ b/development/zulu-openjdk21/zulu-openjdk21.SlackBuild @@ -0,0 +1,99 @@ +#!/bin/bash + +# Slackware build script for zulu-openjdk21 + +# Copyright (c) 2024, Andrew Clemons, Tokyo Japan +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +cd $(dirname $0) ; CWD=$(pwd) + +PRGNAM=zulu-openjdk21 +VERSION=${VERSION:-21.0.1} +ZULUVERSION=${ZULUVERSION:-21.30.15} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} +PKGTYPE=${PKGTYPE:-tgz} + +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i686 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE" + exit 0 +fi + +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "x86_64" ]; then + ZULU_ARCH=x64 + LIBDIRSUFFIX="64" +elif [ "$ARCH" = "aarch64" ]; then + ZULU_ARCH=aarch64 + LIBDIRSUFFIX="64" +else + echo "Architecture $ARCH is not supported." + exit 1 +fi + +SRCNAM=zulu$ZULUVERSION-ca-jdk$VERSION-linux_$ZULU_ARCH + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +mkdir -p $PKG/usr/lib$LIBDIRSUFFIX +cd $PKG/usr/lib$LIBDIRSUFFIX +tar xvf $CWD/$SRCNAM.tar.gz +mv $SRCNAM $PRGNAM +chown -R root:root . +find -L . \ + \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ + -o -perm 511 \) -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ + -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; + +if [ "$ARCH" = "aarch64" ] ; then + find $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM/bin -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs patchelf --set-interpreter /lib64/ld-linux-aarch64.so.1 2> /dev/null || true +fi + +find $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM -type f -name "*.so" -exec chmod +x {} \; 2> /dev/null || true + +mkdir -p $PKG/etc/profile.d +install -D -m0755 $CWD/$PRGNAM.csh $PKG/etc/profile.d/$PRGNAM.csh +install -D -m0755 $CWD/$PRGNAM.sh $PKG/etc/profile.d/$PRGNAM.sh + +sed -i s/%LIBDIRSUFFIX%/$LIBDIRSUFFIX/g $PKG/etc/profile.d/$PRGNAM.* + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE diff --git a/development/zulu-openjdk21/zulu-openjdk21.csh b/development/zulu-openjdk21/zulu-openjdk21.csh new file mode 100644 index 000000000000..f1632d366ada --- /dev/null +++ b/development/zulu-openjdk21/zulu-openjdk21.csh @@ -0,0 +1,10 @@ +#!/bin/csh +setenv JAVA_HOME /usr/lib%LIBDIRSUFFIX%/zulu-openjdk21 +setenv MANPATH ${MANPATH}:${JAVA_HOME}/man +setenv PATH ${PATH}:${JAVA_HOME}/bin + +if ($?LD_LIBRARY_PATH == 1) then + setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${JAVA_HOME}/lib/server +else + setenv LD_LIBRARY_PATH ${JAVA_HOME}/lib/server +endif diff --git a/development/zulu-openjdk21/zulu-openjdk21.info b/development/zulu-openjdk21/zulu-openjdk21.info new file mode 100644 index 000000000000..b7cdaaf304fd --- /dev/null +++ b/development/zulu-openjdk21/zulu-openjdk21.info @@ -0,0 +1,10 @@ +PRGNAM="zulu-openjdk21" +VERSION="21.0.1" +HOMEPAGE="https://www.azul.com/downloads/" +DOWNLOAD="UNSUPPORTED" +MD5SUM="" +DOWNLOAD_x86_64="https://cdn.azul.com/zulu/bin/zulu21.30.15-ca-jdk21.0.1-linux_x64.tar.gz" +MD5SUM_x86_64="465790ba702731b363a39d4dcd8a59c0" +REQUIRES="" +MAINTAINER="Andrew Clemons" +EMAIL="andrew.clemons@gmail.com" diff --git a/development/zulu-openjdk21/zulu-openjdk21.sh b/development/zulu-openjdk21/zulu-openjdk21.sh new file mode 100644 index 000000000000..074fcdf08345 --- /dev/null +++ b/development/zulu-openjdk21/zulu-openjdk21.sh @@ -0,0 +1,10 @@ +#!/bin/sh +export JAVA_HOME=/usr/lib%LIBDIRSUFFIX%/zulu-openjdk21 +export MANPATH="${MANPATH}:${JAVA_HOME}/man" +export PATH="${PATH}:${JAVA_HOME}/bin" + +if [ -z "$LD_LIBRARY_PATH" ]; then + export LD_LIBRARY_PATH="${JAVA_HOME}/lib/server" +else + export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${JAVA_HOME}/lib/server" +fi |