Browse Source

Merge branch 'master' of git+ssh://openadk.org/git/openadk

wbx 14 năm trước cách đây
mục cha
commit
9954d8b647

+ 1 - 1
jtools/Makefile

@@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk
 
 TARGETS:=
 ifneq ($(ADK_PACKAGE_OPENJDK),)
-TARGETS+=fastjar gcj classpath ecj
+TARGETS+=fastjar gcj jikes jamvm classpath ant ecj openjdk
 endif
 
 TARGETS_INSTALL:=$(patsubst %,%-install,$(TARGETS))

+ 34 - 0
jtools/ant/Makefile

@@ -0,0 +1,34 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=		ant
+PKG_VERSION:=		1.8.2
+PKG_RELEASE:=		1
+PKG_MD5SUM:=		63220327925ace13756ae334c55a3baa
+PKG_SITES:=		http://www.apache.org/dist/ant/source/
+
+DISTFILES:=		apache-$(PKG_NAME)-$(PKG_VERSION)-src.tar.bz2
+WRKDIST=		$(WRKDIR)/apache-$(PKG_NAME)-$(PKG_VERSION)
+
+include ../rules.mk
+
+install: ${STAGING_JAVA_HOST_DIR}/usr/bin/ant
+
+$(WRKBUILD)/.compiled: ${WRKDIST}/.prepared
+	cp junit* $(WRKBUILD)/lib/optional
+	cp $(STAGING_JAVA_HOST_DIR)/usr/share/ecj.jar $(WRKBUILD)/lib/optional
+	cd ${WRKBUILD}; export BOOTJAVAC_OPTS="-bootclasspath $(STAGING_JAVA_HOST_DIR)/usr/share/classpath/glibj.zip" \
+		BOOTCLASSPATH="$(STAGING_JAVA_HOST_DIR)/usr/share/jamvm/classes.zip:$(STAGING_JAVA_HOST_DIR)/usr/share/classpath/glibj.zip" \
+		LD_LIBRARY_PATH=$(STAGING_JAVA_HOST_DIR)/usr/lib:$(STAGING_JAVA_HOST_DIR)/usr/lib64 \
+		JAVA_HOME=$(STAGING_JAVA_HOST_DIR)/usr/lib/jvm ; \
+		$(BASH) build.sh
+	touch $@
+
+${STAGING_JAVA_HOST_DIR}/usr/bin/ant: $(WRKBUILD)/.compiled
+	cd $(WRKBUILD)/dist; \
+	$(CP) bin/* $(STAGING_JAVA_HOST_DIR)/usr/bin ; \
+	$(CP) lib/* $(STAGING_JAVA_HOST_DIR)/usr/lib
+
+include $(TOPDIR)/mk/tools.mk

BIN
jtools/ant/junit-4.9b2.jar


+ 6 - 2
jtools/ecj/Makefile

@@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=		ecj
 PKG_VERSION:=		1
-PKG_RELEASE:=		1
+PKG_RELEASE:=		2
 PKG_MD5SUM:=		63220327925ace13756ae334c55a3baa
 
 include ../rules.mk
@@ -26,8 +26,12 @@ ${STAGING_JAVA_HOST_DIR}/usr/bin/ecj:
 		${STAGING_JAVA_HOST_DIR}/usr/bin/ecj
 	chmod u+x ${STAGING_JAVA_HOST_DIR}/usr/bin/ecj
 	# put a wrapper for java here
-	echo "env LD_LIBRARY_PATH=$(STAGING_JAVA_HOST_DIR)/usr/lib:$(STAGING_JAVA_HOST_DIR)/usr/lib64 ${STAGING_JAVA_HOST_DIR}/usr/bin/gij \$$@" > \
+	echo "env LD_LIBRARY_PATH=$(STAGING_JAVA_HOST_DIR)/usr/lib:$(STAGING_JAVA_HOST_DIR)/usr/lib64 ${STAGING_JAVA_HOST_DIR}/usr/bin/gij \"\$$@\"" > \
 		${STAGING_JAVA_HOST_DIR}/usr/bin/java
 	chmod u+x ${STAGING_JAVA_HOST_DIR}/usr/bin/java
+	rm ${STAGING_JAVA_HOST_DIR}/usr/lib/jvm/bin/java
+	rm ${STAGING_JAVA_HOST_DIR}/usr/lib/jvm/jre/bin/java
+	cp ${STAGING_JAVA_HOST_DIR}/usr/bin/java ${STAGING_JAVA_HOST_DIR}/usr/lib/jvm/bin/java
+	cp ${STAGING_JAVA_HOST_DIR}/usr/bin/java ${STAGING_JAVA_HOST_DIR}/usr/lib/jvm/jre/bin/java
 
 include $(TOPDIR)/mk/tools.mk

+ 3 - 3
jtools/gcj/Makefile

@@ -26,9 +26,9 @@ $(WRKBUILD)/.configured: ${WRKDIST}/.prepared
 			--enable-java-home \
 			--enable-languages=java \
 			--with-ffi \
-			--with-mpc=$(STAGING_HOST_DIR)/usr \
-			--with-mpfr=$(STAGING_HOST_DIR)/usr \
-			--with-gmp=$(STAGING_HOST_DIR)/usr \
+			--with-mpc=$(STAGING_HOST_DIR) \
+			--with-mpfr=$(STAGING_HOST_DIR) \
+			--with-gmp=$(STAGING_HOST_DIR) \
 			--disable-libmudflap \
 			--disable-libgomp \
 			--disable-biarch \

+ 39 - 0
jtools/jamvm/Makefile

@@ -0,0 +1,39 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=		jamvm
+PKG_VERSION:=		1.5.4
+PKG_RELEASE:=		1
+PKG_MD5SUM:=		63220327925ace13756ae334c55a3baa
+PKG_SITES:=		${MASTER_SITE_SOURCEFORGE:=jamvm/}
+
+ifeq (Darwin,${OStype})
+CC_FOR_BUILD:=${CC_FOR_BUILD} -m32
+CXX_FOR_BUILD:=${CXX_FOR_BUILD} -m32
+endif
+
+include ../rules.mk
+
+install: ${STAGING_JAVA_HOST_DIR}/usr/bin/jamvm
+
+$(WRKBUILD)/.configured: ${WRKDIST}/.prepared
+	cd $(WRKBUILD); env \
+               CC='${CC_FOR_BUILD}' \
+               CXX='${CXX_FOR_BUILD}' \
+           ./configure \
+               --prefix=/usr \
+               --with-classpath-install-dir=$(STAGING_JAVA_HOST_DIR)/usr
+	touch $@
+
+$(WRKBUILD)/.compiled: ${WRKDIST}/.configured
+	${MAKE} -C ${WRKBUILD} $(MAKE_TRACE)
+	touch $@
+
+${STAGING_JAVA_HOST_DIR}/usr/bin/jamvm: $(WRKBUILD)/.compiled
+	${MAKE} -C ${WRKBUILD} DESTDIR=$(STAGING_JAVA_HOST_DIR) install $(MAKE_TRACE)
+	$(CP) ${STAGING_JAVA_HOST_DIR}/usr/bin/jamvm ${STAGING_JAVA_HOST_DIR}/usr/lib/jvm/bin/java
+	$(CP) ${STAGING_JAVA_HOST_DIR}/usr/bin/jamvm ${STAGING_JAVA_HOST_DIR}/usr/lib/jvm/jre/bin/java
+
+include $(TOPDIR)/mk/tools.mk

+ 31 - 0
jtools/jikes/Makefile

@@ -0,0 +1,31 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=		jikes
+PKG_VERSION:=		1.22
+PKG_RELEASE:=		1
+PKG_MD5SUM:=		14d4bdfac236e347d806c6743dba48c6
+PKG_SITES:=		${MASTER_SITE_SOURCEFORGE:=jikes/Jikes/2.22/}
+
+DISTFILES:=		$(PKG_NAME)-$(PKG_VERSION).tar.bz2
+
+include ../rules.mk
+
+install: ${STAGING_JAVA_HOST_DIR}/usr/bin/jikes
+
+$(WRKBUILD)/.configured: ${WRKDIST}/.prepared
+	(cd $(WRKBUILD); ./configure --prefix=/usr);
+	touch $@
+
+$(WRKBUILD)/.compiled: ${WRKDIST}/.configured
+	${MAKE} -C ${WRKBUILD} $(MAKE_TRACE)
+	touch $@
+
+${STAGING_JAVA_HOST_DIR}/usr/bin/jikes: $(WRKBUILD)/.compiled
+	${MAKE} -C ${WRKBUILD} DESTDIR=$(STAGING_JAVA_HOST_DIR) install $(MAKE_TRACE)
+	$(CP) ${STAGING_JAVA_HOST_DIR}/usr/bin/jikes ${STAGING_JAVA_HOST_DIR}/usr/lib/jvm/bin/javac
+	$(CP) ${STAGING_JAVA_HOST_DIR}/usr/bin/jikes ${STAGING_JAVA_HOST_DIR}/usr/lib/jvm/jre/bin/javac
+
+include $(TOPDIR)/mk/tools.mk

+ 90 - 0
jtools/openjdk/Makefile

@@ -0,0 +1,90 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=		openjdk
+PKG_VERSION:=		6
+PKG_EXTRAVER:=		b22-28_feb_2011
+PKG_RELEASE:=		1
+PKG_MD5SUM:=		2d2bbbb0f9b81f1fec41ec730da8a933 \
+			fd3f35e8a8a2ef9a64c035ed66cea06d \
+			ef7a8b3624ea904bf584bc46d79b5e75 \
+			bc95c133620bd68c161cac9891592901 \
+			91adfd41e6f001add4f92ae31216b1e3 \
+			d526d0848c88607ce4e3a0a4edb75d50
+PKG_DESCR:=		OpenJDK Java VM
+PKG_SECTION:=		lang
+PKG_URL:=		http://openjdk.org/
+PKG_SITES:=		http://download.java.net/openjdk/jdk6/promoted/b22/ \
+			http://mirror.netcologne.de/apache.org/xml/xalan-j/binaries/ \
+			http://icedtea.classpath.org/download/drops/ \
+			http://icedtea.classpath.org/download/source/
+
+# autotools infrastructure for OpenJDK
+ICEDTEA_NAME:=		icedtea6
+ICEDTEA_VERSION:=	1.10
+
+# bootstrap JARs
+XALAN_NAME=		xalan-j
+XALAN_VERSION=		2_7_0
+
+# override generic extraction
+EXTRACT_OVERRIDE:=	1
+DISTFILES:=		openjdk-$(PKG_VERSION)-src-$(PKG_EXTRAVER).tar.gz \
+			$(ICEDTEA_NAME)-$(ICEDTEA_VERSION).tar.gz \
+			jaxp144_01.zip \
+			jdk6-jaf-b20.zip \
+			jdk6-jaxws-b20.zip \
+			${XALAN_NAME}_${XALAN_VERSION}-bin.tar.gz
+
+WRKDIST=		${WRKDIR}
+WRKSRC=			${WRKDIST}/${ICEDTEA_NAME}-${ICEDTEA_VERSION}
+
+include ../rules.mk
+
+OPENJDK_NATIVE_ENV+=	JAVACFLAGS="-cp ${STAGING_JAVA_HOST_DIR}/usr/share/java/libgcj-4.5.2.jar"
+OPENJDK_NATIVE_ENV+=	DYLD_LIBRARY_PATH=$(STAGING_JAVA_HOST_DIR)/usr/lib:$(STAGING_JAVA_HOST_DIR)/usr/lib64
+OPENJDK_NATIVE_ENV+=	LD_LIBRARY_PATH=$(STAGING_JAVA_HOST_DIR)/usr/lib:$(STAGING_JAVA_HOST_DIR)/usr/lib64
+OPENJDK_NATIVE_ENV+=	ADK_ECJ=$(STAGING_JAVA_HOST_DIR)/usr/bin/ecj
+
+install: ${STAGING_JAVA_HOST_DIR}/bootstrap-jdk/bin/java
+
+$(WRKDIST)/.extract:
+	cd ${WRKDIST}; mkdir openjdk-$(PKG_VERSION); \
+		tar xzf $(TOPDIR)/dl/openjdk-$(PKG_VERSION)-src-$(PKG_EXTRAVER).tar.gz -C openjdk-$(PKG_VERSION)
+	cd $(WRKDIST); tar xzf $(TOPDIR)/dl/$(ICEDTEA_NAME)-$(ICEDTEA_VERSION).tar.gz
+	cd ${WRKDIST}; tar xzf ${TOPDIR}/dl/${XALAN_NAME}_${XALAN_VERSION}-bin.tar.gz
+	mkdir -p ${WRKBUILD}/drops
+	cd ${TOPDIR}/dl; cp jaxp144_01.zip jdk6-jaf-b20.zip jdk6-jaxws-b20.zip ${WRKBUILD}/drops
+	cd $(WRKDIST); patch -p0 < ${TOPDIR}/jtools/openjdk/patches/*.patch
+	touch $@
+
+$(WRKDIST)/.configured: ${WRKDIST}/.extract
+	cd ${WRKBUILD}; rm -rf config.{cache,status}; \
+	export ${OPENJDK_NATIVE_ENV}; ./configure \
+		--enable-bootstrap \
+		--enable-zero \
+		--disable-openjdk-cross-compilation \
+		--with-openjdk-src-dir=$(WRKDIST)/$(PKG_NAME)-$(PKG_VERSION) \
+		--with-jdk-home=$(STAGING_JAVA_HOST_DIR)/usr/lib/jvm \
+		--with-java=$(STAGING_JAVA_HOST_DIR)/usr/bin/java \
+		--with-javac=$(STAGING_JAVA_HOST_DIR)/usr/bin/ecj \
+		--with-gcj=$(STAGING_JAVA_HOST_DIR)/usr/bin/gcj \
+		--with-ecj-jar=${STAGING_JAVA_HOST_DIR}/usr/share/ecj.jar \
+		--with-xalan2-jar=${WRKDIST}/${XALAN_NAME}_${XALAN_VERSION}/xalan.jar \
+		--with-xalan2-serializer-jar=${WRKDIST}/${XALAN_NAME}_${XALAN_VERSION}/serializer.jar \
+		--with-xerces2-jar=${WRKDIST}/${XALAN_NAME}_${XALAN_VERSION}/xercesImpl.jar \
+		--without-rhino \
+		--disable-docs
+	touch $@
+
+$(WRKBUILD)/.compiled: ${WRKDIST}/.configured
+	export ${OPENJDK_NATIVE_ENV}; $(MAKE) -C $(WRKBUILD)
+	touch $@
+
+${STAGING_JAVA_HOST_DIR}/bootstrap-jdk/bin/java: $(WRKBUILD)/.compiled
+	$(CP) $(WRKSRC)/openjdk.build/j2sdk-image $(STAGING_JAVA_HOST_DIR)/bootstrap-jdk
+	touch $@
+
+include ${TOPDIR}/mk/pkg-bottom.mk

+ 0 - 0
jtools/openjdk/do-extract


+ 54 - 0
jtools/openjdk/patches/openjdk.patch

@@ -0,0 +1,54 @@
+diff -Nur openjdk-6.orig/Makefile openjdk-6/Makefile
+--- openjdk-6.orig/Makefile	2011-02-28 17:02:07.000000000 +0100
++++ openjdk-6/Makefile	2011-04-06 19:47:19.261818496 +0200
+@@ -25,9 +25,7 @@
+ 
+ BUILD_PARENT_DIRECTORY=.
+ 
+-ifndef TOPDIR
+-  TOPDIR:=.
+-endif
++TOPDIR:=.
+ 
+ ifndef JDK_TOPDIR
+   JDK_TOPDIR=$(TOPDIR)/jdk
+diff -Nur icedtea6-1.10.orig/Makefile.in icedtea6-1.10/Makefile.in
+--- icedtea6-1.10.orig/Makefile.in	2011-03-02 20:48:45.161291458 +0100
++++ icedtea6-1.10/Makefile.in	2011-04-06 20:10:40.581819545 +0200
+@@ -1329,7 +1329,7 @@
+ @OPENJDK_SRC_DIR_FOUND_TRUE@	  cp -pPR $(OPENJDK_SRC_DIR_LINK) $(OPENJDK_SRC_DIR) openjdk ; \
+ @OPENJDK_SRC_DIR_FOUND_TRUE@	fi
+ @OPENJDK_SRC_DIR_FOUND_FALSE@@USE_HG_TRUE@	if ! test -d openjdk ; then \
+-@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_HG_TRUE@	  cp -pPRl openjdk.hg openjdk ; \
++@OPENJDK_SRC_DIR_FOUND_FALSE@@USE_HG_TRUE@	  cp -pPR openjdk.hg openjdk ; \
+ @OPENJDK_SRC_DIR_FOUND_FALSE@@USE_HG_TRUE@	fi
+ @OPENJDK_SRC_DIR_FOUND_FALSE@@USE_HG_FALSE@	set -e ; \
+ @OPENJDK_SRC_DIR_FOUND_FALSE@@USE_HG_FALSE@	if ! test -d openjdk ; \
+@@ -1576,7 +1576,7 @@
+ # FIXME (missing): Rename to clone-ecj.
+ stamps/extract-ecj.stamp: $(OPENJDK_TREE)
+ 	if ! test -d openjdk-ecj ; then \
+-	    cp -pPRl openjdk openjdk-ecj ; \
++	    cp -pPR openjdk openjdk-ecj ; \
+ 	fi
+ 	mkdir -p stamps
+ 	touch stamps/extract-ecj.stamp
+@@ -1643,10 +1643,14 @@
+ 
+ stamps/native-ecj.stamp: 
+ 	mkdir -p stamps ; \
+-	if test "x$(GCJ)" != "xno"; then \
+-	  $(GCJ) $(IT_CFLAGS) -Wl,-Bsymbolic -findirect-dispatch -o native-ecj \
+-	    --main=org.eclipse.jdt.internal.compiler.batch.Main ${ECJ_JAR} ; \
+-	fi ; \
++	if test -n "${ADK_ECJ}" && test -x "${ADK_ECJ}"; then \
++		ln -s "${ADK_ECJ}" native-ecj; \
++	else \
++		if test "x$(GCJ)" != "xno"; then \
++		  $(GCJ) $(IT_CFLAGS) -Wl,-Bsymbolic -findirect-dispatch -o native-ecj \
++		    --main=org.eclipse.jdt.internal.compiler.batch.Main ${ECJ_JAR} ; \
++		fi ; \
++	fi; \
+ 	touch stamps/native-ecj.stamp
+ 
+ clean-native-ecj:

+ 1 - 1
package/glibc/Makefile

@@ -46,7 +46,7 @@ ifeq ($(ADK_TOOLCHAIN_GCC_USE_SSP),y)
 	$(CP) $(STAGING_TARGET_DIR)/lib/libssp.so* $(IDIR_GLIBC)/lib
 endif
 	$(CP) $(STAGING_TARGET_DIR)/lib/ld*.so* $(IDIR_GLIBC)/lib
-	-for file in libc libcrypt libdl libm libresolv librt libutil libnss_compat libnss_dns libnss_files; do \
+	for file in libc libcrypt libdl libm libnsl libresolv librt libutil libnss_compat libnss_dns libnss_files; do \
 		$(CP) $(STAGING_TARGET_DIR)/lib/$$file.so* $(IDIR_GLIBC)/lib; \
 		$(CP) $(STAGING_TARGET_DIR)/lib/$$file-$(PKG_VERSION).so $(IDIR_GLIBC)/lib; \
 	done

+ 42 - 36
package/openjdk/Makefile

@@ -15,8 +15,9 @@ PKG_MD5SUM:=		2d2bbbb0f9b81f1fec41ec730da8a933 \
 			d526d0848c88607ce4e3a0a4edb75d50
 PKG_DESCR:=		OpenJDK Java VM
 PKG_SECTION:=		lang
-PKG_BUILDDEP:=		alsa-lib xproto jpeg zlib libX11 libpng freetype cups
-PKG_BUILDDEP+=		libXt libXp libXinerama libXrender libXtst
+PKG_BUILDDEP:=		alsa-lib xproto jpeg zlib giflib libpng freetype cups
+PKG_BUILDDEP+=		libX11 libXt libXp libXinerama libXrender libXtst
+PKG_DEPENDS:=		zlib libstdcxx libffi
 PKG_URL:=		http://openjdk.org/
 PKG_SITES:=		http://download.java.net/openjdk/jdk6/promoted/b22/ \
 			http://mirror.netcologne.de/apache.org/xml/xalan-j/binaries/ \
@@ -54,9 +55,8 @@ include $(TOPDIR)/mk/package.mk
 
 $(eval $(call PKG_template,OPENJDK,openjdk,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
-BUILD_STYLE:=		manual
-INSTALL_STYLE:=		manual
 TARGET_CFLAGS:=         $(filter-out -fhonour-copts,$(TARGET_CFLAGS))
+BOOTSTRAPJDK:=		${STAGING_JAVA_HOST_DIR}/bootstrap-jdk
 
 ifeq ($(ADK_PACKAGE_OPENJDK_ZERO),y)
 CONFIGURE_ARGS+=	--enable-zero
@@ -65,11 +65,9 @@ ifeq ($(ADK_PACKAGE_OPENJDK_SHARK),y)
 CONFIGURE_ARGS+=	--enable-shark
 endif
 
-BOOTSTRAPJDK:=		${WRKDIST}/bootstrap-jdk
 CONFIGURE_ARGS+=	--disable-docs \
-			--enable-bootstrap \
+			--disable-bootstrap \
 			--enable-openjdk-cross-compilation \
-			--with-cc-for-build=$(CC_FOR_BUILD) \
 			--with-openjdk-src-dir=$(WRKDIST)/$(PKG_NAME)-$(PKG_VERSION) \
 			--with-xalan2-jar=${WRKDIST}/${XALAN_NAME}_${XALAN_VERSION}/xalan.jar \
 			--with-xalan2-serializer-jar=${WRKDIST}/${XALAN_NAME}_${XALAN_VERSION}/serializer.jar \
@@ -83,12 +81,12 @@ CONFIGURE_ARGS+=	--disable-docs \
 			--with-native2ascii=$(BOOTSTRAPJDK)/bin/native2ascii \
 			--without-rhino
 
-OPENJDK_NATIVE_ENV+=	JAVACFLAGS="-cp ${STAGING_JAVA_HOST_DIR}/usr/share/java/libgcj-4.5.2.jar"
-OPENJDK_NATIVE_ENV+=	DYLD_LIBRARY_PATH=$(STAGING_JAVA_HOST_DIR)/usr/lib:$(STAGING_JAVA_HOST_DIR)/usr/lib64
-OPENJDK_NATIVE_ENV+=	LD_LIBRARY_PATH=$(STAGING_JAVA_HOST_DIR)/usr/lib:$(STAGING_JAVA_HOST_DIR)/usr/lib64
-OPENJDK_NATIVE_ENV+=	ADK_ECJ=$(STAGING_JAVA_HOST_DIR)/usr/bin/ecj
+MAKE_ENV+=	ALT_COMPILER_PATH=$(STAGING_HOST_DIR)/$(REAL_GNU_TARGET_NAME) \
+		GCC_HONOUR_COPTS=s
 
-OPENJDK_BUILD_ENV+=	ALT_COMPILER_PATH=$(STAGING_HOST_DIR)/$(REAL_GNU_TARGET_NAME)/bin
+OPENJDK_NATIVE_ENV+=	ALT_COMPILER_PATH=$(STAGING_HOST_DIR)/$(REAL_GNU_TARGET_NAME) \
+			GCC_HONOUR_COPTS=s
+ALL_TARGET:=		icedtea
 
 do-extract:
 	cd ${WRKDIST}; mkdir $(PKG_NAME)-$(PKG_VERSION); \
@@ -96,35 +94,43 @@ do-extract:
 	cd $(WRKDIST); tar xzf $(TOPDIR)/dl/$(ICEDTEA_NAME)-$(ICEDTEA_VERSION).tar.gz
 	cd ${WRKDIST}; tar xzf ${TOPDIR}/dl/${XALAN_NAME}_${XALAN_VERSION}-bin.tar.gz
 	mkdir -p ${WRKBUILD}/drops
-	cd ${TOPDIR}/dl; cp jaxp144_01.zip jdk6-jaf-b20.zip jdk6-jaxws-b20.zip \
-	    ${WRKBUILD}/drops
+	cd ${TOPDIR}/dl; cp jaxp144_01.zip jdk6-jaf-b20.zip jdk6-jaxws-b20.zip ${WRKBUILD}/drops
 
 pre-configure:
 	cd ${WRKBUILD}; rm -rf config.{cache,status}; \
 	export ${OPENJDK_NATIVE_ENV}; ./configure \
-		--enable-bootstrap \
-		--enable-zero \
-		--disable-openjdk-cross-compilation \
-		--with-openjdk-src-dir=$(WRKDIST)/$(PKG_NAME)-$(PKG_VERSION) \
-		--with-jdk-home=$(STAGING_JAVA_HOST_DIR)/usr/lib/jvm \
-		--with-java=$(STAGING_JAVA_HOST_DIR)/usr/bin/java \
-		--with-javac=$(STAGING_JAVA_HOST_DIR)/usr/bin/ecj \
-		--with-gcj=$(STAGING_JAVA_HOST_DIR)/usr/bin/gcj \
-		--with-ecj-jar=${STAGING_JAVA_HOST_DIR}/usr/share/ecj.jar \
-		--with-xalan2-jar=${WRKDIST}/${XALAN_NAME}_${XALAN_VERSION}/xalan.jar \
-		--with-xalan2-serializer-jar=${WRKDIST}/${XALAN_NAME}_${XALAN_VERSION}/serializer.jar \
-		--with-xerces2-jar=${WRKDIST}/${XALAN_NAME}_${XALAN_VERSION}/xercesImpl.jar \
-		--without-rhino \
-		--disable-docs \
-	&& $(MAKE) && $(CP) $(WRKSRC)/openjdk.build/j2sdk-image ${WRKDIST}/bootstrap-jdk && $(MAKE) clean && rm -rf ${WRKBUILD}/openjdk-old
-
-do-build:
-	cd ${WRKBUILD}; export $(OPENJDK_BUILD_ENV); make
-
-do-install:
-	cd ${WRKBUILD}; make install
+			${CONFIGURE_TRIPLE} \
+	   		--prefix=/usr \
+			--bindir=/usr/bin \
+	    		--datadir=/usr/share \
+	                --mandir=/usr/share/man \
+	  		--libexecdir=/usr/libexec \
+			--localstatedir=/var \
+			--sysconfdir=/etc \
+			--enable-bootstrap \
+			--enable-zero \
+			--enable-openjdk-cross-compilation \
+			--with-openjdk-src-dir=$(WRKDIST)/$(PKG_NAME)-$(PKG_VERSION) \
+			--with-xalan2-jar=${WRKDIST}/${XALAN_NAME}_${XALAN_VERSION}/xalan.jar \
+			--with-xalan2-serializer-jar=${WRKDIST}/${XALAN_NAME}_${XALAN_VERSION}/serializer.jar \
+			--with-xerces2-jar=${WRKDIST}/${XALAN_NAME}_${XALAN_VERSION}/xercesImpl.jar \
+			--with-jdk-home=$(BOOTSTRAPJDK) \
+			--with-java=$(BOOTSTRAPJDK)/bin/java \
+			--with-javac=$(BOOTSTRAPJDK)/bin/javac \
+			--with-javah=$(BOOTSTRAPJDK)/bin/javah \
+			--with-jar=$(BOOTSTRAPJDK)/bin/jar \
+			--with-rmic=$(BOOTSTRAPJDK)/bin/rmic \
+			--with-native2ascii=$(BOOTSTRAPJDK)/bin/native2ascii \
+			--without-rhino ;\
+	$(MAKE) icedtea-ecj
+	# fixup symlinks to bootstrapjdk
+	ln -sf $(BOOTSTRAPJDK)/bin/java $(WRKBUILD)/openjdk.build-ecj/j2sdk-image/bin/java
+	ln -sf $(BOOTSTRAPJDK)/bin/javac $(WRKBUILD)/openjdk.build-ecj/j2sdk-image/bin/javac
+	ln -sf $(BOOTSTRAPJDK)/bin/javah $(WRKBUILD)/openjdk.build-ecj/j2sdk-image/bin/javah
+	ln -sf $(BOOTSTRAPJDK)/bin/jar $(WRKBUILD)/openjdk.build-ecj/j2sdk-image/bin/jar
 
 openjdk-install:
-	$(INSTALL_DIR) $(IDIR_OPENJDK)/usr/bin
+	$(INSTALL_DIR) $(IDIR_OPENJDK)/usr
+	$(CP) $(WRKBUILD)/openjdk.build/j2re-image/* $(IDIR_OPENJDK)/usr 
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 18 - 0
package/openjdk/patches/debug-javac.patch

@@ -0,0 +1,18 @@
+--- w-openjdk-6-1.orig/icedtea6-1.10.orig/javac.in	2011-02-23 23:32:18.635149341 +0100
++++ w-openjdk-6-1/icedtea6-1.10/javac.in	2011-04-05 16:27:04.291962749 +0200
+@@ -37,6 +37,7 @@
+ if ( -e "@abs_top_builddir@/native-ecj" )
+ {
+     my @ecj_args = gen_ecj_opts( \@ARGV );
++    print 'Using native ecj';
+     exec '@abs_top_builddir@/native-ecj', @ecj_parms, @ecj_args ;
+ }
+ elsif ( -e "@ECJ_JAR@" )
+@@ -45,6 +46,7 @@
+     my @CLASSPATH = ('@ECJ_JAR@');
+     push @CLASSPATH, split /:/, $ENV{"CLASSPATH"} if exists $ENV{"CLASSPATH"};
+     $ENV{"CLASSPATH"} = join ':', @CLASSPATH;
++    print 'Using ecj with java';
+     exec '@JAVA@', 'org.eclipse.jdt.internal.compiler.batch.Main', @ecj_parms, @ecj_args;
+ }
+ else

+ 11 - 0
package/openjdk/patches/disable-freetype-check.patch

@@ -0,0 +1,11 @@
+--- w-openjdk-6-1.orig/openjdk-6.orig/jdk/make/common/shared/Sanity.gmk	2011-02-28 17:06:10.000000000 +0100
++++ w-openjdk-6-1/openjdk-6/jdk/make/common/shared/Sanity.gmk	2011-04-05 14:05:29.691807661 +0200
+@@ -793,7 +793,7 @@
+ # Check for availability of FreeType (OpenJDK specific)
+ ######################################################
+ 
+-ifdef OPENJDK
++ifdef OPENJDK_DISABLED
+ 
+ #name of test program that prints out "Failed" if freetype is not good enough
+ FREETYPE_VERSION_CHECK_NAME = freetype_versioncheck