Преглед изворни кода

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

Waldemar Brodkorb пре 14 година
родитељ
комит
c20e67a4a0

+ 1 - 1
jtools/Makefile

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

+ 1 - 1
jtools/ant/Makefile

@@ -18,7 +18,7 @@ install: ${STAGING_JAVA_HOST_DIR}/usr/bin/ant
 
 $(WRKBUILD)/.compiled: ${WRKDIST}/.prepared
 	cd $(WRKBUILD)/lib/optional; wget http://openadk.org/distfiles/junit-4.9b2.jar
-	cp $(STAGING_JAVA_HOST_DIR)/usr/share/ecj.jar $(WRKBUILD)/lib/optional
+	cp $(STAGING_JAVA_HOST_DIR)/usr/share/java/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 \

+ 6 - 2
jtools/classpath/Makefile

@@ -13,8 +13,12 @@ include ../rules.mk
 
 install: ${STAGING_JAVA_HOST_DIR}/usr/share/classpath/glibj.zip
 
+CPENV:=	LD_LIBRARY_PATH=$(STAGING_JAVA_HOST_DIR)/usr/lib:$(STAGING_JAVA_HOST_DIR)/usr/lib64 \
+	PATH=${STAGING_JAVA_HOST_DIR}/usr/bin:$$PATH \
+	CLASSPATH=${STAGING_JAVA_HOST_DIR}/usr/share/java/libgcj-$(GCJ_VER).jar
+
 $(WRKBUILD)/.configured: ${WRKDIST}/.prepared
-	(cd $(WRKBUILD); ./configure --prefix=${STAGING_JAVA_HOST_DIR}/usr \
+	(cd $(WRKBUILD); env $(CPENV) ./configure --prefix=${STAGING_JAVA_HOST_DIR}/usr \
 		--disable-local-sockets \
 		--disable-alsa \
 		--disable-gconf-peer \
@@ -29,7 +33,7 @@ $(WRKBUILD)/.configured: ${WRKDIST}/.prepared
 	touch $@
 
 $(WRKBUILD)/.compiled: ${WRKDIST}/.configured
-	${MAKE} -C ${WRKBUILD}
+	env $(CPENV) ${MAKE} -C ${WRKBUILD}
 	touch $@
 
 ${STAGING_JAVA_HOST_DIR}/usr/share/classpath/glibj.zip: $(WRKBUILD)/.compiled

+ 12 - 0
jtools/classpath/patches/classpath-fix.patch

@@ -0,0 +1,12 @@
+diff -Nur classpath-0.98.orig//lib/Makefile.in classpath-0.98/lib/Makefile.in
+--- classpath-0.98.orig//lib/Makefile.in	2009-02-06 02:01:32.000000000 +0100
++++ classpath-0.98/lib/Makefile.in	2011-08-05 22:55:25.965284504 +0200
+@@ -272,7 +272,7 @@
+ uudecode = @uudecode@
+ vm_classes = @vm_classes@
+ JAVA_DEPEND = java.dep
+-compile_classpath = $(vm_classes):$(top_srcdir):$(top_srcdir)/external/w3c_dom:$(top_srcdir)/external/sax:$(top_srcdir)/external/relaxngDatatype:$(top_srcdir)/external/jsr166:.:$(PATH_TO_GLIBJ_ZIP):$(PATH_TO_ESCHER)
++compile_classpath = $(vm_classes) -cp $(top_srcdir) -cp $(top_srcdir)/external/w3c_dom -cp $(top_srcdir)/external/sax -cp $(top_srcdir)/external/relaxngDatatype -cp $(top_srcdir)/external/jsr166 -cp . -cp $(PATH_TO_GLIBJ_ZIP) -cp $(PATH_TO_ESCHER)
+ @GCJ_JAVAC_FALSE@JCOMPILER = $(JAVAC) $(JAVACFLAGS) $(JAVAC_MEM_OPT) -source 1.5 -target 1.5 -bootclasspath '' -classpath $(compile_classpath) -d . @classes
+ 
+ # handling source to bytecode compiler programs like gcj, jikes  and kjc

+ 8 - 4
jtools/ecj/Makefile

@@ -17,18 +17,22 @@ ${STAGING_JAVA_HOST_DIR}/usr/bin/ecj:
 		DYLD_LIBRARY_PATH=$(STAGING_JAVA_HOST_DIR)/usr/lib:$(STAGING_JAVA_HOST_DIR)/usr/lib64 \
 		LD_LIBRARY_PATH=$(STAGING_JAVA_HOST_DIR)/usr/lib:$(STAGING_JAVA_HOST_DIR)/usr/lib64 \
 		PATH=$(STAGING_JAVA_HOST_DIR)/usr/bin:$$PATH \
-	$(STAGING_JAVA_HOST_DIR)/usr/bin/gcj -g -O2 -findirect-dispatch \
+	$(STAGING_JAVA_HOST_DIR)/usr/bin/gcj -O2 -findirect-dispatch \
 		-o ${STAGING_JAVA_HOST_DIR}/usr/bin/ecj.native \
 		--main=org.eclipse.jdt.internal.compiler.batch.Main \
-		$(TOPDIR)/jtools_build/gcc-4.5.2/ecj.jar
-	$(CP) $(TOPDIR)/jtools_build/gcc-4.5.2/ecj.jar ${STAGING_JAVA_HOST_DIR}/usr/share/ecj.jar
+		$(TOPDIR)/jtools_build/gcc-$(GCJ_VER)/ecj.jar
+	#$(CP) $(TOPDIR)/jtools_build/gcc-$(GCJ_VER)/ecj.jar ${STAGING_JAVA_HOST_DIR}/usr/share/ecj.jar
 	echo "env LD_LIBRARY_PATH=$(STAGING_JAVA_HOST_DIR)/usr/lib:$(STAGING_JAVA_HOST_DIR)/usr/lib64 ${STAGING_JAVA_HOST_DIR}/usr/bin/ecj.native \$$@" > \
 		${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 \"\$$@\"" > \
+	mv ${STAGING_JAVA_HOST_DIR}/usr/bin/gij ${STAGING_JAVA_HOST_DIR}/usr/bin/gij.native
+	echo "env LD_LIBRARY_PATH=$(STAGING_JAVA_HOST_DIR)/usr/lib:$(STAGING_JAVA_HOST_DIR)/usr/lib64 ${STAGING_JAVA_HOST_DIR}/usr/bin/gij.native \"\$$@\"" > \
 		${STAGING_JAVA_HOST_DIR}/usr/bin/java
 	chmod u+x ${STAGING_JAVA_HOST_DIR}/usr/bin/java
+	echo "env LD_LIBRARY_PATH=$(STAGING_JAVA_HOST_DIR)/usr/lib:$(STAGING_JAVA_HOST_DIR)/usr/lib64 ${STAGING_JAVA_HOST_DIR}/usr/bin/gij.native \"\$$@\"" > \
+		${STAGING_JAVA_HOST_DIR}/usr/bin/gij
+	chmod u+x ${STAGING_JAVA_HOST_DIR}/usr/bin/gij
 	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

+ 12 - 0
jtools/files.needed

@@ -0,0 +1,12 @@
+cups.h;libcups
+jpeglib.h;libjpeg
+gif_lib.h;libgif
+png.h;libpng
+Xtos.h;libXt
+Xinerama.h;libXinerama
+Xrender.h;libXrender
+XTest.h;libXtst
+freetype.h;freetype
+asoundlib.h;libasound
+ffi.h;libffi
+Xproto.h;libXp

+ 2 - 2
jtools/gcj/Makefile

@@ -4,8 +4,8 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=		gcj
-PKG_VERSION:=		4.5.2
 PKG_RELEASE:=		1
+PKG_VERSION:=		4.5.3
 PKG_MD5SUM:=		d6559145853fbaaa0fd7556ed93bce9a
 PKG_SITES:=		${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/}
 DISTFILES:=		gcc-$(PKG_VERSION).tar.bz2
@@ -13,7 +13,6 @@ DISTFILES:=		gcc-$(PKG_VERSION).tar.bz2
 WRKDIST=		${WRKDIR}/gcc-${PKG_VERSION}
 
 include ../rules.mk
-
 GCJ_ENV+=		JAR=no
 
 install: ${STAGING_JAVA_HOST_DIR}/usr/bin/gcj
@@ -25,6 +24,7 @@ $(WRKBUILD)/.configured: ${WRKDIST}/.prepared
 			--prefix=/usr \
 			--enable-java-home \
 			--enable-languages=java \
+			--enable-shared \
 			--with-ffi \
 			--with-mpc=$(STAGING_HOST_DIR) \
 			--with-mpfr=$(STAGING_HOST_DIR) \

+ 4 - 3
jtools/openjdk/Makefile

@@ -6,7 +6,7 @@ include $(TOPDIR)/rules.mk
 PKG_NAME:=		openjdk
 PKG_VERSION:=		6
 PKG_EXTRAVER:=		b22-28_feb_2011
-PKG_RELEASE:=		1
+PKG_RELEASE:=		2
 PKG_MD5SUM:=		2d2bbbb0f9b81f1fec41ec730da8a933 \
 			fd3f35e8a8a2ef9a64c035ed66cea06d \
 			ef7a8b3624ea904bf584bc46d79b5e75 \
@@ -43,10 +43,11 @@ 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+=	JAVACFLAGS="-cp ${STAGING_JAVA_HOST_DIR}/usr/share/java/libgcj-$(GCJ_VER).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 PATH=$$PATH:$(STAGING_JAVA_HOST_DIR)/usr/bin
+OPENJDK_NATIVE_ENV+=	BOOTCLASSPATH="$(STAGING_JAVA_HOST_DIR)/usr/share/jamvm/classes.zip:$(STAGING_JAVA_HOST_DIR)/usr/share/classpath/glibj.zip"
 
 install: ${STAGING_JAVA_HOST_DIR}/bootstrap-jdk/bin/java
 
@@ -72,7 +73,7 @@ $(WRKDIST)/.configured: ${WRKDIST}/.extract
 		--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-ecj-jar=${STAGING_JAVA_HOST_DIR}/usr/share/java/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 \

+ 27 - 0
jtools/prereq.sh

@@ -0,0 +1,27 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+# test for existing /usr/include/asm
+if [ ! -d "/usr/include/asm" ]; then
+	echo "ERROR: directory \"/usr/include/asm\" not found."
+	echo "on some systems this is name asm-generic."
+	echo "try to create a link to the asm directory with"
+	echo "\"ln -s /usr/include/asm-generic /usr/include/asm\""
+	exit 1
+fi
+
+# test if all files from the files.needed file are available
+for LINE in `cat files.needed`; do
+
+	FILE=`echo ${LINE} | awk -F ";" '{print $1}'`
+	LIB=`echo ${LINE} | awk -F ";" '{print $2}'`
+
+	#echo -n "looking for development files of \"${LIB}\"..."
+	FOUND=`find /usr/include /usr/lib -name "${FILE}" | wc -l`
+	if [ ${FOUND} -lt 1 ]; then
+		echo "not found!";
+		echo "Please install the development header files for the library \"${LIB}\"."
+		exit 1
+	fi
+	
+done

+ 1 - 0
jtools/rules.mk

@@ -3,5 +3,6 @@
 
 WRKDIR_BASE=    ${JTOOLS_BUILD_DIR}
 WRKDIR=		${WRKDIR_BASE}
+GCJ_VER:=	4.5.3
 
 include ${TOPDIR}/mk/buildhlp.mk

+ 8 - 3
package/openjdk/Makefile

@@ -6,7 +6,7 @@ include $(TOPDIR)/rules.mk
 PKG_NAME:=		openjdk
 PKG_VERSION:=		6
 PKG_EXTRAVER:=		b22-28_feb_2011
-PKG_RELEASE:=		1
+PKG_RELEASE:=		2
 PKG_MD5SUM:=		2d2bbbb0f9b81f1fec41ec730da8a933 \
 			fd3f35e8a8a2ef9a64c035ed66cea06d \
 			ef7a8b3624ea904bf584bc46d79b5e75 \
@@ -91,14 +91,17 @@ CONFIGURE_ARGS+=	--disable-docs \
 			--with-jar=$(BOOTSTRAPJDK)/bin/jar \
 			--with-rmic=$(BOOTSTRAPJDK)/bin/rmic \
 			--with-native2ascii=$(BOOTSTRAPJDK)/bin/native2ascii \
+			--with-gcj=$(STAGING_JAVA_HOST_DIR)/usr/bin/gcj \
 			--without-rhino
 
+CONFIGURE_ENV+=		PATH=$(STAGING_JAVA_HOST_DIR)/usr/bin:$${PATH}:${STAGING_TARGET_DIR}/usr/bin
 MAKE_ENV+=		ALT_COMPILER_PATH=$(STAGING_HOST_DIR)/$(REAL_GNU_TARGET_NAME) \
+			PATH=$(STAGING_JAVA_HOST_DIR)/usr/bin:$${PATH}:${STAGING_TARGET_DIR}/usr/bin \
 			GCC_HONOUR_COPTS=s \
 			TARGET_ALIAS=$(GNU_TARGET_NAME) BUILD_ALIAS=$(GNU_HOST_NAME) HOST_ALIAS=$(GNU_TARGET_NAME)
 
 OPENJDK_NATIVE_ENV+=	ALT_COMPILER_PATH=$(STAGING_HOST_DIR)/$(REAL_GNU_TARGET_NAME) \
-			PATH=$${PATH}:${STAGING_TARGET_DIR}/usr/bin \
+			PATH=$(STAGING_JAVA_HOST_DIR)/usr/bin:$${PATH}:${STAGING_TARGET_DIR}/usr/bin \
 			GCC_HONOUR_COPTS=s CROSS_COMPILE_ARCH=$(ARCH) \
 			TARGET_ALIAS=$(GNU_TARGET_NAME) BUILD_ALIAS=$(GNU_HOST_NAME) HOST_ALIAS=$(GNU_TARGET_NAME)
 ALL_TARGET:=		icedtea
@@ -136,12 +139,14 @@ pre-configure:
 			--with-jar=$(BOOTSTRAPJDK)/bin/jar \
 			--with-rmic=$(BOOTSTRAPJDK)/bin/rmic \
 			--with-native2ascii=$(BOOTSTRAPJDK)/bin/native2ascii \
+			--with-gcj=$(STAGING_JAVA_HOST_DIR)/usr/bin/gcj \
+			--with-ecj-jar=$(STAGING_JAVA_HOST_DIR)/usr/share/java/ecj.jar \
 			--without-rhino ;\
 	mkdir -p $(WRKBUILD)/generated/sun/awt/X11/generator/ ; \
 	mkdir -p $(WRKBUILD)/openjdk.build/gensrc/sun/awt/X11/generator/ ; \
 	cp $(TOPDIR)/jtools/openjdk/files/sizes.* $(WRKBUILD)/generated/sun/awt/X11/generator/; \
 	cp $(TOPDIR)/jtools/openjdk/files/sizes.* $(WRKBUILD)/openjdk.build/gensrc/sun/awt/X11/generator/; \
-	$(MAKE) icedtea-ecj
+	env ${OPENJDK_NATIVE_ENV} $(MAKE) icedtea-ecj
 	# fixup symlinks to bootstrap jdk
 	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

+ 8 - 8
scripts/scan-pkgs.sh

@@ -80,7 +80,14 @@ if [[ -n $ADK_COMPILE_KRB5 ]]; then
 fi
 
 if [[ -n $ADK_COMPILE_OPENJDK ]]; then
-	NEED_ANT="$NEED_ANT openjdk"
+	NEED_ZIP="$NEED_ZIP openjdk"
+	NEED_GXX="$NEED_GXX openjdk"
+	NEED_XSLTPROC="$NEED_XSLTPROC openjdk"
+fi
+
+if [[ -n $ADK_COMPILE_OPENJDK ]]; then
+	cd ${TOPDIR}/jtools; bash prereq.sh
+	[ $? -ne 0 ] && out=1
 fi
 
 if [[ -n $ADK_PACKAGE_LIBXCB ]]; then
@@ -348,13 +355,6 @@ if [[ -n $NEED_FLEX ]]; then
 	fi
 fi
 
-if [[ -n $NEED_ANT ]]; then
-	if ! which ant >/dev/null 2>&1; then
-		echo >&2 You need ant to build $NEED_OPENJDK
-		out=1
-	fi
-fi
-
 if [[ -n $NEED_YASM ]]; then
 	if ! which yasm >/dev/null 2>&1; then
 		echo >&2 You need yasm to build $NEED_YASM

+ 6 - 0
target/linux/config/Config.in.kernel

@@ -49,6 +49,12 @@ config ADK_KERNEL_RD_LZO
 config ADK_KERNEL_KERNEL_LZO
 	boolean
 
+config ADK_KERNEL_RD_XZ
+	boolean
+
+config ADK_KERNEL_KERNEL_XZ
+	boolean
+
 config ADK_KERNEL_INITRAMFS_SOURCE
 	string
 	default ""

+ 8 - 3
target/x86/kernel.config

@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
 # Linux/x86 2.6.39 Kernel Configuration
-# Thu Jul 14 19:13:32 2011
+# Thu Aug  4 19:45:52 2011
 #
 # CONFIG_64BIT is not set
 CONFIG_X86_32=y
@@ -67,8 +67,8 @@ CONFIG_HAVE_KERNEL_XZ=y
 CONFIG_HAVE_KERNEL_LZO=y
 # CONFIG_KERNEL_GZIP is not set
 # CONFIG_KERNEL_BZIP2 is not set
-CONFIG_KERNEL_LZMA=y
-# CONFIG_KERNEL_XZ is not set
+# CONFIG_KERNEL_LZMA is not set
+CONFIG_KERNEL_XZ=y
 # CONFIG_KERNEL_LZO is not set
 # CONFIG_SWAP is not set
 CONFIG_SYSVIPC=y
@@ -873,6 +873,11 @@ CONFIG_DEFAULT_IO_DELAY_TYPE=0
 CONFIG_DEFAULT_SECURITY_DAC=y
 CONFIG_DEFAULT_SECURITY=""
 # CONFIG_CRYPTO is not set
+
+#
+# OCF Configuration
+#
+# CONFIG_OCF_OCF is not set
 CONFIG_HAVE_KVM=y
 # CONFIG_VIRTUALIZATION is not set
 # CONFIG_BINARY_PRINTF is not set