mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-23 04:00:05 +02:00
openjdk: provide hjava launcher utility.
This commit is contained in:
BIN
dev-lang/openjdk/download2
Normal file
BIN
dev-lang/openjdk/download2
Normal file
Binary file not shown.
@@ -5,8 +5,7 @@ result of an effort Sun Microsystems began in 2006. The implementation is \
|
||||
licensed under the GNU General Public License (GNU GPL) with a linking \
|
||||
exception. Were it not for the GPL linking exception, components that linked \
|
||||
to the Java class library would be subject to the terms of the GPL license. \
|
||||
OpenJDK is the official Java SE 7 reference implementation.
|
||||
"
|
||||
OpenJDK is the official Java SE 7 reference implementation."
|
||||
HOMEPAGE="http://openjdk.java.net/"
|
||||
COPYRIGHT="2012 Oracle and/or its affiliates."
|
||||
LICENSE="GNU GPL v2"
|
||||
@@ -27,7 +26,7 @@ SRC_URI_7="hg+http://hg.openjdk.java.net/jdk7u/jdk7u/jaxws#jdk7u80-b02"
|
||||
SRC_URI_8="hg+http://bitbucket.org/hamishm/haiku-jdk7u-hotspot#755ff2f"
|
||||
SRC_URI_9="hg+http://bitbucket.org/hamishm/haiku-jdk7u-jdk#f39f6f6"
|
||||
|
||||
REVISION="1"
|
||||
REVISION="2"
|
||||
ARCHITECTURES="x86"
|
||||
if [ $effectiveTargetArchitecture != x86_gcc2 ]; then
|
||||
# x86_gcc2 is fine as primary target architecture as long as we're building
|
||||
@@ -65,6 +64,7 @@ PROVIDES="
|
||||
cmd:jstack$secondaryArchSuffix = $portVersion compat >= 1
|
||||
cmd:jstat$secondaryArchSuffix = $portVersion compat >= 1
|
||||
cmd:jstatd$secondaryArchSuffix = $portVersion compat >= 1
|
||||
cmd:hjava = $portVersion compat >= 1
|
||||
cmd:keytool$secondaryArchSuffix = $portVersion compat >= 1
|
||||
cmd:native2ascii$secondaryArchSuffix = $portVersion compat >= 1
|
||||
cmd:orbd$secondaryArchSuffix = $portVersion compat >= 1
|
||||
@@ -95,7 +95,7 @@ BUILD_REQUIRES="
|
||||
devel:libz$secondaryArchSuffix
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
cmd:cpio >= 2.10
|
||||
cmd:cpio
|
||||
cmd:make
|
||||
cmd:gcc$secondaryArchSuffix
|
||||
cmd:ld$secondaryArchSuffix
|
||||
@@ -113,6 +113,10 @@ BUILD_PREREQUIRES="
|
||||
|
||||
BUILD()
|
||||
{
|
||||
# Build "hjava" command.
|
||||
g++ $portDir/sources/hjava.cpp -DJAVA_BINARY=\"$binDir/java\" -o hjava
|
||||
addResourcesToBinaries $portDir/sources/hjava.rdef hjava
|
||||
|
||||
OPENJDK_DIR=$(dirname $sourceDir)
|
||||
|
||||
# prepare the directory structure
|
||||
@@ -147,13 +151,18 @@ BUILD()
|
||||
|
||||
export USE_EXTERNAL_ZLIB=true
|
||||
|
||||
# Build.
|
||||
# Build. (multijob make sometimes fails)
|
||||
cd jdk
|
||||
make
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
mkdir -p $binDir
|
||||
|
||||
# install hjava
|
||||
cp hjava $prefix/bin/
|
||||
|
||||
# install the generated SDK image dir
|
||||
cd ..
|
||||
jdkDir=$libDir/openjdk
|
||||
@@ -161,7 +170,6 @@ INSTALL()
|
||||
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.
|
||||
|
||||
|
||||
24
dev-lang/openjdk/sources/hjava.cpp
Normal file
24
dev-lang/openjdk/sources/hjava.cpp
Normal file
@@ -0,0 +1,24 @@
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <limits.h>
|
||||
|
||||
int main(int argc, char* argv[])
|
||||
{
|
||||
if (argc < 2) {
|
||||
system("alert --stop \"Java: Please specify a Jarfile.\" >/dev/null");
|
||||
return 1;
|
||||
}
|
||||
|
||||
char command[PATH_MAX];
|
||||
snprintf(command, sizeof(command), "%s -jar \"%s\"", JAVA_BINARY, argv[1]);
|
||||
|
||||
FILE* fd = popen(command, "r");
|
||||
if (fd != NULL) {
|
||||
char buffer[512];
|
||||
fgets(buffer, 512, fd);
|
||||
return pclose(fd);
|
||||
} else
|
||||
system("alert --stop \"Java: popen failed!\" >/dev/null");
|
||||
|
||||
return 1;
|
||||
}
|
||||
54
dev-lang/openjdk/sources/hjava.rdef
Normal file
54
dev-lang/openjdk/sources/hjava.rdef
Normal file
@@ -0,0 +1,54 @@
|
||||
resource app_signature "application/x-vnd.hjava";
|
||||
|
||||
resource app_flags B_MULTIPLE_LAUNCH;
|
||||
|
||||
resource app_version {
|
||||
major = 1,
|
||||
middle = 7,
|
||||
minor = 0,
|
||||
|
||||
variety = B_APPV_FINAL,
|
||||
internal = 0,
|
||||
|
||||
short_info = "hjava",
|
||||
long_info = "Oracle JVM Launcher"
|
||||
};
|
||||
|
||||
resource file_types message {
|
||||
"types" = "application/java-archive"
|
||||
};
|
||||
|
||||
resource vector_icon {
|
||||
$"6E63696603050005FF0201060A3BDB8F0000000000003BDB8F490DCA4AF1DB00"
|
||||
$"FFFFFF0FFBC8B412FBC3B02EF7978B4CF4716B6BF152518BEF3A3DACEE292FD1"
|
||||
$"ED1F27FFED1C24070208B87DB7E3B87DB7E3B96FB9DFB7B0CC91B8CCC7B6B694"
|
||||
$"D16EB536DCD0B578D79CB519DF07B6E3DFE7B570DFE7B971DFE7C0C2DAA3BCB0"
|
||||
$"DA84C4D5DAC2C80AE0C7C621E0D1C9F2E0BCCB80DA2DCB7CE013CB8FC892B87D"
|
||||
$"B7E3BCCDBA4CB87DB7E30213C549C5F5C549C5F5C62FC778C892C499C879C64E"
|
||||
$"C8ABC2E4C74FC0A8C86BC0BDC634C094C44DBF63C569BF78C331BF4FC17CBEF1"
|
||||
$"C201C06AC0F7BD78C44DBC9DC2E0BCD9C308BB58C1BAB878C249B9EFC12BB702"
|
||||
$"C251B517C0C2B5AAC3E1B484C58AB8D1C3C0B778C503B6D4C4DCB4D9C4D1B601"
|
||||
$"C4E6B3B0C676B309C4D1B2CFC81AB343C8ABB811C764B6ADC90FB6BFCA3BB463"
|
||||
$"C94BB513CB2BB3B2CBF2B681CD4EB3AECA96B954CBEEBD15CC57BADBCB84BF4F"
|
||||
$"C9B0C056CA3DBEE7C923C1C4C8FAC67ECA03C507C7F1C7F5C86DCC00C7C1CA34"
|
||||
$"C65DCA13C549C5F5C549C5F5C549C5F50209B86EC7DCB86EC7DCB799CD92B48E"
|
||||
$"D09FB4B4CE40B469D2FEB545D569B553D338B536D79AB307D9AEB343D87EB2CB"
|
||||
$"DADFB4C0DB40B408DB40B578DB40B67BD617B631D818B6C6D415B587D187B587"
|
||||
$"D2E7B587D027B700CFD8B755CDA2B87FCD7BB86EC7DCB935CA79B86EC7DC0207"
|
||||
$"B98CCA09B98CCA09B8EBCD202ADE9AB4FADE62B8FDDED2C086D94DBBD9D943C5"
|
||||
$"35D957C831DF7DC70DDF88C955DF73CA35D8ECCA16DFE5CA54D1F2C38EC51EC6"
|
||||
$"12C90AC024C555B98CCA09BC78C812B98CCA090006C386C646C386C646C357C4"
|
||||
$"57C00EC2D5C1E8C321BE44C28BBB10C4A5BC51C365B9A8C60EBA96C9AFB999C8"
|
||||
$"04BB8FCB54BF7BCB76BDB7CBE0C1E5CAE6C386C646C3AFC8C9C386C6460007C2"
|
||||
$"A3C6FEC2A3C6FEC278C8C0BF62CA92C111CA29BD99CB00BAFDC87BBBA1CA51BA"
|
||||
$"AAC78BBB49C5C3BAB9C696BBC3C512BD49C42EBC87C487BED9C379C22DC4FAC1"
|
||||
$"16C364C297C594C2A3C6FEC2A9C649C2A3C6FE0007C2A3C6FEC2A3C6FEC278C8"
|
||||
$"C0BF62CA92C111CA29BD99CB00BAFDC87BBBA1CA51BAAAC78BBB49C5C3BAB9C6"
|
||||
$"96BBC3C512BD49C42EBC87C487BED9C379C22DC4FAC116C364C297C594C2A3C6"
|
||||
$"FEC2A9C649C2A3C6FE070A000100023E67E80000000000003E37B7473F2D3B22"
|
||||
$"B20A000101023E67E80000000000003E37B7473F2D3B22B20A010103023E67E8"
|
||||
$"0000000000003E37B7473F2D3B22B20A000104023E67E80000000000003E37B7"
|
||||
$"473F2D3B22B20A020105023E67E80000000000003E37B7473F2D3B22B20A0001"
|
||||
$"06123E67E80000000000003E37B7473F2D3B22B201178000040A000102023E67"
|
||||
$"E80000000000003E37B7473F2D3B22B2"
|
||||
};
|
||||
Reference in New Issue
Block a user