Forráskód Böngészése

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

Waldemar Brodkorb 10 éve
szülő
commit
8f14c0a6a9

+ 0 - 1
README

@@ -12,7 +12,6 @@ Before you can start you need to install some tools:
 - GNU awk
 - GNU sed
 - tar
-- patch
 - gzip
 - wget
 - libc headers

+ 2 - 2
mk/vars.mk

@@ -138,7 +138,7 @@ ifneq ($(ADK_DEBUG),)
 ifeq ($(ADK_DEBUG_OPTS),y)
 TARGET_CFLAGS+=		-g3 -fno-omit-frame-pointer $(ADK_TARGET_CFLAGS_OPT)
 else
-TARGET_CFLAGS+=		-g3 -fno-omit-frame-pointer
+TARGET_CFLAGS+=		-O0 -g3 -fno-omit-frame-pointer
 endif
 else
 TARGET_CPPFLAGS+=	-DNDEBUG
@@ -168,7 +168,7 @@ CXXFLAGS_FOR_BUILD?=    -O2 -Wall
 LDFLAGS_FOR_BUILD?= 	-L$(STAGING_HOST_DIR)/usr/lib
 FLAGS_FOR_BUILD=	${CPPFLAGS_FOR_BUILD} ${CFLAGS_FOR_BUILD} ${LDFLAGS_FOR_BUILD}
 
-PATCH=			${BASH} $(SCRIPT_DIR)/patch.sh
+PATCH=			PATH=${HOST_PATH} ${BASH} $(SCRIPT_DIR)/patch.sh
 SED:=			PATH=${HOST_PATH} sed -i -e
 LINUX_DIR:=		$(BUILD_DIR)/linux
 KERNEL_MODULE_FLAGS:=	ARCH=${ARCH} \

+ 1 - 0
package/bc/Makefile

@@ -10,6 +10,7 @@ PKG_MD5SUM:=		d44b5dddebd8a7a7309aea6c36fda117
 PKG_DESCR:=		arbitrary precision calculator language
 PKG_SECTION:=		utils
 PKG_BUILDDEP:=		m4-host flex-host
+HOST_BUILDDEP:=		m4-host flex-host
 PKG_URL:=		http://www.gnu.org/software/bc/
 PKG_SITES:=		http://ftp.gnu.org/pub/gnu/bc/
 

+ 1 - 1
package/busybox/files/busybox.postinst

@@ -5,7 +5,7 @@ add_rcconf network network YES
 add_rcconf crond crond NO
 add_rcconf watchdog watchdog NO
 add_rcconf watchdog_flags watchdog_flags '-t 10 -T 20'
-add_rcconf syslogd NO
+add_rcconf syslogd syslogd NO
 add_rcconf 'use "-C32" normally' syslogd_flags '-C32'
 add_rcconf inetd inetd NO
 add_rcconf ntpd ntpd NO

+ 4 - 0
package/ffmpeg/Makefile

@@ -100,7 +100,11 @@ $(eval $(call PKG_template,FFSERVER,ffserver,${PKG_VERSION}-${PKG_RELEASE},${PKG
 $(eval $(call PKG_template,FFPROBE,ffprobe,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_FFPROBE},${PKGSC_FFPROBE}))
 #$(eval $(call PKG_template,FFPLAY,ffplay,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_FFPLAY},${PKGSD_FFPLAY},${PKGSC_FFPLAY}))
 
+ifeq ($(ADK_DEBUG),y)
+TARGET_CFLAGS:=		$(subst O0,O2,$(TARGET_CFLAGS))
+else
 TARGET_CFLAGS:=		$(subst Os,O2,$(TARGET_CFLAGS))
+endif
 TARGET_CPPFLAGS+=	-D_POSIX_SOURCE -D_GNU_SOURCE
 
 ifeq ($(ADK_TARGET_CPU_WITH_MMX),y)

+ 0 - 33
package/grub-bin/Makefile

@@ -1,33 +0,0 @@
-# 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
-
-# compiled with i486 toolchain, statically linked with uClibc
-# cross-compiling is difficult, so provide a binary package
-PKG_NAME:=		grub-bin
-PKG_VERSION:=		1.98
-PKG_RELEASE:=		2
-PKG_MD5SUM:=		50dbe739776f904c318be05faf1d7ce5
-PKG_DESCR:=		GRUB2 bootloader (binary package)
-PKG_SECTION:=		boot
-PKG_SITES:=		http://openadk.org/distfiles/
-PKG_URL:=		http://www.gnu.org/software/grub
-
-PKG_ARCH_DEPENDS:=	x86 x86_64
-
-PKG_CFLINE_GRUB_BIN:=	select BUSYBOX_FEATURE_STAT_FORMAT@
-PKG_CFLINE_GRUB_BIN+=	depends on !ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK && !ADK_TARGET_ROOTFS_INITRAMFS
-
-include ${TOPDIR}/mk/package.mk
-
-$(eval $(call PKG_template,GRUB_BIN,grub-bin,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-
-CONFIG_STYLE:=		manual
-BUILD_STYLE:=		manual
-INSTALL_STYLE:=		manual
-
-do-install:
-	${CP} ${WRKBUILD}/* ${IDIR_GRUB_BIN}/
-
-include ${TOPDIR}/mk/pkg-bottom.mk

+ 19 - 8
package/grub/Makefile

@@ -5,9 +5,9 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=		grub
 PKG_VERSION:=		2.00
-PKG_RELEASE:=		4
+PKG_RELEASE:=		5
 PKG_MD5SUM:=		e927540b6eda8b024fb0391eeaa4091c
-PKG_DESCR:=		GRUB2 bootloader (source package)
+PKG_DESCR:=		GRUB2 bootloader
 PKG_SECTION:=		boot
 PKG_BUILDDEP:=		bison-host qemu-host
 PKG_URL:=		http://www.gnu.org/software/grub
@@ -16,6 +16,9 @@ PKG_SITES:=		ftp://ftp.gnu.org/gnu/grub/
 PKG_ARCH_DEPENDS:=	x86 x86_64 mips
 PKG_NOPARALLEL:=	1
 
+PKG_SUBPKGS:=		GRUB GRUB_TOOLS
+PKGSD_GRUB_TOOLS:=	GRUB2 tools
+
 PKG_CHOICES_GRUB:=	PC EFI
 PKGCD_PC:=		build for PC BIOS
 PKGCD_EFI:=		build for EFI
@@ -23,7 +26,10 @@ PKGCD_EFI:=		build for EFI
 include $(TOPDIR)/mk/package.mk
 
 $(eval $(call PKG_template,GRUB,grub,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+$(eval $(call PKG_template,GRUB_TOOLS,grub-tools,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
+# core.img is generated via
+# grub-mkimage -O ${GRUB_ARCH} -o core.img -c embed.cfg ${GRUB_MODULES}
 GRUB_MODULES:=		ext2 part_msdos biosdisk
 
 ifeq ($(ADK_PACKAGE_GRUB_PC),y)
@@ -35,11 +41,8 @@ GRUB_ARCH:=		x86_64-efi
 CONFIGURE_ARGS+=	--with-platform=efi
 endif
 
-TARGET_CFLAGS+=         -static
-TARGET_LDFLAGS+=        -static
 CONFIGURE_ARGS+=	--disable-grub-mkfont \
 			--enable-efiemu=no \
-			--enable-liblzma=no \
 			--enable-device-mapper=no \
 			--enable-libzfs=no \
 			--disable-werror
@@ -49,8 +52,16 @@ grub-install:
 	${INSTALL_DIR} $(IDIR_GRUB)/boot/grub/${GRUB_ARCH}
 	${CP} ${WRKINST}/usr/lib/grub/${GRUB_ARCH}/*{mod,lst,img} \
 		$(IDIR_GRUB)/boot/grub/${GRUB_ARCH}/
-	PATH='${HOST_PATH}' qemu-i386 ${WRKBUILD}/grub-mkimage \
-		-o $(IDIR_GRUB)/boot/grub/core.img -O ${GRUB_ARCH} \
-		-c ./files/embed.cfg ${GRUB_MODULES}
+	${CP} ./files/core.img.${GRUB_ARCH} \
+		$(IDIR_GRUB)/boot/grub/core.img
+
+grub-tools-install:
+	${INSTALL_DIR} $(IDIR_GRUB_TOOLS)/usr/{sbin,bin}
+	${INSTALL_BIN} ${WRKINST}/usr/sbin/grub-install \
+		$(IDIR_GRUB_TOOLS)/usr/sbin
+	${INSTALL_BIN} ${WRKINST}/usr/sbin/grub-bios-setup \
+		$(IDIR_GRUB_TOOLS)/usr/sbin
+	${INSTALL_BIN} ${WRKINST}/usr/bin/grub-mkimage \
+		$(IDIR_GRUB_TOOLS)/usr/bin
 
 include ${TOPDIR}/mk/pkg-bottom.mk

BIN
package/grub/files/core.img.i386-pc


+ 2 - 0
package/grub/files/embed.cfg

@@ -0,0 +1,2 @@
+set root=(hd0,1)
+set prefix=($root)/boot/grub

+ 8 - 3
package/patch/Makefile

@@ -4,20 +4,25 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=		patch
-PKG_VERSION:=		2.5.9
+PKG_VERSION:=		2.7.1
 PKG_RELEASE:=		1
-PKG_MD5SUM:=		dacfb618082f8d3a2194601193cf8716
-PKG_DESCR:=		GNU patch
+PKG_MD5SUM:=		95dd8d7e41dcbcecdd5cd88ef915378d
+PKG_DESCR:=		GNU patch utility
 PKG_SECTION:=		utils
 PKG_URL:=		http://www.gnu.org/software/patch/
 PKG_SITES:=		${MASTER_SITE_GNU:=patch/}
 
+include $(TOPDIR)/mk/host.mk
 include $(TOPDIR)/mk/package.mk
 
+$(eval $(call HOST_template,PATCH,patch,$(PKG_VERSION)-${PKG_RELEASE}))
 $(eval $(call PKG_template,PATCH,patch,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
+HOST_STYLE:=		auto
+
 patch-install:
 	$(INSTALL_DIR) $(IDIR_PATCH)/usr/bin
 	$(INSTALL_BIN) $(WRKINST)/usr/bin/patch $(IDIR_PATCH)/usr/bin
 
+include ${TOPDIR}/mk/host-bottom.mk
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 7 - 6
scripts/scan-tools.sh

@@ -113,12 +113,6 @@ if ! which gzip >/dev/null 2>&1; then
 	out=1
 fi
 
-if ! which patch >/dev/null 2>&1; then
-	echo You must install patch to continue.
-	echo
-	out=1
-fi
-
 cat >test.c <<-'EOF'
 	#include <stdio.h>
 	#include <zlib.h>
@@ -239,6 +233,12 @@ if ! which m4 >/dev/null 2>&1; then
 	host_build_m4=1
 fi
 
+host_build_patch=0
+if ! which patch >/dev/null 2>&1; then
+	echo "No patch found, will build one."
+	host_build_patch=1
+fi
+
 host_build_pkgconf=0
 if ! which pkgconf >/dev/null 2>&1; then
 	echo "No pkgconf found, will build one."
@@ -317,6 +317,7 @@ if [ $host_build_bzip2 -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_BZIP2
 if [ $host_build_file -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_FILE" >> $topdir/target/config/Config.in.prereq ;fi
 if [ $host_build_flex -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_FLEX" >> $topdir/target/config/Config.in.prereq ;fi
 if [ $host_build_m4 -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_M4" >> $topdir/target/config/Config.in.prereq ;fi
+if [ $host_build_patch -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_PATCH" >> $topdir/target/config/Config.in.prereq ;fi
 if [ $host_build_pkgconf -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_PKGCONF" >> $topdir/target/config/Config.in.prereq ;fi
 if [ $host_build_findutils -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_FINDUTILS" >> $topdir/target/config/Config.in.prereq ;fi
 if [ $host_build_xz -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_XZ" >> $topdir/target/config/Config.in.prereq ;fi

+ 5 - 0
target/config/Config.in.tools

@@ -14,6 +14,7 @@ config ADK_HOST_BUILD_BASH
 
 config ADK_HOST_BUILD_BC
 	boolean
+	select ADK_HOST_BUILD_FLEX
 	default n
 
 config ADK_HOST_BUILD_BISON
@@ -40,6 +41,10 @@ config ADK_HOST_BUILD_M4
 	boolean
 	default n
 
+config ADK_HOST_BUILD_PATCH
+	boolean
+	default n
+
 config ADK_HOST_BUILD_PKGCONF
 	boolean
 	default n

+ 4 - 0
target/x86/Makefile

@@ -9,7 +9,11 @@ include $(TOPDIR)/mk/image.mk
 
 KERNEL:=$(LINUX_DIR)/arch/x86/boot/bzImage
 ifeq ($(ADK_TARGET_QEMU_WITH_BOOTLOADER),y)
+ifeq ($(ADK_TARGET_QEMU_WITHOUT_GRAPHIC),y)
+CREATE:=./scripts/create.sh -g -t
+else
 CREATE:=./scripts/create.sh -g
+endif
 else
 CREATE:=./scripts/create.sh
 endif

+ 1 - 0
target/x86/sys-available/generic-pc

@@ -4,6 +4,7 @@ config ADK_TARGET_SYSTEM_GENERIC_PC
 	select ADK_generic_pc
 	select ADK_CPU_I486
 	select ADK_TARGET_KERNEL_BZIMAGE
+	select ADK_PACKAGE_GRUB
 	help
 	 Support for generic PC (i486).
 

+ 1 - 1
target/x86/sys-available/ibm-x40

@@ -21,6 +21,6 @@ config ADK_TARGET_SYSTEM_IBM_X40
 	select ADK_TARGET_WITH_PP
 	select ADK_TARGET_WITH_ROOT_RW
 	select ADK_TARGET_KERNEL_BZIMAGE
-	select ADK_PACKAGE_GRUB_BIN
+	select ADK_PACKAGE_GRUB
 	help
          System profile for IBM X40 laptop.

+ 14 - 1
target/x86_64/Makefile

@@ -8,6 +8,15 @@ include $(TOPDIR)/mk/kernel-build.mk
 include $(TOPDIR)/mk/image.mk
 
 KERNEL:=$(LINUX_DIR)/arch/x86/boot/bzImage
+ifeq ($(ADK_TARGET_QEMU_WITH_BOOTLOADER),y)
+ifeq ($(ADK_TARGET_QEMU_WITHOUT_GRAPHIC),y)
+CREATE:=./scripts/create.sh -g -t
+else
+CREATE:=./scripts/create.sh -g
+endif
+else
+CREATE:=./scripts/create.sh
+endif
 
 ifeq ($(ADK_TARGET_FS),archive)
 imageinstall: $(FW_DIR)/$(ROOTFSTARBALL)
@@ -15,11 +24,15 @@ imageinstall: $(FW_DIR)/$(ROOTFSTARBALL)
 ifeq ($(ADK_TARGET_SYSTEM_QEMU_X86_64),y)
 	@cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL)
 	@echo "Use following command to create a QEMU Image:"
-	@echo "./scripts/create.sh qemu-${CPU_ARCH}.img $(FW_DIR)/$(ROOTFSTARBALL)"
+	@echo "$(CREATE) qemu-${CPU_ARCH}.img $(FW_DIR)/$(ROOTFSTARBALL)"
 	@echo "Start qemu with following command line:"
+ifeq ($(ADK_TARGET_QEMU_WITH_BOOTLOADER),y)
+	@echo 'qemu-system-x86_64 ${ADK_QEMU_ARGS} -net user -net nic,model=e1000 qemu-${CPU_ARCH}.img'
+else
 	@echo 'qemu-system-x86_64 ${ADK_QEMU_ARGS} -net user -net nic,model=e1000 -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${CPU_ARCH}.img'
 endif
 endif
+endif
 ifeq ($(ADK_TARGET_FS),initramfsarchive)
 imageinstall: $(FW_DIR)/$(ROOTFSUSERTARBALL)
 	@cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL)