#
WEEK := $(shell date +%Y%W)
-RELEASE := $(shell dpkg-parsechangelog | awk '/^Version: / { print $$2 }')
-REVISION := $(shell echo "$(RELEASE)" | sed 's/\(.*\)-maemo\(.*\)/.10power\2/')
-#REVISION := $(shell echo "$(RELEASE)" | sed 's/\(.*\)-maemo\(.*\)/.10powerusb\2/')
+RELEASE := $(shell dpkg-parsechangelog | sed -ne 's/^Version: 1:\(.*\)/\1/p' | sed 's/-10/.10-/')
+REVISION := $(shell echo "$(RELEASE)" | sed 's/.*\./\./')
EXTRAVERSION := EXTRAVERSION=$(REVISION)
-PACKAGE := kernel
-FLASHER_PACKAGE := kernel-power-flasher
-#SOURCE_PACKAGE := $(PACKAGE)-source
-KERNEL_PACKAGE := $(PACKAGE)-power
-MODULES_PACKAGE := $(PACKAGE)-power-modules
-HEADERS_PACKAGE := $(PACKAGE)-power-headers
-LIBC_PACKAGE := linux-kernel-power-headers
+PACKAGE := kernel-power
+FLASHER_PACKAGE := $(PACKAGE)-flasher
+KERNEL_PACKAGE := $(PACKAGE)
+BOOTIMG_PACKAGE := $(PACKAGE)-bootimg
+MODULES_PACKAGE := $(PACKAGE)-modules
+HEADERS_PACKAGE := $(PACKAGE)-headers
+KBUILD_PACKAGE := $(PACKAGE)-kbuild
+LIBC_PACKAGE := linux-$(PACKAGE)-headers
+
+MULTIBOOTDIR := etc/multiboot.d
+MULTIBOOTFILE := $(MULTIBOOTDIR)/01-Maemo-$(PACKAGE)-$(RELEASE).item
BUILDTMP := $(CURDIR)/debian/build
#KSRC := $(BUILDTMP)/$(PACKAGE)
DEFCONFIG := rx51power_defconfig
KVER = $(shell cat $(BUILDTMP)/include/config/kernel.release 2> /dev/null)
ARCH = $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU)
-INCLUDE_HEADERS = acpi asm-generic crypto drm Kbuild keys math-emu media mtd net pcmcia rdma rxrpc scsi sound video xen
INCLUDE_HEADERS_ARCH = asm-$(ARCH) config linux
+INCLUDE_HEADERS = asm-$(ARCH) linux acpi asm-generic crypto drm Kbuild keys math-emu media mtd net pcmcia rdma rxrpc scsi sound video xen
RM_SCRIPTS = bloat-o-meter show_delta
DEBUG_MODULES = oprofile.ko
MAKE += $(MAKEFLAGS)
NJOBS := -j$(PARALLEL_JOBS)
endif
+get-orig-source:
+ wget ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.28.tar.gz
+
configure-stamp:
dh_testdir
- #$(MAKE) mrproper KBUILD_OUTPUT=$(CURDIR)
mkdir -p $(BUILDTMP)
$(MAKE) clean
QUILT_PATCHES=debian/patches quilt push -a -q || test $$? = 2
cp debian/$(DEFCONFIG) arch/arm/configs/
-
cd $(KSRC) && $(MAKE) $(EXTRAVERSION) $(DEFCONFIG)
touch $@
modules-stamp: configure-stamp
echo "compile $(PRODUCT) kernel modules"
cd $(KSRC) && $(MAKE) $(NJOBS) $(EXTRAVERSION) modules
- $(MAKE) -C $(KSRC) M=debian/joikuspot EXTRAVERSION=$(EXTRAVERSION) modules
touch $@
modules-extra: configure-stamp
headers: kernel-stamp modules-stamp
-clean:
+clean-gen:
dh_testdir
dh_testroot
rm -rf debian/tmp-*
rm -rf debian/build
rm -f *-stamp
+ -rm debian/u-boot.bin debian/u-boot.pad debian/uImage
+
+clean: clean-gen
QUILT_PATCHES=debian/patches quilt pop -a -q -R || test $$? = 2
-rm arch/arm/configs/$(DEFCONFIG)
-rm -rf .pc
-
dh_clean
install-kernel:
-k $(BUILDTMP)/arch/arm/boot/zImage -v $(RELEASE)
chmod 644 $(CURDIR)/debian/$(KERNEL_PACKAGE)/boot/zImage-$(RELEASE).fiasco
+install-bootimg:
+ dh_testdir
+ dh_testroot
+ dh_installdirs
+
+ install -d -m 755 $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/boot
+ install -c -m 644 $(BUILDTMP)/arch/arm/boot/zImage $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/boot/zImage-$(RELEASE)
+ chmod 644 $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/boot/zImage-$(RELEASE)
+
+ mkdir -p $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/$(MULTIBOOTDIR)
+ echo "ITEM_NAME=\"Maemo $(PACKAGE) $(RELEASE)\"" > $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/$(MULTIBOOTFILE)
+ echo "ITEM_KERNEL=\"$(RELEASE)\"" >> $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/$(MULTIBOOTFILE)
+ echo "ITEM_MODULES=\"ext3\"" >> $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/$(MULTIBOOTFILE)
+
install-modules:
dh_testdir
dh_testroot
install -c -m 644 $$f $(CURDIR)/debian/$(MODULES_PACKAGE)/lib/modules/$(KVER)/$$(basename $$f); \
strip --remove-section=.comment --remove-section=.note --strip-unneeded $(CURDIR)/debian/$(MODULES_PACKAGE)/lib/modules/$(KVER)/$$(basename $$f); \
done
- #ln -sf $(KVER) $(CURDIR)/debian/$(MODULES_PACKAGE)/lib/modules/current
install-headers:
dh_testdir
install -p -o root -g root -m 644 $(BUILDTMP)/Module.symvers $(CURDIR)/debian/$(HEADERS_PACKAGE)/usr/src/$(HEADERS_PACKAGE)/
cd $(BUILDTMP) && install -p -o root -g root -m 644 -D include/config/auto.conf \
$(CURDIR)/debian/$(HEADERS_PACKAGE)/usr/src/$(HEADERS_PACKAGE)/include/config/auto.conf
+ cd $(BUILDTMP) && install -p -o root -g root -m 644 -D include/config/kernel.release \
+ $(CURDIR)/debian/$(HEADERS_PACKAGE)/usr/src/$(HEADERS_PACKAGE)/include/config/kernel.release
cd $(KSRC) && \
find arch/$(ARCH) $(foreach dir,$(INCLUDE_HEADERS),include/$(dir)) -name '*.h' \
-exec install -D -m644 {} $(CURDIR)/debian/$(HEADERS_PACKAGE)/usr/src/$(HEADERS_PACKAGE)/{} \;
#install kbuild
install -d $(CURDIR)/debian/$(HEADERS_PACKAGE)/usr/src/$(KBUILD_PACKAGE)
cp -a $(KSRC)/scripts $(CURDIR)/debian/$(HEADERS_PACKAGE)/usr/src/$(KBUILD_PACKAGE)
+ cp -a $(BUILDTMP)/scripts $(CURDIR)/debian/$(HEADERS_PACKAGE)/usr/src/$(KBUILD_PACKAGE)
#kbuild fixes
cd $(CURDIR)/debian/$(HEADERS_PACKAGE)/usr/src/$(KBUILD_PACKAGE)/scripts && \
( rm -f $(RM_SCRIPTS); chmod a-x mkcompile_h )
+ find $(CURDIR)/debian/$(HEADERS_PACKAGE) -name ".gitignore" -exec rm {} \;
install-libc-headers:
dh_testdir
install-extra: install-modules-extra
-install-arch: build-arch install-kernel install-modules install-headers install-libc-headers
+install-arch: build-arch install-kernel install-bootimg install-modules install-headers install-libc-headers
ifeq ($(ARCH),arm)
build-arch: kernel-stamp modules-stamp headers