summaryrefslogtreecommitdiff
path: root/mk
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2010-06-29 17:45:03 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2010-06-29 17:45:03 +0200
commit36c8c2eb53bf2fb400f138b2177bea2fe0651d12 (patch)
treeef72f47c4bdeb175fe38184a87e66502b87e442d /mk
parent2fd97804d7094633451c3fb0ac2ac41d88229c16 (diff)
optimize ipkg package management
ipkg will automatically mount the normal read-only rootfs as read-write and after the command back to read-only. ipkg install/remove/upgrades are only supported for compact disk or disk based systems. On flash systems better reflash completely. make a kernel package containing the real kernel. Adjust ipkg.conf to contain a configurable server adress.
Diffstat (limited to 'mk')
-rw-r--r--mk/build.mk2
-rw-r--r--mk/image.mk16
-rw-r--r--mk/kernel-build.mk10
-rw-r--r--mk/kernel.mk1
-rw-r--r--mk/mirrors.mk2
5 files changed, 16 insertions, 15 deletions
diff --git a/mk/build.mk b/mk/build.mk
index c13694013..2f4b367b9 100644
--- a/mk/build.mk
+++ b/mk/build.mk
@@ -95,7 +95,7 @@ else
ifeq ($(ADK_TOOLCHAIN_ONLY),y)
$(MAKE) -f mk/build.mk toolchain/install package/compile
else
- $(MAKE) -f mk/build.mk toolchain/install target/config-prepare target/compile package/compile root_clean package/install package_index target/install
+ $(MAKE) -f mk/build.mk toolchain/install target/config-prepare target/compile package/compile root_clean package/install target/install package_index
endif
endif
diff --git a/mk/image.mk b/mk/image.mk
index ef0a626e0..4713d621d 100644
--- a/mk/image.mk
+++ b/mk/image.mk
@@ -52,14 +52,26 @@ image-prepare-post:
done; \
fi
+KERNEL_PKGDIR:=$(LINUX_BUILD_DIR)/kernel-pkg
+KERNEL_PKG:=$(PACKAGE_DIR)/kernel_$(ADK_TARGET)-$(KERNEL_VERSION)_$(CPU_ARCH).$(PKG_SUFFIX)
+
+kernel-package: $(LINUX_DIR)/vmlinux
+ $(TRACE) target/$(ADK_TARGET)-create-kernel-package
+ rm -rf $(KERNEL_PKGDIR)
+ @mkdir -p $(KERNEL_PKGDIR)/boot
+ cp $(KERNEL) $(KERNEL_PKGDIR)/boot/vmlinuz-adk
+ ${BASH} ${SCRIPT_DIR}/make-ipkg-dir.sh ${KERNEL_PKGDIR} \
+ ../linux/kernel.control ${ADK_TARGET}-${KERNEL_VERSION} ${CPU_ARCH}
+ $(PKG_BUILD) $(KERNEL_PKGDIR) $(PACKAGE_DIR)
+ $(PKG_INSTALL) $(KERNEL_PKG)
+
INITRAMFS= ${ADK_TARGET}-${ADK_LIBC}-${FS}
ROOTFSSQUASHFS= ${ADK_TARGET}-${ADK_LIBC}-${FS}.img
ROOTFSTARBALL= ${ADK_TARGET}-${ADK_LIBC}-${FS}+kernel.tar.gz
ROOTFSUSERTARBALL= ${ADK_TARGET}-${ADK_LIBC}-${FS}.tar.gz
INITRAMFS_PIGGYBACK= ${ADK_TARGET}-${ADK_LIBC}-${FS}.cpio
-${BIN_DIR}/${ROOTFSTARBALL}: ${TARGET_DIR}
- cp $(KERNEL) $(TARGET_DIR)/boot/vmlinuz-adk
+${BIN_DIR}/${ROOTFSTARBALL}: ${TARGET_DIR} kernel-package
cd ${TARGET_DIR}; tar -cf - --owner=0 --group=0 . | gzip -n9 >$@
${BIN_DIR}/${ROOTFSUSERTARBALL}: ${TARGET_DIR}
diff --git a/mk/kernel-build.mk b/mk/kernel-build.mk
index 797ad60d4..bd8b47164 100644
--- a/mk/kernel-build.mk
+++ b/mk/kernel-build.mk
@@ -5,8 +5,6 @@ include $(TOPDIR)/rules.mk
include $(TOPDIR)/mk/linux.mk
include ${TOPDIR}/mk/kernel-vars.mk
-KERNEL_PKGDIR:=$(LINUX_BUILD_DIR)/kernel-pkg
-
$(TOOLCHAIN_BUILD_DIR)/w-$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE)/linux-$(KERNEL_VERSION)/.patched:
$(TRACE) target/$(ADK_TARGET)-kernel-patch
$(PATCH) $(TOOLCHAIN_BUILD_DIR)/w-$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE)/linux-$(KERNEL_VERSION) ../linux/patches/$(KERNEL_VERSION) *.patch $(MAKE_TRACE)
@@ -39,14 +37,6 @@ $(LINUX_DIR)/vmlinux: $(LINUX_DIR)/.config
$(MAKE) $(KERNEL_PKG) $(TARGETS)
touch -c $(LINUX_DIR)/vmlinux
-$(KERNEL_PKG):
- $(TRACE) target/$(ADK_TARGET)-create-kernel-package
- rm -rf $(KERNEL_PKGDIR)
- @mkdir -p $(KERNEL_PKGDIR)/etc
- ${BASH} ${SCRIPT_DIR}/make-ipkg-dir.sh ${KERNEL_PKGDIR} \
- ../linux/kernel.control ${ADK_TARGET}-${KERNEL_VERSION} ${CPU_ARCH}
- $(PKG_BUILD) $(KERNEL_PKGDIR) $(PACKAGE_DIR) $(MAKE_TRACE)
-
prepare:
compile: $(LINUX_DIR)/vmlinux
install: compile
diff --git a/mk/kernel.mk b/mk/kernel.mk
index d09425e44..a8b3884da 100644
--- a/mk/kernel.mk
+++ b/mk/kernel.mk
@@ -8,7 +8,6 @@ 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_PKG:=$(PACKAGE_DIR)/kernel_$(ADK_TARGET)-$(KERNEL_VERSION)_$(CPU_ARCH).$(PKG_SUFFIX)
INSTALL_TARGETS:= $(KERNEL_PKG)
NOINSTALL_TARGETS:=
TARGETS:=
diff --git a/mk/mirrors.mk b/mk/mirrors.mk
index c7e0ac623..a57cb8ec8 100644
--- a/mk/mirrors.mk
+++ b/mk/mirrors.mk
@@ -1,7 +1,7 @@
# This file is part of the OpenADK project. OpenADK is copyrighted
# material, please see the LICENCE file in the top-level directory.
-MASTER_SITE_BACKUP?= ${MASTER_SITE_OPENADK}
+MASTER_SITE_BACKUP?= http://${ADK_HOST}/distfiles/
MASTER_SITE_OPENADK?= \
http://www.openadk.org/distfiles/ \