summaryrefslogtreecommitdiff
path: root/mk
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2010-09-16 13:10:39 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2010-09-16 13:10:39 +0200
commit9a625cd021c2d087a988699dcfc3e512fa163235 (patch)
tree2fbdefdee370f2cd2c5ee76ec62b9dd9b65cbd9c /mk
parentafab289b265ff987c3f62393b3ef707c2650704f (diff)
parent4422cda575db22275b067e07ad4b585572d91756 (diff)
Merge branch 'master' of git+ssh://openadk.org/git/openadk
Conflicts: mk/kernel-build.mk package/expat/Makefile package/gettext/Makefile package/perl/Makefile package/zlib/Makefile
Diffstat (limited to 'mk')
-rw-r--r--mk/build.mk32
-rw-r--r--mk/buildhlp.mk6
-rw-r--r--mk/image.mk4
-rw-r--r--mk/kernel-build.mk2
-rw-r--r--mk/modules.mk20
-rw-r--r--mk/package.mk8
-rw-r--r--mk/pkg-bottom.mk2
-rw-r--r--mk/split-cfg.mk9
-rw-r--r--mk/vars.mk4
9 files changed, 48 insertions, 39 deletions
diff --git a/mk/build.mk b/mk/build.mk
index a7a464394..f155807e2 100644
--- a/mk/build.mk
+++ b/mk/build.mk
@@ -64,8 +64,9 @@ noconfig_targets:= menuconfig \
defconfig \
tags
-POSTCONFIG= -@ \
+POSTCONFIG= -@\
if [ -f .config.old ];then \
+ $(TOPDIR)/bin/tools/pkgrebuild;\
rebuild=0; \
if [ "$$(grep ^BUSYBOX .config|md5sum)" != "$$(grep ^BUSYBOX .config.old|md5sum)" ];then \
touch .rebuild.busybox;\
@@ -76,7 +77,7 @@ POSTCONFIG= -@ \
rebuild=1;\
fi; \
if [ $$rebuild -eq 1 ];then \
- cp .config .config.old; \
+ cp .config .config.old;\
fi; \
fi
@@ -87,17 +88,17 @@ endif
ifeq ($(strip $(ADK_HAVE_DOT_CONFIG)),y)
include $(TOPDIR)/rules.mk
-include ${TOPDIR}/mk/split-cfg.mk
all: world
${TOPDIR}/package/Depends.mk: ${TOPDIR}/.config $(wildcard ${TOPDIR}/package/*/Makefile)
- mksh ${TOPDIR}/package/depmaker
+ $(TOPDIR)/bin/tools/depmaker > ${TOPDIR}/package/Depends.mk
+
.NOTPARALLEL:
.PHONY: all world clean cleantarget cleandir distclean image_clean
-world: $(DISTDIR) $(BUILD_DIR) $(TARGET_DIR) $(PACKAGE_DIR) ${TOPDIR}/.ADK_HAVE_DOT_CONFIG
+world: $(DISTDIR) $(BUILD_DIR) $(TARGET_DIR) $(PACKAGE_DIR)
${BASH} ${TOPDIR}/scripts/scan-pkgs.sh
ifeq ($(ADK_NATIVE),y)
$(MAKE) -f mk/build.mk toolchain/kernel-headers-prepare tools/install target/config-prepare target/compile package/compile root_clean package/install package_index target/install
@@ -137,10 +138,10 @@ ifeq ($(ADK_TARGET_PACKAGE_IPKG),y)
echo "option offline_root ${TARGET_DIR}" >>$(STAGING_DIR)/etc/ipkg.conf
endif
-package/%: ${TOPDIR}/.ADK_HAVE_DOT_CONFIG ${STAGING_DIR}/etc/ipkg.conf ${TOPDIR}/package/Depends.mk
+package/%: ${STAGING_DIR}/etc/ipkg.conf ${TOPDIR}/package/Depends.mk
$(MAKE) -C package $(patsubst package/%,%,$@)
-target/%: ${TOPDIR}/.ADK_HAVE_DOT_CONFIG
+target/%:
$(MAKE) -C target $(patsubst target/%,%,$@)
toolchain/%: ${STAGING_DIR}
@@ -185,11 +186,6 @@ newpackage:
@echo "Edit package/$(PKG)/Makefile to complete"
@echo "choose PKG_SECTION to add it to an existent submenu"
-#############################################################
-#
-# Cleanup and misc junk
-#
-#############################################################
root_clean:
@$(TRACE) root_clean
rm -rf $(TARGET_DIR)
@@ -429,7 +425,7 @@ ifneq (,$(filter wrap%,${TARGET}))
@echo ADK_LINUX_ALIX=y >> $(TOPDIR)/all.config
endif
-menuconfig: $(CONFIG)/mconf defconfig .menu
+menuconfig: $(CONFIG)/mconf defconfig .menu package/Config.in.auto
@if [ ! -f .config ];then \
$(CONFIG)/conf -D .defconfig $(CONFIG_CONFIG_IN); \
fi
@@ -513,14 +509,18 @@ bulkallmod:
) 2>&1 | tee $(TOPDIR)/bin/$${target}_$$libc/$$target-$$libc-$$fs.log; \
done <${TOPDIR}/target/bulk.lst
-menu .menu: $(wildcard ${TOPDIR}/package/*/Makefile)
+${TOPDIR}/bin/tools/pkgmaker:
+ @mkdir -p $(TOPDIR)/bin/tools
+ @$(HOSTCC) -g -o $@ tools/adk/pkgmaker.c tools/adk/sortfile.c tools/adk/strmap.c
+
+package/Config.in.auto menu .menu: $(wildcard ${TOPDIR}/package/*/Makefile) ${TOPDIR}/bin/tools/pkgmaker
@echo "Generating menu structure ..."
- mksh $(TOPDIR)/package/pkgmaker
+ @$(TOPDIR)/bin/tools/pkgmaker
@:>.menu
dep:
@echo "Generating dependencies ..."
- mksh $(TOPDIR)/package/depmaker
+ $(TOPDIR)/bin/tools/depmaker > ${TOPDIR}/package/Depends.mk
.PHONY: menu dep
diff --git a/mk/buildhlp.mk b/mk/buildhlp.mk
index 4df712fcb..14cee191d 100644
--- a/mk/buildhlp.mk
+++ b/mk/buildhlp.mk
@@ -29,7 +29,7 @@ post-extract:
ifeq ($(strip ${NO_DISTFILES}),1)
${WRKDIST}/.extract_done:
rm -rf ${WRKDIST} ${WRKSRC} ${WRKBUILD}
- mkdir -p ${WRKDIR} ${WRKDIST}
+ @mkdir -p ${WRKDIR} ${WRKDIST}
${MAKE} do-extract
@${MAKE} post-extract
touch $@
@@ -57,9 +57,9 @@ ifeq ($(strip ${__use_generic_patch_target}),42)
post-patch:
${WRKDIST}/.prepared: ${WRKDIST}/.extract_done
[ ! -d ./patches/${PKG_VERSION} ] || ${PREVENT_PATCH} ${PATCH} ${WRKDIST} ./patches \
- '{patch-!(*.orig),*.patch}'
+ '{patch-!(*.orig),*.patch}' $(MAKE_TRACE)
[ ! -d ./patches ] || ${PREVENT_PATCH} ${PATCH} ${WRKDIST} ./patches \
- '{patch-!(*.orig),*.patch}'
+ '{patch-!(*.orig),*.patch}' $(MAKE_TRACE)
[ ! -d ./src ] || (cd src; $(PREVENT_PATCH) cp -Rp . ${WRKDIST}/) \
$(MAKE_TRACE)
@${MAKE} post-patch $(MAKE_TRACE)
diff --git a/mk/image.mk b/mk/image.mk
index 1ca9ac29b..5858b9511 100644
--- a/mk/image.mk
+++ b/mk/image.mk
@@ -51,7 +51,7 @@ ${BIN_DIR}/${ROOTFSUSERTARBALL}: ${TARGET_DIR}
${BIN_DIR}/${INITRAMFS}: ${TARGET_DIR}
cd ${TARGET_DIR}; find . | sed -n '/^\.\//s///p' | \
sed "s#\(.*\)#:0:0::::::\1#" | sort | \
- ${STAGING_TOOLS}/bin/cpio -o -C512 -Hnewc -P | \
+ ${TOPDIR}/bin/tools/cpio -o -C512 -Hnewc -P | \
${ADK_COMPRESSION_TOOL} >$@ 2>/dev/null
${BUILD_DIR}/${INITRAMFS_PIGGYBACK}: ${TARGET_DIR}
@@ -59,7 +59,7 @@ ${BUILD_DIR}/${INITRAMFS_PIGGYBACK}: ${TARGET_DIR}
$(LINUX_DIR)/.config
cd ${TARGET_DIR}; find . | sed -n '/^\.\//s///p' | \
sed "s#\(.*\)#:0:0::::::\1#" | sort | \
- ${STAGING_TOOLS}/bin/cpio -o -C512 -Hnewc -P >$@ 2>/dev/null
+ ${TOPDIR}/bin/tools/cpio -o -C512 -Hnewc -P >$@ 2>/dev/null
${BIN_DIR}/${ROOTFSSQUASHFS}: ${TARGET_DIR}
${STAGING_TOOLS}/bin/mksquashfs ${TARGET_DIR} \
diff --git a/mk/kernel-build.mk b/mk/kernel-build.mk
index 68fe897a3..2eaf1ada1 100644
--- a/mk/kernel-build.mk
+++ b/mk/kernel-build.mk
@@ -33,7 +33,7 @@ $(LINUX_DIR)/.config: $(LINUX_DIR)/.prepared $(BUILD_DIR)/.kernelconfig $(TOPDIR
$(LINUX_DIR)/vmlinux: $(LINUX_DIR)/.config
$(TRACE) target/$(ADK_TARGET)-kernel-compile
- $(MAKE) LOCALVERSION="" ${KERNEL_MAKE_OPTS} -j${ADK_MAKE_JOBS} $(MAKE_TRACE)
+ $(MAKE) ${KERNEL_MAKE_OPTS} -j${ADK_MAKE_JOBS} LOCALVERSION="" $(MAKE_TRACE)
$(TRACE) target/$(ADK_TARGET)-kernel-modules-install
rm -rf $(LINUX_BUILD_DIR)/modules
$(MAKE) ${KERNEL_MAKE_OPTS} DEPMOD=true \
diff --git a/mk/modules.mk b/mk/modules.mk
index aac667376..eaa8bb632 100644
--- a/mk/modules.mk
+++ b/mk/modules.mk
@@ -361,12 +361,20 @@ $(eval $(call KMOD_template,NETFILTER_XT_TARGET_CLASSIFY,netfiler-xt-target-clas
$(MODULES_DIR)/kernel/net/netfilter/xt_CLASSIFY \
,50))
+ifeq ($(KERNEL_VERSION),2.6.35)
+CONNMARK:=xt_connmark
+MARK:=xt_mark
+else
+CONNMARK:=xt_CONNMARK
+MARK:=xt_MARK
+endif
+
$(eval $(call KMOD_template,NETFILTER_XT_TARGET_CONNMARK,netfilter-xt-target-connmark,\
- $(MODULES_DIR)/kernel/net/netfilter/xt_CONNMARK \
+ $(MODULES_DIR)/kernel/net/netfilter/$(CONNMARK) \
,50))
$(eval $(call KMOD_template,NETFILTER_XT_TARGET_MARK,netfilter-xt-target-mark,\
- $(MODULES_DIR)/kernel/net/netfilter/xt_MARK \
+ $(MODULES_DIR)/kernel/net/netfilter/$(MARK) \
,50))
$(eval $(call KMOD_template,NETFILTER_XT_TARGET_NFQUEUE,netfilter-xt-target-nfqueue,\
@@ -1217,8 +1225,14 @@ $(eval $(call KMOD_template,USB_HSO,usb-hso,\
$(MODULES_DIR)/kernel/drivers/net/usb/hso \
,75))
+ifeq ($(KERNEL_VERSION),2.6.35)
+SNDUSB:=snd-usbmidi-lib
+else
+SNDUSB:=snd-usb-lib
+endif
+
$(eval $(call KMOD_template,SND_USB_AUDIO,snd-usb-audio,\
- $(MODULES_DIR)/kernel/sound/usb/snd-usb-lib \
+ $(MODULES_DIR)/kernel/sound/usb/$(SNDUSB) \
$(MODULES_DIR)/kernel/sound/usb/snd-usb-audio \
,75))
diff --git a/mk/package.mk b/mk/package.mk
index 0fa82fbba..db3007f71 100644
--- a/mk/package.mk
+++ b/mk/package.mk
@@ -109,7 +109,6 @@ _IPKGS_COOKIE= ${PACKAGE_DIR}/.stamps/${PKG_NAME}${PKG_VERSION}-${PKG_RELEASE}
_IN_PACKAGE:= 1
include ${TOPDIR}/mk/buildhlp.mk
--include info.mk
# defined in buildhlp.mk ('extract' can fail, use 'patch' then)
extract: ${_EXTRACT_COOKIE}
@@ -119,6 +118,11 @@ patch: ${_PATCH_COOKIE}
configure: ${_CONFIGURE_COOKIE}
build: ${_BUILD_COOKIE}
fake: ${_FAKE_COOKIE}
+rebuild:
+ @if [ -f ${TOPDIR}/.rebuild.${PKG_NAME} ];then \
+ $(MAKE) clean; \
+ rm -f ${TOPDIR}/.rebuild.${PKG_NAME}; \
+ fi
# our recursive build entry point
build-all-pkgs: ${_IPKGS_COOKIE}
@@ -222,7 +226,7 @@ endif
find usr ! -type d 2>/dev/null | \
grep -v -e '^usr/share' -e '^usr/man' -e '^usr/info' -e '^usr/lib/libc.so' | \
tee '$${STAGING_PARENT}/pkg/$(1)' | \
- cpio -padlmu '$${STAGING_DIR}'
+ $(TOPDIR)/bin/tools/cpio -padlmu '$${STAGING_DIR}'
@cd '$${STAGING_DIR}'; grep 'usr/lib/.*\.la$$$$' \
'$${STAGING_PARENT}/pkg/$(1)' | while read fn; do \
chmod u+w $$$$fn; \
diff --git a/mk/pkg-bottom.mk b/mk/pkg-bottom.mk
index 101a240a9..e68607f9d 100644
--- a/mk/pkg-bottom.mk
+++ b/mk/pkg-bottom.mk
@@ -165,7 +165,7 @@ endif
find usr ! -type d 2>/dev/null | \
grep -v -e '^usr/share' -e '^usr/man' -e '^usr/info' -e '^usr/lib/libc.so' | \
tee '${STAGING_PARENT}/pkg/${PKG_NAME}' | \
- cpio -padlmu '${STAGING_DIR}'
+ $(TOPDIR)/bin/tools/cpio -padlmu '${STAGING_DIR}'
@cd '${STAGING_DIR}'; grep 'usr/lib/.*\.la$$' \
'${STAGING_PARENT}/pkg/${PKG_NAME}' | while read fn; do \
chmod u+w $$fn; \
diff --git a/mk/split-cfg.mk b/mk/split-cfg.mk
deleted file mode 100644
index e9521c259..000000000
--- a/mk/split-cfg.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-# must work with both BSD and GNU make
-
-${TOPDIR}/.ADK_HAVE_DOT_CONFIG: \
- ${TOPDIR}/.config ${TOPDIR}/mk/split-cfg.mk \
- ${TOPDIR}/scripts/split-cfg.sh
- mksh ${TOPDIR}/scripts/split-cfg.sh '${TOPDIR}' '${ADK_TARGET}' '${ADK_LIBC}'
- touch ${TOPDIR}/.ADK_HAVE_DOT_CONFIG
diff --git a/mk/vars.mk b/mk/vars.mk
index 6f38db944..40226b254 100644
--- a/mk/vars.mk
+++ b/mk/vars.mk
@@ -102,7 +102,7 @@ EXTRACT_CMD= mkdir -p ${WRKDIR}; \
cd ${WRKDIR} && \
for file in ${FULLDISTFILES}; do case $$file in \
*.cpio) \
- cat $$file | $(STAGING_TOOLS)/bin/cpio -i -d ;; \
+ cat $$file | $(TOPDIR)/bin/tools/cpio -i -d ;; \
*.tar) \
tar -xf $$file ;; \
*.cpio.Z | *.cpio.gz | *.cgz | *.mcz) \
@@ -114,7 +114,7 @@ EXTRACT_CMD= mkdir -p ${WRKDIR}; \
*.tar.bz2 | *.tbz | *.tbz2) \
bzip2 -dc $$file | tar -xf - ;; \
*.zip) \
- cat $$file | $(STAGING_TOOLS)/bin/cpio -ivd -H zip ;; \
+ cat $$file | $(TOPDIR)/bin/tools/cpio -ivd -H zip ;; \
*.arm) \
cp $$file ${WRKDIR} ;; \
*) \