summaryrefslogtreecommitdiff
path: root/mk
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2009-05-23 17:42:27 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2009-05-23 17:42:27 +0200
commitd4f7c53cb32abb249cb810230b826bf6c8e0f813 (patch)
tree5bcc66051e2f68a31e2163d37f00f04690f201e9 /mk
parent83a08921a2f21d95822ca2a8da37f1e2f85ea717 (diff)
- cleanup and document PKG_template, ARCH parameter is not needed anymore
- use CPU_ARCH for fake dir and ipkg - enable DEBUG option in menu and rename to ADK_DEBUG
Diffstat (limited to 'mk')
-rw-r--r--mk/build.mk3
-rw-r--r--mk/buildhlp.mk2
-rw-r--r--mk/kernel-build.mk2
-rw-r--r--mk/kernel.mk6
-rw-r--r--mk/package.mk30
-rw-r--r--mk/pkg-bottom.mk4
-rw-r--r--mk/vars.mk2
7 files changed, 29 insertions, 20 deletions
diff --git a/mk/build.mk b/mk/build.mk
index b08b97273..79406bf9f 100644
--- a/mk/build.mk
+++ b/mk/build.mk
@@ -18,7 +18,8 @@ noconfig_targets:= menuconfig \
_mconfig \
tags
-MAKECLEAN_SYMBOLS= ADK_TARGET_LIB_UCLIBC ADK_TARGET_LIB_GLIBC ADK_SSP ADK_IPV6 ADK_CXX
+MAKECLEAN_SYMBOLS= ADK_TARGET_LIB_UCLIBC ADK_TARGET_LIB_GLIBC ADK_SSP ADK_IPV6 ADK_CXX \
+ ADK_DEBUG
POSTCONFIG= -@\
if [ -f .config.old ];then \
if [ -d .cfg ];then \
diff --git a/mk/buildhlp.mk b/mk/buildhlp.mk
index b6b70d67d..128f3a54c 100644
--- a/mk/buildhlp.mk
+++ b/mk/buildhlp.mk
@@ -18,7 +18,7 @@ WRKSRC?= ${WRKDIST}
# This is where configure, make and make install (fake) run from
WRKBUILD?= ${WRKSRC}
# This is where make install (fake) writes to
-WRKINST?= ${WRKDIR}/fake-${ARCH}/root
+WRKINST?= ${WRKDIR}/fake-${CPU_ARCH}/root
ifeq ($(strip ${NO_CHECKSUM}),)
_CHECKSUM_COOKIE= ${WRKDIR}/.checksum_done
diff --git a/mk/kernel-build.mk b/mk/kernel-build.mk
index c07e34c23..02990c250 100644
--- a/mk/kernel-build.mk
+++ b/mk/kernel-build.mk
@@ -45,7 +45,7 @@ $(KERNEL_IPKG):
rm -rf $(KERNEL_IDIR)
@mkdir -p $(KERNEL_IDIR)/etc
${BASH} ${SCRIPT_DIR}/make-ipkg-dir.sh ${KERNEL_IDIR} \
- ../linux/kernel.control ${DEVICE}-${KERNEL_VERSION} ${ARCH}
+ ../linux/kernel.control ${DEVICE}-${KERNEL_VERSION} ${CPU_ARCH}
$(IPKG_BUILD) $(KERNEL_IDIR) $(PACKAGE_DIR) $(MAKE_TRACE)
prepare:
diff --git a/mk/kernel.mk b/mk/kernel.mk
index 06f3ebde2..5dc271863 100644
--- a/mk/kernel.mk
+++ b/mk/kernel.mk
@@ -11,7 +11,7 @@ KMOD_BUILD_DIR := $(LINUX_BUILD_DIR)/linux-modules
MODULES_DIR := $(LINUX_BUILD_DIR)/modules/$(MODULES_SUBDIR)
TARGET_MODULES_DIR := $(LINUX_TARGET_DIR)/$(MODULES_SUBDIR)
-KERNEL_IPKG:=$(PACKAGE_DIR)/kernel_$(DEVICE)-$(KERNEL_VERSION)_$(ARCH).ipk
+KERNEL_IPKG:=$(PACKAGE_DIR)/kernel_$(DEVICE)-$(KERNEL_VERSION)_$(CPU_ARCH).ipk
INSTALL_TARGETS:= $(KERNEL_IPKG)
NOINSTALL_TARGETS:=
TARGETS:=
@@ -34,7 +34,7 @@ define KMOD_template
IDEPENDK_$(1):=kernel ($(DEVICE)-$(KERNEL_VERSION)) $(foreach pkg,$(5),", $(pkg)")
-PKG_$(1) := $(PACKAGE_DIR)/kmod-$(2)_$(DEVICE)-$(KERNEL_VERSION)-$(KERNEL_RELEASE)_$(ARCH).ipk
+PKG_$(1) := $(PACKAGE_DIR)/kmod-$(2)_$(DEVICE)-$(KERNEL_VERSION)-$(KERNEL_RELEASE)_$(CPU_ARCH).ipk
I_$(1) := $(KMOD_BUILD_DIR)/ipkg/$(2)
ifeq ($$(ADK_KPACKAGE_KMOD_$(1)),m)
@@ -53,7 +53,7 @@ $$(PKG_$(1)):
echo "Description: kernel module $(2)" >> $(LINUX_BUILD_DIR)/kmod-control/kmod-$(2).control
${BASH} ${SCRIPT_DIR}/make-ipkg-dir.sh $$(I_$(1)) \
$(LINUX_BUILD_DIR)/kmod-control/kmod-$(2).control \
- $(DEVICE)-$(KERNEL_VERSION)-$(KERNEL_RELEASE) $(ARCH)
+ $(DEVICE)-$(KERNEL_VERSION)-$(KERNEL_RELEASE) $(CPU_ARCH)
echo "Depends: $$(IDEPENDK_$(1))" >> $$(I_$(1))/CONTROL/control
ifneq ($(strip $(3)),)
mkdir -p $$(I_$(1))/lib/modules/$(KERNEL_VERSION)
diff --git a/mk/package.mk b/mk/package.mk
index 8b5d547b8..e359a6f7c 100644
--- a/mk/package.mk
+++ b/mk/package.mk
@@ -8,13 +8,13 @@ all: build-all-ipkgs
TCFLAGS:= ${TARGET_CFLAGS}
TCXXFLAGS:= ${TARGET_CFLAGS}
TCPPFLAGS:= ${TARGET_CPPFLAGS}
-ifneq ($(DEBUG),1)
+ifeq ($(ADK_DEBUG),)
TCPPFLAGS+= -DNDEBUG
endif
TLDFLAGS:= ${TARGET_LDFLAGS} -Wl,-rpath -Wl,/usr/lib \
-Wl,-rpath-link -Wl,${STAGING_DIR}/usr/lib \
-L${STAGING_DIR}/lib -L${STAGING_DIR}/usr/lib
-ifeq ($(DEBUG),1)
+ifneq ($(ADK_DEBUG),)
CONFIGURE_ARGS+= --enable-debug
else
CONFIGURE_ARGS+= --disable-debug
@@ -92,9 +92,17 @@ fake: ${_FAKE_COOKIE}
# our recursive build entry point
build-all-ipkgs: ${_IPKGS_COOKIE}
+# there are some parameters to the PKG_template function
+# 1.) Config.in identifier ADK_PACKAGE_$(1)
+# 2.) name of the package, for single package mostly $(PKG_NAME)
+# 3.) package version (upstream version) and package revision (adk revision),
+# always $(PKG_VERSION)-$(PKG_REVISION)
+# 4.) dependencies to other packages, $(PKG_DEPENDS)
+#
+# should be package format independent and modular in the future
define PKG_template
-IPKG_$(1)= $(PACKAGE_DIR)/$(2)_$(3)_$(4).ipk
-IDIR_$(1)= $(WRKDIR)/fake-${ARCH}/ipkg-$(2)
+IPKG_$(1)= $(PACKAGE_DIR)/$(2)_$(3)_${CPU_ARCH}.ipk
+IDIR_$(1)= $(WRKDIR)/fake-${CPU_ARCH}/ipkg-$(2)
ifneq (${ADK_PACKAGE_$(1)}${DEVELOPER},)
ALL_IPKGS+= $$(IPKG_$(1))
ALL_IDIRS+= $${IDIR_$(1)}
@@ -105,12 +113,12 @@ ifeq ($(ADK_PACKAGE_$(1)),y)
install-targets: $$(INFO_$(1))
endif
-IDEPEND_$(1):= $$(strip $(5))
+IDEPEND_$(1):= $$(strip $(4))
_ALL_CONTROLS+= $$(IDIR_$(1))/CONTROL/control
ICONTROL_$(1)?= ipkg/$(2).control
$$(IDIR_$(1))/CONTROL/control: ${_PATCH_COOKIE}
- ${BASH} ${SCRIPT_DIR}/make-ipkg-dir.sh $${IDIR_$(1)} $${ICONTROL_$(1)} $(3) $(4)
+ ${BASH} ${SCRIPT_DIR}/make-ipkg-dir.sh $${IDIR_$(1)} $${ICONTROL_$(1)} $(3) ${CPU_ARCH}
@adeps='$$(strip $${IDEPEND_$(1)})'; if [[ -n $$$$adeps ]]; then \
comma=; \
deps=; \
@@ -126,18 +134,19 @@ $$(IDIR_$(1))/CONTROL/control: ${_PATCH_COOKIE}
done; \
echo "Depends: $$$$deps" >>$${IDIR_$(1)}/CONTROL/control; \
fi
- for file in conffiles preinst postinst prerm postrm; do \
+ @for file in conffiles preinst postinst prerm postrm; do \
[ ! -f ./ipkg/$(2).$$$$file ] || cp ./ipkg/$(2).$$$$file $$(IDIR_$(1))/CONTROL/$$$$file; \
done
+# FIXME: special case for device dependent base-files package
ifneq ($(strip $${ICONTROL_ADDON_$(1)}),)
echo $${ICONTROL_ADDON_$(1)} >> $${IDIR_$(1)}/CONTROL/control
endif
$$(IPKG_$(1)): $$(IDIR_$(1))/CONTROL/control $${_FAKE_COOKIE}
-ifneq ($(DEBUG),1)
+ifeq ($(ADK_DEBUG),)
$${RSTRIP} $${IDIR_$(1)} $(MAKE_TRACE)
endif
- cd $${IDIR_$(1)}; for script in etc/init.d/*; do \
+ @cd $${IDIR_$(1)}; for script in etc/init.d/*; do \
[[ -e $$$$script ]] || continue; \
chmod 0755 "$$$$script"; \
done
@@ -167,8 +176,7 @@ endif
@cd '$${STAGING_DIR}'; grep 'usr/lib/.*\.la$$$$' \
'$${STAGING_PARENT}/pkg/$(1)' | while read fn; do \
chmod u+w $$$$fn; \
- printf '%s\nwq\n' '/^libdir='\''*/s##&${STAGING_DIR}#' | \
- ed -s $$$$fn; \
+ $(SED) "s,\(^libdir='\| \|-L\|^dependency_libs='\)/usr/lib,\1$(STAGING_DIR)/usr/lib,g" $$fn; \
done; grep 'usr/s*bin/' '$${STAGING_PARENT}/pkg/$(1)' | \
while read fn; do \
b="$$$$(dd if="$$$$fn" bs=2 count=1 2>/dev/null)"; \
diff --git a/mk/pkg-bottom.mk b/mk/pkg-bottom.mk
index c5ac91df3..1f366ab53 100644
--- a/mk/pkg-bottom.mk
+++ b/mk/pkg-bottom.mk
@@ -162,9 +162,9 @@ ${_IPKGS_COOKIE}:
exec ${MAKE} package
package: ${ALL_IPKGS}
- @cd ${WRKDIR}/fake-${ARCH} || exit 1; \
+ @cd ${WRKDIR}/fake-${CPU_ARCH} || exit 1; \
y=; sp=; for x in ${ALL_IDIRS}; do \
- y="$$y$$sp$${x#$(WRKDIR)/fake-${ARCH}/}"; \
+ y="$$y$$sp$${x#$(WRKDIR)/fake-${CPU_ARCH}/}"; \
sp=' '; \
done; ls=; ln=; x=1; [[ -z $$y ]] || \
md5sum $$(find $$y -type f) | sed -e "s/*//" | \
diff --git a/mk/vars.mk b/mk/vars.mk
index 93f40be23..bf50921f2 100644
--- a/mk/vars.mk
+++ b/mk/vars.mk
@@ -11,7 +11,7 @@ INSTALL_SCRIPT= install -m0755
MAKEFLAGS= $(EXTRA_MAKEFLAGS)
BUILD_USER= $(shell id -un)
BUILD_GROUP= $(shell id -gn)
-ifeq ($(DEBUG),1)
+ifneq ($(ADK_DEBUG),)
TARGET_DEBUGGING:= -g -O0 -fno-omit-frame-pointer
else
TARGET_DEBUGGING:= -fomit-frame-pointer