Browse Source

a bunch of adk-test-framework fixes.

Waldemar Brodkorb 10 years ago
parent
commit
ec47c602c2

+ 6 - 7
mk/build.mk

@@ -507,15 +507,15 @@ bulktoolchain:
 	done
 
 test-framework:
-	if [ -z "$(LIBC)" ];then \
+	@if [ -z "$(LIBC)" ];then \
 		libc="glibc uclibc musl"; \
 	else \
 		libc="$(LIBC)"; \
 	fi; \
 	for libc in $$libc;do \
 		( \
-			for arch in arm microblaze microblazeel mips mipsel mips64 mips64el ppc ppc64 sh4 sh4eb sparc sparc64 i686 x86_64;do \
-				tarch=$$(echo $$arch|sed -e "s#el##" -e "s#eb##" -e "s#mips64.*#mips#" -e "s#i686#x86#" -e "s#sh4#sh#"); \
+			for arch in arm armhf microblaze microblazeel mips mipsel mips64 mips64el ppc ppc64 sh4 sh4eb sparc sparc64 i686 x86_64;do \
+				tarch=$$(echo $$arch|sed -e "s#el##" -e "s#eb##" -e "s#mips64.*#mips#" -e "s#i686#x86#" -e "s#sh4#sh#" -e "s#hf##"); \
 				echo === building qemu-$$arch for $$libc with $$tarch on $$(date); \
 				$(GMAKE) prereq && \
 				$(GMAKE) ARCH=$$tarch SYSTEM=qemu-$$arch LIBC=$$libc FS=archive COLLECTION=test defconfig; \
@@ -523,12 +523,11 @@ test-framework:
 				tabi=$$(grep ^ADK_TARGET_ABI= .config|cut -d \" -f 2);\
 				if [ -z $$tabi ];then abi="";else abi=_$$tabi;fi; \
 				if [ -d root ];then rm -rf root;fi; \
-				echo cp -a root_qemu_$${arch}_$${libc}$${abi} root; \
 				cp -a root_qemu_$${arch}_$${libc}$${abi} root; \
-				mkdir -p $(TOPDIR)/firmware/qemu/$$tarch; \
-				tar cJvf $(TOPDIR)/firmware/qemu/$$tarch/root.tar.xz root; \
+				mkdir -p $(TOPDIR)/firmware/qemu/$$arch; \
+				tar cJvf $(TOPDIR)/firmware/qemu/$$arch/root.tar.xz root; \
 				cp $(TOPDIR)/firmware/qemu_$${arch}_$${libc}$${abi}/qemu-$${arch}-archive-kernel \
-					$(TOPDIR)/firmware/qemu/$$tarch/kernel; \
+					$(TOPDIR)/firmware/qemu/$$arch/kernel; \
 				rm .config; \
 			done; \
 		) 2>&1 | tee $(TOPDIR)/firmware/test-framework-build.log; \

+ 0 - 3
mk/rootfs.mk

@@ -10,9 +10,6 @@ endef
 
 ifeq ($(ADK_HARDWARE_QEMU),y)
 MTDDEV:=	root=/dev/mtdblock0
-ifeq ($(ADK_TARGET_ROOTFS_ARCHIVE),y)
-ROOTFS:=	root=/dev/sda1
-endif
 ifeq ($(ADK_TARGET_QEMU_WITH_VIRTIO),y)
 ROOTFS:=	root=/dev/vda1
 endif

+ 1 - 1
package/adk-test-tools/Makefile

@@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=		adk-test-tools
 PKG_VERSION:=		0.1
-PKG_RELEASE:=		1
+PKG_RELEASE:=		3
 PKG_DESCR:=		helper tools and scripts for adk-test-framework
 PKG_SECTION:=		misc
 PKG_URL:=		http://openadk.org/

+ 3 - 2
package/adk-test-tools/files/test.init

@@ -4,8 +4,9 @@
 [[ $1 = autostart ]] || exit 0
 echo "Starting test script ..."
 if [ -x /run.sh ];then
-	exec /run.sh
+	/run.sh
+	quit
 else
 	echo "no run.sh found"
+	quit
 fi
-quit

+ 1 - 10
package/base-files/src/etc/init.d/rcK

@@ -4,15 +4,6 @@ export PATH=/bin:/sbin:/usr/bin:/usr/sbin
 	grep '^#INIT ' /etc/init.d/* | \
 	    sort -rnk2 | \
 	    while read line; do
-		shebang=$(sed -n '1s/^#![	 ]*//p' ${line%%:*})
-		case $shebang in
-		*[\	\ ]*) shebang=\'$(echo X"$shebang" | sed \
-		    -e 's/^X//' -e "s/'/'\\\\''/g" \
-		    -e 's/^\([^	 ][^	 ]*\)[	 ]*$/\1/' \
-		    -e 's/^\([^	 ][^	 ]*\)[	 ][	 ]*\(..*\)$/\1 \2/' \
-		    -e 's/^\([^ ][^ ]*\) /\1'\'' '\''/')\' ;;
-		esac
-		${shebang:-/bin/sh} ${line%%:*} autostop 2>&1
+		sh ${line%%:*} autostop
 	done
-	test -e /etc/rc.shutdown && (/bin/sh /etc/rc.shutdown) 2>&1
 } | logger -s -p 6 -t ''

+ 1 - 2
package/base-files/src/etc/init.d/rcS

@@ -5,11 +5,10 @@ if [ -f /proc/sys/kernel/printk ];then
 fi
 echo "System initialization ..."
 export PATH=/bin:/sbin:/usr/bin:/usr/sbin
-ln -s /proc/self/fd/2 /dev/stderr
 {
 	grep '^#INIT ' /etc/init.d/* | \
 	    sort -nk2 | \
 	    while read line; do
 		sh ${line%%:*} autostart
 	    done
-} | tee /dev/stderr |logger -p 6 -t ''
+} | logger -s -p 6 -t ''

+ 1 - 1
package/cfgfs/Makefile

@@ -16,7 +16,7 @@ PKG_CFLINE_CFGFS+=	select BUSYBOX_MD5SUM@
 PKG_CFLINE_CFGFS+=	select BUSYBOX_XARGS@
 PKG_CFLINE_CFGFS+=	select BUSYBOX_FEATURE_SORT_BIG@
 PKG_CFLINE_CFGFS+=	depends on !ADK_TARGET_ROOTFS_NFSROOT && !ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK && !ADK_TARGET_ROOTFS_INITRAMFS && !ADK_TARGET_ROOTFS_JFFS2 && !ADK_TARGET_ROOTFS_SQUASHFS
-PKG_DFLT_CFGFS:=	y if !(ADK_TOOLCHAIN_ONLY || ADK_TOOLCHAIN_ARCHIVE)
+PKG_DFLT_CFGFS:=	y if !(ADK_TOOLCHAIN_ONLY || ADK_TOOLCHAIN_ARCHIVE || ADK_PKG_TEST)
 
 WRKDIST=		${WRKDIR}/${PKG_NAME}-${PKG_VERSION}
 NO_DISTFILES:=		1

+ 2 - 0
target/Makefile

@@ -53,6 +53,8 @@ config-prepare: $(TOPDIR)/.config
 	    while IFS='=' read symbol value; do \
 		sed -i -e "/^# $$symbol/d" ${BUILD_DIR}/.kernelconfig.board; \
 	done;)
+	@sed -i -e 's#^\(CONFIG_.*CMDLINE="\)\(.*\)"#\1\2 init=/sbin/init"#' \
+		${BUILD_DIR}/.kernelconfig.board
 	@sed -i -e 's#^\(CONFIG_.*CMDLINE="\)\(.*\)"#\1\2 ${FS_CMDLINE}"#' \
 		${BUILD_DIR}/.kernelconfig.board
 ifneq ($(ADK_TARGET_CMDLINE),)

+ 0 - 1
target/arm/kernel/qemu-arm-versatilepb

@@ -18,7 +18,6 @@ CONFIG_DTC=y
 CONFIG_OF=y
 CONFIG_SCSI=y
 CONFIG_SCSI_DMA=y
-CONFIG_SCSI_PROC_FS=y
 CONFIG_BLK_DEV_SD=y
 CONFIG_SCSI_SPI_ATTRS=y
 CONFIG_SCSI_LOWLEVEL=y

+ 9 - 0
target/arm/sys-available/qemu-armhf

@@ -0,0 +1,9 @@
+config ADK_TARGET_SYSTEM_QEMU_ARMHF
+	bool "Qemu Emulator (hard-float)"
+	select ADK_arm
+	select ADK_qemu_arm
+	select ADK_little
+	select ADK_HARDWARE_QEMU
+	select ADK_TARGET_KERNEL_ZIMAGE
+	help
+	 Support for Qemu Emulator (armhf).

+ 18 - 6
target/config/Config.in

@@ -278,22 +278,34 @@ config ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
 
 endchoice
 
+choice
+prompt "Qemu ARM Emulation (hard-float)"
+depends on ADK_TARGET_SYSTEM_QEMU_ARMHF
+
+config ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9
+	boolean "ARM Ltd. Versatile Express for Cortex-A9"
+	select ADK_hard_float
+	select ADK_eabihf
+	select ADK_CPU_CORTEX_A9
+
+endchoice
+
 choice
 prompt "Qemu ARM Emulation"
 depends on ADK_TARGET_SYSTEM_QEMU_ARM
 
+config ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9
+	boolean "ARM Ltd. Versatile Express for Cortex-A9"
+	select ADK_soft_float
+	select ADK_eabi
+	select ADK_CPU_CORTEX_A9
+
 config ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB
 	boolean "ARM Ltd. Versatile/PB"
 	select ADK_soft_float
 	select ADK_eabi
 	select ADK_CPU_ARM926EJ_S
 
-config ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9
-	boolean "ARM Ltd. Versatile Express for Cortex-A9"
-	select ADK_hard_float
-	select ADK_eabihf
-	select ADK_CPU_CORTEX_A9
-
 config ADK_TARGET_QEMU_ARM_MODEL_SPITZ
 	boolean "Xscale PXA270 Spitz PDA"
 	select ADK_soft_float

+ 1 - 0
target/linux/kernel.config

@@ -15,6 +15,7 @@ CONFIG_INET=y
 CONFIG_PROC_FS=y
 CONFIG_PROC_SYSCTL=y
 CONFIG_BLOCK=y
+CONFIG_BLK_DEV=y
 CONFIG_FILE_LOCKING=y
 CONFIG_SYSFS=y
 CONFIG_TMPFS=y

+ 3 - 0
target/packages/pkg-available/test

@@ -5,6 +5,9 @@ config ADK_PKG_TEST
 	select ADK_PACKAGE_STRACE
 	select ADK_PACKAGE_SOCAT
 	select ADK_PACKAGE_MAKE
+	select ADK_KERNEL_BLK_DEV_INITRD
+	select ADK_KERNEL_COMP_XZ
+	select ADK_KERNEL_INITRAMFS_COMPRESSION_XZ
 	help
 	  Package collection used to build adk-test-framework root
 	  filesystem.