summaryrefslogtreecommitdiff
path: root/package/openjdk
diff options
context:
space:
mode:
Diffstat (limited to 'package/openjdk')
-rw-r--r--package/openjdk/Makefile6
-rw-r--r--package/openjdk/patches/shark-adlc-cross-compile.patch20
2 files changed, 25 insertions, 1 deletions
diff --git a/package/openjdk/Makefile b/package/openjdk/Makefile
index 62786add7..56097f6f8 100644
--- a/package/openjdk/Makefile
+++ b/package/openjdk/Makefile
@@ -52,7 +52,7 @@ WRKSRC= ${WRKDIST}/${ICEDTEA_NAME}-${ICEDTEA_VERSION}
PKG_SUBPKGS:= OPENJDK
PKG_CHOICES_OPENJDK:= ZERO SHARK CACAO
PKGCD_ZERO:= zero-assembly backend
-PKGCD_SHARK:= Shark JIT backend
+PKGCD_SHARK:= Shark JIT backend (needs eglibc/glibc)
PKGCB_SHARK:= llvm
PKGCD_CACAO:= Cacao JIT backend
PKGCD_JAMVM:= JamVM backend
@@ -61,6 +61,7 @@ include $(TOPDIR)/mk/package.mk
$(eval $(call PKG_template,OPENJDK,openjdk,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+
TARGET_CFLAGS:= $(filter-out -fhonour-copts,$(TARGET_CFLAGS))
BOOTSTRAPJDK:= ${STAGING_JAVA_HOST_DIR}/bootstrap-jdk
@@ -110,6 +111,9 @@ ALL_TARGET:= icedtea
# add include path for Xrender.h from staging directory
post-patch:
+ifeq ($(QEMU),)
+ $(error Fatal error: $$QEMU not set!)
+endif
$(SED) "s#@ADK_TARGETDIR@#$(STAGING_TARGET_DIR)#" ${WRKDIST}/$(PKG_NAME)-$(PKG_VERSION)/jdk/make/sun/xawt/Makefile
do-extract:
diff --git a/package/openjdk/patches/shark-adlc-cross-compile.patch b/package/openjdk/patches/shark-adlc-cross-compile.patch
new file mode 100644
index 000000000..79670f9ac
--- /dev/null
+++ b/package/openjdk/patches/shark-adlc-cross-compile.patch
@@ -0,0 +1,20 @@
+--- w-openjdk-6.orig/openjdk-6/hotspot/make/linux/makefiles/adlc.make 2011-02-28 17:03:13.000000000 +0100
++++ w-openjdk-6/openjdk-6/hotspot/make/linux/makefiles/adlc.make 2011-08-17 13:05:55.317470977 +0200
+@@ -103,7 +103,7 @@
+
+ $(EXEC) : $(OBJECTS)
+ @echo Making adlc
+- $(QUIETLY) $(LINK_NOPROF.CC) -o $(EXEC) $(OBJECTS)
++ $(QUIETLY) $(LINK_NOPROF.CC) -static -o $(EXEC) $(OBJECTS)
+
+ # Random dependencies:
+ $(OBJECTS): opcodes.hpp classes.hpp adlc.hpp adlcVMDeps.hpp adlparse.hpp archDesc.hpp arena.hpp dict2.hpp filebuff.hpp forms.hpp formsopt.hpp formssel.hpp
+@@ -170,7 +170,7 @@
+ #
+ refresh_adfiles: $(EXEC) $(SOURCE.AD) $(ADLC_UPDATER)
+ @rm -rf $(TEMPDIR); mkdir $(TEMPDIR)
+- $(QUIETLY) $(EXEC) $(ADLCFLAGS) $(SOURCE.AD) \
++ $(QEMU) $(EXEC) $(ADLCFLAGS) $(SOURCE.AD) \
+ -c$(TEMPDIR)/ad_$(Platform_arch_model).cpp -h$(TEMPDIR)/ad_$(Platform_arch_model).hpp -a$(TEMPDIR)/dfa_$(Platform_arch_model).cpp -v$(TEMPDIR)/adGlobals_$(Platform_arch_model).hpp \
+ || { rm -rf $(TEMPDIR); exit 1; }
+ $(QUIETLY) ./$(ADLC_UPDATER) ad_$(Platform_arch_model).cpp $(TEMPDIR) $(OUTDIR)