LIBC_PACKAGE := linux-$(PACKAGE)-headers
MULTIBOOTDIR := etc/multiboot.d
-MULTIBOOTFILE := $(MULTIBOOTDIR)/01-Maemo-$(PACKAGE)-$(RELEASE).item
+MULTIBOOTFILE := $(MULTIBOOTDIR)/20-Maemo5-$(PACKAGE)-$(RELEASE).item
+BOOTMENUDIR := etc/bootmenu.d
+BOOTMENUFILE := $(BOOTMENUDIR)/20-Maemo5-$(PACKAGE)-$(RELEASE).item
BUILDTMP := $(CURDIR)/debian/build
KSRC := $(BUILDTMP)/$(PACKAGE)
+WIRELESS_TESTING_TREE := $(BUILDTMP)/wireless-testing
+COMPAT_TREE := $(BUILDTMP)/compat
+COMPAT_WIRELESS_TREE := $(BUILDTMP)/compat-wireless-2.6
+
DEFCONFIG := rx51_defconfig
ARCH = $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU)
INCLUDE_HEADERS_ARCH = asm-$(ARCH) config linux
endif
get-orig-source:
- wget ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.28.tar.gz
+ wget http://repository.maemo.org/pool/maemo5.0/free/k/kernel/kernel_2.6.28.orig.tar.gz -O kernel-power_2.6.28.orig.tar.gz
-source-copy-stamp:
+source-stamp:
dh_testdir
- mkdir -p $(BUILDTMP)/$(SOURCE_PACKAGE)
- $(MAKE) clean
- tar cf - `echo * | sed -e 's/ debian//g;s/\.deb//g'` 2>/dev/null | (cd $(BUILDTMP)/$(SOURCE_PACKAGE); umask 000; tar xspf -)
- cd $(BUILDTMP)/$(SOURCE_PACKAGE) && ( QUILT_PATCHES=$(CURDIR)/debian/patches quilt push -a -q || test $$? = 2 )
- touch $@
-
-source-stamp: source-copy-stamp
- cd $(BUILDTMP) && cp -a $(SOURCE_PACKAGE) $(KSRC)
+ mkdir -p $(KSRC)
+ tar cf - `echo * | sed -e 's/ debian / /g;s/ [^ ]*\.deb / /g;s/ [^ ]*\.gz / /g;s/ [^ ]*fiasco[^ ]* / /g'` 2>/dev/null | ( cd $(KSRC); umask 000; tar xspf - )
+ cd $(KSRC) && ( QUILT_PATCHES=$(CURDIR)/debian/patches quilt push -a -q || test $$? = 2 )
+ cd $(BUILDTMP) && tar --exclude=".pc" --bzip2 -cf $(SOURCE_PACKAGE)-$(RELEASE).tar.bz2 $(PACKAGE)
touch $@
configure-stamp: source-stamp
$(MAKE) -C $(KSRC) $(NJOBS) $(EXTRAVERSION) modules
touch $@
-kernel-source-stamp: source-copy-stamp
- cd $(BUILDTMP) && tar --bzip2 -cf $(SOURCE_PACKAGE)-$(RELEASE).tar.bz2 $(SOURCE_PACKAGE)
+packet-injection-source-stamp:
+ dh_testdir
+ mkdir -p $(BUILDTMP)
+ cd $(BUILDTMP) && tar -xf /usr/src/compat-wireless-2.6.tar.bz2
+ cd $(BUILDTMP) && tar -xf /usr/src/compat.tar.bz2
+ cd $(BUILDTMP) && tar -xf /usr/src/wireless-testing.tar.bz2
touch $@
-headers: kernel-stamp modules-stamp
+packet-injection-configure-stamp: packet-injection-source-stamp
+ touch $(COMPAT_WIRELESS_TREE)/compat_version
+ cd $(COMPAT_WIRELESS_TREE) && GIT_TREE=$(WIRELESS_TESTING_TREE) GIT_COMPAT_TREE=$(COMPAT_TREE) GIT_COMPAT_WIRELESS_TREE=$(COMPAT_WIRELESS_TREE) ./scripts/admin-update.sh
+ cd $(COMPAT_WIRELESS_TREE) && ./scripts/driver-select wl12xx
+ touch $@
+
+packet-injection-build-stamp: kernel-stamp modules-stamp packet-injection-configure-stamp
+ $(MAKE) -C $(COMPAT_WIRELESS_TREE) $(NJOBS) KLIB_BUILD=$(KSRC)
+ touch $@
+
+headers: kernel-stamp modules-stamp packet-injection-build-stamp
clean:
dh_testdir
dh_testroot
rm -rf $(BUILDTMP)
rm -f debian/files debian/$(FLASHER_PACKAGE).postinst debian/$(MODULES_PACKAGE).postinst debian/$(MODULES_PACKAGE).postrm
- rm -f source-copy-stamp source-stamp configure-stamp kernel-stamp modules-stamp kernel-source-stamp
+ rm -f source-stamp configure-stamp kernel-stamp modules-stamp packet-injection-source-stamp packet-injection-configure-stamp packet-injection-build-stamp
dh_clean
install-kernel:
dh_testroot
mkdir -p $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/boot
mkdir -p $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/$(MULTIBOOTDIR)
+ mkdir -p $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/$(BOOTMENUDIR)
install -m644 $(KSRC)/arch/arm/boot/zImage $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/boot/zImage-$(RELEASE)
- echo "ITEM_NAME=\"Maemo $(PACKAGE) $(RELEASE)\"" > $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/$(MULTIBOOTFILE)
+ echo "ITEM_NAME=\"Maemo 5 with $(PACKAGE) $(RELEASE) (Internal Nand)\"" > $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/$(MULTIBOOTFILE)
echo "ITEM_KERNEL=\"$(RELEASE)\"" >> $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/$(MULTIBOOTFILE)
- echo "ITEM_MODULES=\"ext3\"" >> $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/$(MULTIBOOTFILE)
+ echo "ITEM_OMAPATAG=\"1\"" >> $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/$(MULTIBOOTFILE)
+ cp $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/$(MULTIBOOTFILE) $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/$(BOOTMENUFILE)
chmod 644 $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/$(MULTIBOOTFILE)
+ chmod 644 $(CURDIR)/debian/$(BOOTIMG_PACKAGE)/$(BOOTMENUFILE)
install-flasher:
dh_testdir
mkdir -p $(CURDIR)/debian/$(DEBUG_PACKAGE)/usr/lib/debug/lib/modules/$(RELEASE)
mkdir -p $(CURDIR)/debian/$(DEBUG_PACKAGE)/lib/modules/$(RELEASE)
install -m644 $(KSRC)/vmlinux $(CURDIR)/debian/$(DEBUG_PACKAGE)/usr/lib/debug/vmlinux-$(RELEASE)
- for f in $$(find $(CURDIR)/debian/$(MODULES_PACKAGE) -name "*.ko"); do \
+ for f in $$(find $(CURDIR)/debian/$(MODULES_PACKAGE)/lib/modules/$(RELEASE) -name "*.ko"); do \
objcopy --only-keep-debug $$f $(CURDIR)/debian/$(DEBUG_PACKAGE)/usr/lib/debug/lib/modules/$(RELEASE)/$$(basename $$f); \
strip --remove-section=.comment --remove-section=.note --strip-unneeded $(CURDIR)/debian/$(MODULES_PACKAGE)/lib/modules/$(RELEASE)/$$(basename $$f); \
objcopy --add-gnu-debuglink $(CURDIR)/debian/$(DEBUG_PACKAGE)/usr/lib/debug/lib/modules/$(RELEASE)/$$(basename $$f) $(CURDIR)/debian/$(MODULES_PACKAGE)/lib/modules/$(RELEASE)/$$(basename $$f); \
dh_testroot
mkdir -p $(CURDIR)/debian/$(MODULES_PACKAGE)/lib/modules/$(RELEASE)
mkdir -p $(CURDIR)/debian/$(MODULES_PACKAGE)/etc/modprobe.d
+ mkdir -p $(CURDIR)/debian/$(MODULES_PACKAGE)/opt/packet-injection-modules/$(RELEASE)
for f in $$(find $(KSRC) -name "*.ko"); do \
install -c -m644 $$f $(CURDIR)/debian/$(MODULES_PACKAGE)/lib/modules/$(RELEASE)/$$(basename $$f); \
strip --remove-section=.comment --remove-section=.note --strip-unneeded $(CURDIR)/debian/$(MODULES_PACKAGE)/lib/modules/$(RELEASE)/$$(basename $$f); \
done
- install -m644 $(CURDIR)/debian/blacklist $(CURDIR)/debian/$(MODULES_PACKAGE)/etc/modprobe.d
+ for ko in wl1251_spi.ko wl1251.ko cfg80211.ko compat.ko rfkill_backport.ko mac80211.ko; do \
+ for f in $$(find $(COMPAT_WIRELESS_TREE) -name $$ko); do \
+ install -c -m644 $$f $(CURDIR)/debian/$(MODULES_PACKAGE)/opt/packet-injection-modules/$(RELEASE)/$$(basename $$f); \
+ strip --remove-section=.comment --remove-section=.note --strip-unneeded $(CURDIR)/debian/$(MODULES_PACKAGE)/opt/packet-injection-modules/$(RELEASE)/$$(basename $$f); \
+ done; \
+ done
+ install -m644 $(CURDIR)/debian/kernel-power.blacklist $(CURDIR)/debian/$(MODULES_PACKAGE)/etc/modprobe.d
install-headers:
dh_testdir
cp -a $(KSRC)/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" -delete
+ #find $(CURDIR)/debian/$(HEADERS_PACKAGE) -name ".gitignore" -delete
install-libc-headers: source-stamp
dh_testdir
build-arch:
endif
-build-indep: kernel-source-stamp
+build-indep: source-stamp
build: build-arch build-indep
binary-arch: install-libc-headers
endif
sed \
- -e 's,@VERSION@,$(RELEASE),g' \
-e 's,@RELEASE@,$(RELEASE),g' \
< $(CURDIR)/debian/$(FLASHER_PACKAGE).postinst.in \
> $(CURDIR)/debian/$(FLASHER_PACKAGE).postinst