summaryrefslogtreecommitdiff
path: root/mk
diff options
context:
space:
mode:
Diffstat (limited to 'mk')
-rw-r--r--mk/build.mk54
-rw-r--r--mk/image.mk12
-rw-r--r--mk/kernel-build.mk11
-rw-r--r--mk/kernel-vars.mk31
-rw-r--r--mk/mirrors.mk13
-rw-r--r--mk/modules.mk13
-rw-r--r--mk/rootfs.mk3
7 files changed, 52 insertions, 85 deletions
diff --git a/mk/build.mk b/mk/build.mk
index c4371f477..90168586a 100644
--- a/mk/build.mk
+++ b/mk/build.mk
@@ -215,16 +215,11 @@ switch:
fi \
fi
-ifeq (${ADK_TARGET_KERNEL64},y)
-KERNEL_CFG:=kernel64.config
-else
-KERNEL_CFG:=kernel.config
-endif
-
kernelconfig:
- cp $(TOPDIR)/target/$(ADK_TARGET_ARCH)/${KERNEL_CFG} $(BUILD_DIR)/linux/.config
- ${KERNEL_MAKE_ENV} ${MAKE} ARCH=$(ARCH) ${KERNEL_MAKE_OPTS} -C $(BUILD_DIR)/linux menuconfig
- cp $(BUILD_DIR)/linux/.config $(TOPDIR)/target/$(ADK_TARGET_ARCH)/${KERNEL_CFG}
+ ${KERNEL_MAKE_ENV} ${MAKE} \
+ ARCH=$(ARCH) \
+ ${KERNEL_MAKE_OPTS} \
+ -C $(BUILD_DIR)/linux menuconfig
# create a new package from package/.template
newpackage:
@@ -370,12 +365,6 @@ endif
|sed -e "s#^config \(.*\)#\1=y#" \
>> $(TOPDIR)/.defconfig; \
fi
- @if [ ! -z "$(PKG)" ];then \
- grep "^config" target/config/Config.in \
- |grep -i "$(PKG)" \
- |sed -e "s#^config \(.*\)#\1=y#" \
- >> $(TOPDIR)/.defconfig; \
- fi
@if [ ! -z "$(LIBC)" ];then \
grep "^config" target/config/Config.in \
|grep -i "$(LIBC)" \
@@ -434,12 +423,6 @@ endif
|sed -e "s#^config \(.*\)#\1=y#" \
>> $(TOPDIR)/all.config; \
fi
- @if [ ! -z "$(PKG)" ];then \
- grep "^config" target/config/Config.in \
- |grep -i "$(PKG)" \
- |sed -e "s#^config \(.*\)#\1=y#" \
- >> $(TOPDIR)/all.config; \
- fi
@if [ ! -z "$(LIBC)" ];then \
grep "^config" target/config/Config.in \
|grep -i "$(LIBC)" \
@@ -487,7 +470,7 @@ endif # ! ifeq ($(strip $(ADK_HAVE_DOT_CONFIG)),y)
# build all target architecture and libc combinations (toolchain only)
bulktoolchain:
- if [ -z "$(LIBC)" ];then \
+ @if [ -z "$(LIBC)" ];then \
libc="glibc uclibc musl"; \
else \
libc="$(LIBC)"; \
@@ -497,43 +480,46 @@ bulktoolchain:
mkdir -p ${TOPDIR}/firmware; \
( \
echo === building $$arch $$libc toolchain-$$arch on $$(date); \
- tarch=$$(echo $$arch|sed -e "s#el##" -e "s#eb##" -e "s#mips64.*#mips#"); \
+ tarch=$$(echo $$arch|sed -e "s#el##" -e "s#eb##" -e "s#mips64.*#mips#" -e "s#hf##"); \
if [ -f ${TOPDIR}/firmware/toolchain_$${arch}_$${libc}.tar.xz ];then exit;fi; \
$(GMAKE) prereq && \
$(GMAKE) ARCH=$$tarch SYSTEM=toolchain-$$arch LIBC=$$libc defconfig; \
$(GMAKE) VERBOSE=1 all; if [ $$? -ne 0 ]; then touch .exit; break;fi; \
- tar -cvJf ${TOPDIR}/firmware/toolchain_$${arch}_$${libc}.tar.xz host_* target_$${arch}_$${libc}*; \
+ if [ $$arch = "armhf" ];then arch=arm; else arch=$$arch;fi; \
+ tabi=$$(grep ^ADK_TARGET_ABI= .config|cut -d \" -f 2);\
+ if [ -z $$tabi ];then abi="";else abi=_$$tabi;fi; \
+ tar -cvJf ${TOPDIR}/firmware/toolchain_$${arch}_$${libc}$${abi}.tar.xz host_* target_$${arch}_$${libc}$${abi}; \
$(GMAKE) cleantoolchain; \
rm .config; \
- ) 2>&1 | tee $(TOPDIR)/firmware/toolchain_$${arch}_$${libc}_build.log; \
+ ) 2>&1 | tee $(TOPDIR)/firmware/toolchain_build.log; \
if [ -f .exit ];then break;fi \
done <${TOPDIR}/target/tarch.lst ;\
if [ -f .exit ];then echo "Bulk build failed!"; rm .exit; exit 1;fi \
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; \
$(GMAKE) VERBOSE=1 all; if [ $$? -ne 0 ]; then touch .exit; exit 1;fi; \
tabi=$$(grep ^ADK_TARGET_ABI= .config|cut -d \" -f 2);\
if [ -z $$tabi ];then abi="";else abi=_$$tabi;fi; \
+ if [ $$arch = "armhf" ];then qarch=arm; else qarch=$$arch;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; \
- cp $(TOPDIR)/firmware/qemu_$${arch}_$${libc}$${abi}/qemu-$${arch}-archive-kernel \
- $(TOPDIR)/firmware/qemu/$$tarch/kernel; \
+ cp -a root_qemu_$${qarch}_$${libc}$${abi} root; \
+ mkdir -p $(TOPDIR)/firmware/qemu/$$arch; \
+ tar cJvf $(TOPDIR)/firmware/qemu/$$arch/root.tar.xz root; \
+ cp $(TOPDIR)/firmware/qemu_$${qarch}_$${libc}$${abi}/qemu-$${qarch}-archive-kernel \
+ $(TOPDIR)/firmware/qemu/$$arch/kernel; \
rm .config; \
done; \
) 2>&1 | tee $(TOPDIR)/firmware/test-framework-build.log; \
diff --git a/mk/image.mk b/mk/image.mk
index 6721549b5..bbe9d47ac 100644
--- a/mk/image.mk
+++ b/mk/image.mk
@@ -146,16 +146,6 @@ ${FW_DIR}/${ROOTFSUSERTARBALL}: ${TARGET_DIR}
${STAGING_TARGET_DIR}/${INITRAMFS}_list: ${TARGET_DIR}
$(BASH) ${LINUX_DIR}/scripts/gen_initramfs_list.sh -u squash -g squash \
${TARGET_DIR}/ >$@
- ( \
- echo "nod /dev/console 0644 0 0 c 5 1"; \
- echo "nod /dev/tty 0644 0 0 c 5 0"; \
- for i in 0 1 2 3 4; do \
- echo "nod /dev/tty$$i 0644 0 0 c 4 $$$$i"; \
- done; \
- echo "nod /dev/systty 0644 0 0 c 4 0"; \
- echo "nod /dev/null 0644 0 0 c 1 3"; \
- echo "nod /dev/ram 0655 0 0 b 1 1"; \
- ) >>$@
${FW_DIR}/${INITRAMFS}: ${STAGING_TARGET_DIR}/${INITRAMFS}_list
${LINUX_DIR}/usr/gen_init_cpio ${STAGING_TARGET_DIR}/${INITRAMFS}_list | \
@@ -171,7 +161,7 @@ ${FW_DIR}/${ROOTFSJFFS2}: ${TARGET_DIR}
--pad=$(ADK_TARGET_MTD_SIZE) -o ${FW_DIR}/${ROOTFSJFFS2} $(MAKE_TRACE)
createinitramfs: ${STAGING_TARGET_DIR}/${INITRAMFS}_list
- ${SED} 's/.*CONFIG_\(RD_\|XZ_\|BLK_DEV_INITRD\|INITRAMFS_\).*//' \
+ ${SED} 's/.*CONFIG_\(RD_\|BLK_DEV_INITRD\|INITRAMFS_\).*//' \
${LINUX_DIR}/.config
( \
echo "CONFIG_BLK_DEV_INITRD=y"; \
diff --git a/mk/kernel-build.mk b/mk/kernel-build.mk
index f95796950..ffb612334 100644
--- a/mk/kernel-build.mk
+++ b/mk/kernel-build.mk
@@ -37,24 +37,19 @@ $(LINUX_DIR)/.prepared: $(TOOLCHAIN_BUILD_DIR)/w-$(PKG_NAME)-$(PKG_VERSION)-$(PK
$(LINUX_DIR)/.config: $(LINUX_DIR)/.prepared $(BUILD_DIR)/.kernelconfig $(TOPDIR)/mk/modules.mk
$(TRACE) target/$(ADK_TARGET_ARCH)-kernel-configure
-for f in $(TARGETS);do if [ -f $$f ];then rm $$f;fi;done
-ifeq ($(ADK_USE_KERNEL_MINICONFIG),y)
$(CP) $(BUILD_DIR)/.kernelconfig $(LINUX_DIR)/mini.config
- ${KERNEL_MAKE_ENV} $(MAKE) ${KERNEL_MAKE_OPTS} KCONFIG_ALLCONFIG=mini.config allnoconfig $(MAKE_TRACE)
-else
- $(CP) $(BUILD_DIR)/.kernelconfig $(LINUX_DIR)/.config
- echo N | ${KERNEL_MAKE_ENV} $(MAKE) ${KERNEL_MAKE_OPTS} oldconfig $(MAKE_TRACE)
-endif
+ ${KERNEL_MAKE_ENV} $(MAKE) -C "${LINUX_DIR}" ${KERNEL_MAKE_OPTS} KCONFIG_ALLCONFIG=mini.config allnoconfig $(MAKE_TRACE)
touch -c $(LINUX_DIR)/.config
$(LINUX_DIR)/$(KERNEL_FILE): $(LINUX_DIR)/.config
$(TRACE) target/$(ADK_TARGET_ARCH)-kernel-compile
- ${KERNEL_MAKE_ENV} $(MAKE) ${KERNEL_MAKE_OPTS} -j${ADK_MAKE_JOBS} LOCALVERSION="" $(KERNEL_TARGET) modules $(MAKE_TRACE)
+ ${KERNEL_MAKE_ENV} $(MAKE) -C "${LINUX_DIR}" ${KERNEL_MAKE_OPTS} -j${ADK_MAKE_JOBS} LOCALVERSION="" $(KERNEL_TARGET) modules $(MAKE_TRACE)
touch -c $(LINUX_DIR)/$(KERNEL_FILE)
$(LINUX_BUILD_DIR)/modules: $(LINUX_DIR)/$(KERNEL_FILE)
$(TRACE) target/$(ADK_TARGET_ARCH)-kernel-modules-install
rm -rf $(LINUX_BUILD_DIR)/modules
- ${KERNEL_MAKE_ENV} $(MAKE) ${KERNEL_MAKE_OPTS} DEPMOD=true \
+ ${KERNEL_MAKE_ENV} $(MAKE) -C "${LINUX_DIR}" ${KERNEL_MAKE_OPTS} DEPMOD=true \
INSTALL_MOD_PATH=$(LINUX_BUILD_DIR)/modules \
LOCALVERSION="" \
modules_install $(MAKE_TRACE)
diff --git a/mk/kernel-vars.mk b/mk/kernel-vars.mk
index 3285e891d..7d8de54e3 100644
--- a/mk/kernel-vars.mk
+++ b/mk/kernel-vars.mk
@@ -1,27 +1,18 @@
# This file is part of the OpenADK project. OpenADK is copyrighted
# material, please see the LICENCE file in the top-level directory.
-KERNEL_MAKE_OPTS:= -C "${LINUX_DIR}" V=1 \
- CROSS_COMPILE="$(TARGET_CROSS)" ARCH=$(ARCH) \
- CC="$(TARGET_CC)" HOSTCC="${CC_FOR_BUILD}" \
- HOSTCFLAGS='${CFLAGS_FOR_BUILD}' \
+KERNEL_MAKE_OPTS:= V=1 \
+ ARCH=$(ARCH) \
+ CROSS_COMPILE="$(TARGET_CROSS)" \
+ CC="$(TARGET_CC)" \
+ HOSTCC="${CC_FOR_BUILD}" \
CONFIG_SHELL='${SHELL}'
-ifeq (${ADK_TARGET_BROADCOM_MODEL_LINKSYS_WRT54G},y)
-ADK_KCPPFLAGS+= -DBCM47XX_OVERRIDE_FLASHSIZE=0x400000 \
- -DBCM47XX_OVERRIDE_NVRAMSIZE=0x10000 \
- -DBCM47XX_OVERRIDE_CFESIZE=0x40000
-endif
-ifeq (${ADK_TARGET_BROADCOM_MODEL_LINKSYS_WRT54GS},y)
-ADK_KCPPFLAGS+= -DBCM47XX_OVERRIDE_FLASHSIZE=0x800000 \
- -DBCM47XX_OVERRIDE_NVRAMSIZE=0x20000 \
- -DBCM47XX_OVERRIDE_CFESIZE=0x40000
-endif
-ifeq (${ADK_TARGET_BROADCOM_MODEL_ASUS_WL500GP},y)
-ADK_KCPPFLAGS+= -DBCM47XX_OVERRIDE_FLASHSIZE=0x800000 \
- -DBCM47XX_OVERRIDE_NVRAMSIZE=0x20000 \
- -DBCM47XX_OVERRIDE_CFESIZE=0x40000
+# regex for relocs needs pcre on Darwin
+ifeq ($(ADK_HOST_DARWIN),y)
+KERNEL_MAKE_OPTS+= HOSTCFLAGS='$(CPPFLAGS_FOR_BUILD) ${CFLAGS_FOR_BUILD}' HOSTLDFLAGS='-lpcreposix'
+else
+KERNEL_MAKE_OPTS+= HOSTCFLAGS='${CFLAGS_FOR_BUILD}'
endif
-KERNEL_MAKE_ENV+= KCPPFLAGS='${ADK_KCPPFLAGS}' \
- PATH="${STAGING_HOST_DIR}/usr/bin:$$PATH"
+KERNEL_MAKE_ENV+= PATH="${STAGING_HOST_DIR}/usr/bin:$$PATH"
diff --git a/mk/mirrors.mk b/mk/mirrors.mk
index 4de2fdded..ab7349288 100644
--- a/mk/mirrors.mk
+++ b/mk/mirrors.mk
@@ -15,12 +15,19 @@ MASTER_SITE_KERNEL?= \
http://www.kernel.org/pub/linux/ \
MASTER_SITE_XORG?= \
- http://www.x.org/releases/X11R7.7/src/everything/ \
- http://ftp.gwdg.de/pub/x11/x.org/pub/X11R7.7/src/everything/ \
- http://xorg.freedesktop.org/releases/X11R7.7/src/everything/ \
+ http://www.x.org/releases/individual/xserver/ \
+ http://www.x.org/releases/individual/proto/ \
+ http://www.x.org/releases/individual/app/ \
+ http://www.x.org/releases/individual/xcb/ \
+ http://www.x.org/releases/individual/lib/ \
+ http://www.x.org/releases/individual/driver/ \
+ http://www.x.org/releases/individual/util/ \
http://xorg.freedesktop.org/releases/individual/app/ \
http://xorg.freedesktop.org/releases/individual/lib/ \
http://xorg.freedesktop.org/releases/individual/driver/ \
+ http://www.x.org/releases/X11R7.7/src/everything/ \
+ http://ftp.gwdg.de/pub/x11/x.org/pub/X11R7.7/src/everything/ \
+ http://xorg.freedesktop.org/releases/X11R7.7/src/everything/ \
MASTER_SITE_GNU?= \
http://ftp.gnu.org/gnu/ \
diff --git a/mk/modules.mk b/mk/modules.mk
index 5fd2f6419..52678042c 100644
--- a/mk/modules.mk
+++ b/mk/modules.mk
@@ -1175,20 +1175,21 @@ $(eval $(call KMOD_template,SND,snd,\
$(MODULES_DIR)/kernel/sound/core/snd \
$(MODULES_DIR)/kernel/sound/core/snd-timer \
$(MODULES_DIR)/kernel/sound/core/snd-pcm \
+,40))
+
+$(eval $(call KMOD_template,SND_PCM_DMAENGINE,snd-pcm-dmaengine,\
$(MODULES_DIR)/kernel/sound/core/snd-pcm-dmaengine \
+,41))
+
+$(eval $(call KMOD_template,SND_COMPRESS,snd-compress,\
$(MODULES_DIR)/kernel/sound/core/snd-compress \
-,40))
+,41))
$(eval $(call KMOD_template,SND_RAWMIDI,snd-rawmidi,\
$(MODULES_DIR)/kernel/sound/core/snd-hwdep \
$(MODULES_DIR)/kernel/sound/core/snd-rawmidi \
,42))
-$(eval $(call KMOD_template,SND_OSSEMUL,snd-ossemul,\
- $(MODULES_DIR)/kernel/sound/core/oss/snd-mixer-oss \
- $(MODULES_DIR)/kernel/sound/core/oss/snd-pcm-oss \
-,45))
-
$(eval $(call KMOD_template,SND_AC97_CODEC,snd-ac97-codec,\
$(MODULES_DIR)/kernel/sound/ac97_bus \
$(MODULES_DIR)/kernel/sound/pci/ac97/snd-ac97-codec \
diff --git a/mk/rootfs.mk b/mk/rootfs.mk
index 55830b23c..812c90680 100644
--- a/mk/rootfs.mk
+++ b/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