mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-30 03:58:51 +02:00
214 lines
6.3 KiB
Plaintext
214 lines
6.3 KiB
Plaintext
SUMMARY="Open-source implementation of the Java Platform, SE"
|
|
DESCRIPTION="
|
|
Open-source implementation of the Java Platform, Standard Edition.
|
|
"
|
|
HOMEPAGE="http://openjdk.java.net/"
|
|
COPYRIGHT="2005, 2006, Oracle and/or its affiliates"
|
|
LICENSE="GNU GPL v2"
|
|
|
|
#SRC_URI="http://dl.dropbox.com/u/61946213/j2sdk-august.tar.xz"
|
|
#CHECKSUM_MD5="65b348918f92eb357ed7b455dadcded8"
|
|
# The August j2sdk image is apparently incomplete.
|
|
SRC_URI="http://ports-space.haiku-files.org/source/openjdk/j2sdk-april-2013.tar"
|
|
CHECKSUM_MD5="e38b939c34b04427336245397fa43c9c"
|
|
SOURCE_DIR="j2sdk-image"
|
|
|
|
SRC_URI_2="http://archive.apache.org/dist/ant/source/apache-ant-1.8.4-src.tar.gz"
|
|
CHECKSUM_MD5_2="4e05e1cc4ea4b56d85bbbc4fe29d1c29"
|
|
SOURCE_DIR_2="apache-ant-1.8.4"
|
|
|
|
SRC_URI_3="hg+http://hg.openjdk.java.net/haiku/haiku#ee67ee3bd597"
|
|
|
|
SRC_URI_4="hg+http://hg.openjdk.java.net/haiku/haiku/corba#84b78407a004"
|
|
PATCHES_4="openjdk-1.7_2013_11_08-source4.patchset"
|
|
|
|
SRC_URI_5="hg+http://hg.openjdk.java.net/haiku/haiku/hotspot#03a6a75222a8"
|
|
PATCHES_5="openjdk-1.7_2013_11_08-source5.patchset"
|
|
|
|
SRC_URI_6="hg+http://hg.openjdk.java.net/haiku/haiku/jaxp#6c9ac74190a0"
|
|
SRC_URI_7="hg+http://hg.openjdk.java.net/haiku/haiku/jaxws#84f654f41f6b"
|
|
|
|
SRC_URI_8="hg+http://hg.openjdk.java.net/haiku/haiku/jdk#df0cce7b0238"
|
|
PATCHES_8="openjdk-1.7_2013_11_08-source8.patchset"
|
|
|
|
SRC_URI_9="hg+http://hg.openjdk.java.net/haiku/haiku/langtools#0dabb2f5fad0"
|
|
|
|
SRC_URI_10="http://ports-space.haiku-files.org/source/openjdk/jaxp145_01.zip#noarchive"
|
|
CHECKSUM_MD5_10="32394c780c8fb5e29775f623525993c0"
|
|
|
|
SRC_URI_11="http://ports-space.haiku-files.org/source/openjdk/jdk7-jaf-2010_08_19.zip#noarchive"
|
|
CHECKSUM_MD5_11="18d15dfd71117daadb332af003d08212"
|
|
|
|
SRC_URI_12="http://ports-space.haiku-files.org/source/openjdk/jdk7-jaxws2_2_4-b03-2011_05_27.zip#noarchive"
|
|
CHECKSUM_MD5_12="2f5b829ade70f67fe272d0b322e3e702"
|
|
|
|
REVISION="2"
|
|
ARCHITECTURES="x86 !x86_gcc2"
|
|
|
|
DISABLE_SOURCE_PACKAGE=yes
|
|
# at least as long as Ant and a complete SDK image are part of the sources
|
|
|
|
PROVIDES="
|
|
openjdk = $portVersion compat >= 1
|
|
cmd:apt = $portVersion compat >= 1
|
|
cmd:extcheck = $portVersion compat >= 1
|
|
cmd:idlj = $portVersion compat >= 1
|
|
cmd:jar = $portVersion compat >= 1
|
|
cmd:jarsigner = $portVersion compat >= 1
|
|
cmd:java = $portVersion compat >= 1
|
|
cmd:java_config = $portVersion compat >= 1
|
|
cmd:javac = $portVersion compat >= 1
|
|
cmd:javadoc = $portVersion compat >= 1
|
|
cmd:javah = $portVersion compat >= 1
|
|
cmd:javap = $portVersion compat >= 1
|
|
cmd:jconsole = $portVersion compat >= 1
|
|
cmd:jdb = $portVersion compat >= 1
|
|
cmd:jhat = $portVersion compat >= 1
|
|
cmd:jinfo = $portVersion compat >= 1
|
|
cmd:jmap = $portVersion compat >= 1
|
|
cmd:jps = $portVersion compat >= 1
|
|
cmd:jrunscript = $portVersion compat >= 1
|
|
cmd:jsadebugd = $portVersion compat >= 1
|
|
cmd:jstack = $portVersion compat >= 1
|
|
cmd:jstat = $portVersion compat >= 1
|
|
cmd:jstatd = $portVersion compat >= 1
|
|
cmd:keytool = $portVersion compat >= 1
|
|
cmd:native2ascii = $portVersion compat >= 1
|
|
cmd:orbd = $portVersion compat >= 1
|
|
cmd:pack200 = $portVersion compat >= 1
|
|
cmd:rmic = $portVersion compat >= 1
|
|
cmd:rmid = $portVersion compat >= 1
|
|
cmd:rmiregistry = $portVersion compat >= 1
|
|
cmd:schemagen = $portVersion compat >= 1
|
|
cmd:serialver = $portVersion compat >= 1
|
|
cmd:servertool = $portVersion compat >= 1
|
|
cmd:tnameserv = $portVersion compat >= 1
|
|
cmd:unpack200 = $portVersion compat >= 1
|
|
cmd:wsgen = $portVersion compat >= 1
|
|
cmd:wsimport = $portVersion compat >= 1
|
|
cmd:xjc = $portVersion compat >= 1
|
|
"
|
|
|
|
REQUIRES="
|
|
haiku >= $haikuVersion
|
|
lib:libfreetype
|
|
lib:libiconv
|
|
lib:libz
|
|
"
|
|
|
|
BUILD_REQUIRES="
|
|
haiku_devel >= $haikuVersion
|
|
devel:libfreetype
|
|
devel:libiconv
|
|
devel:libz
|
|
"
|
|
|
|
BUILD_PREREQUIRES="
|
|
cmd:cpio >= 2.10
|
|
cmd:make
|
|
cmd:gcc
|
|
cmd:ld
|
|
cmd:sed
|
|
cmd:tar
|
|
cmd:zip
|
|
"
|
|
|
|
PATCH()
|
|
{
|
|
# patch Ant
|
|
cd $sourceDir2
|
|
sed -i 's/depends=\"jars,test-jar\"/depends=\"jars\"/' build.xml
|
|
|
|
# small patch allowing to finish build without errors
|
|
# this modification already exists in another dev branch
|
|
# if someone fix it in current branch, using sed rather than patch should
|
|
# not brake the whole build
|
|
cd $sourceDir3
|
|
sed -i s/'$(PRINTF) "--'/'$(PRINTF) -- "--'/ make/Defs-internal.gmk
|
|
}
|
|
|
|
BUILD()
|
|
{
|
|
OPENJDK_DIR=$(dirname $sourceDir)
|
|
|
|
# build Apache Ant
|
|
export LIBRARY_PATH=${OPENJDK_DIR}/j2sdk-image/jre/lib/i386/:$LIBRARY_PATH
|
|
export JAVA_HOME=${OPENJDK_DIR}/j2sdk-image
|
|
export ANT_HOME=${OPENJDK_DIR}/ant
|
|
cd $sourceDir2
|
|
sh build.sh install-lite
|
|
unset JAVA_HOME
|
|
|
|
# prepare the directory structure
|
|
cd $OPENJDK_DIR
|
|
ln -sfn $sourceDir3 jdk
|
|
ln -sfn $sourceDir4 jdk/corba
|
|
ln -sfn $sourceDir5 jdk/hotspot
|
|
ln -sfn $sourceDir6 jdk/jaxp
|
|
ln -sfn $sourceDir7 jdk/jaxws
|
|
ln -sfn $sourceDir8 jdk/jdk
|
|
ln -sfn $sourceDir9 jdk/langtools
|
|
|
|
export ALT_DROPS_DIR=${OPENJDK_DIR}/drop
|
|
mkdir -p ${ALT_DROPS_DIR}
|
|
|
|
cp $sourceDir10/jaxp145_01.zip $ALT_DROPS_DIR
|
|
cp $sourceDir11/jdk7-jaf-2010_08_19.zip $ALT_DROPS_DIR
|
|
cp $sourceDir12/jdk7-jaxws2_2_4-b03-2011_05_27.zip $ALT_DROPS_DIR
|
|
|
|
# set up environment
|
|
export ALT_BOOTDIR=${OPENJDK_DIR}/j2sdk-image
|
|
export ALT_JDK_IMPORT_PATH=$ALT_BOOTDIR
|
|
export ANT=${OPENJDK_DIR}/ant
|
|
export ALT_OUTPUTDIR=${OPENJDK_DIR}/output
|
|
export LANG=C
|
|
export PATH=$PATH:$ANT_HOME/bin
|
|
|
|
# use PATH to search commands rather than explicitly set path for each
|
|
# commands so that grep, egrep & readelf are automatically found
|
|
# see Defs-haiku.gmk
|
|
export ALT_UNIXCOMMAND_PATH=
|
|
|
|
mkdir -p ${ALT_OUTPUTDIR}
|
|
|
|
export ALLOW_DOWNLOADS=false
|
|
|
|
export USE_EXTERNAL_ZLIB=true
|
|
|
|
# Build.
|
|
cd jdk
|
|
make
|
|
|
|
# The build system is broken in that it doesn't pick up all auto-generated
|
|
# java sources (it uses "find ... -name '*.java'" too early). Unfortunately
|
|
# that isn't easy to fix, so we just run a second make, which will pick up
|
|
# the then already existing files.
|
|
make
|
|
}
|
|
|
|
INSTALL()
|
|
{
|
|
# install the generated SDK image dir
|
|
cd ..
|
|
jdkDir=$libDir/openjdk
|
|
mkdir -p $(dirname $jdkDir)
|
|
cp -a output/j2sdk-image $jdkDir
|
|
|
|
# symlink the executables to binDir
|
|
mkdir -p $binDir
|
|
symlinkRelative -s $jdkDir/bin/* $binDir
|
|
# TODO: We should probably link only a subset.
|
|
|
|
# create a java-config script in binDir
|
|
javaConfig=$binDir/java-config
|
|
sed -e "s,%JAVA_HOME%,$jdkDir," $portDir/sources/java-config.in \
|
|
> $javaConfig
|
|
chmod a+x $javaConfig
|
|
|
|
# create a profile.d file that sets up JAVA_HOME
|
|
jdkProfile=$dataDir/profile.d/openjdk.sh
|
|
mkdir -p $(dirname $jdkProfile)
|
|
echo 'JAVA_HOME=`java-config -H`' > $jdkProfile
|
|
echo "export JAVA_HOME" >> $jdkProfile
|
|
}
|