File: rules

package info (click to toggle)
kernel-patch-2.2.20-powerpc 2.2.20-3woody1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 108 kB
  • ctags: 13
  • sloc: makefile: 94; sh: 59
file content (131 lines) | stat: -rwxr-xr-x 3,819 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
#! /usr/bin/make -f

# User configurable piece.
epoch	 := 0

arch     := $(shell dpkg --print-architecture)

# The package version should be UPSTREAM-MINOR
# For instance:
#  2.2.15pre16-1
# Just one '-' should be present.
realver := $(shell dpkg-parsechangelog | awk -F' ' '/^Version:/ {print $$2}' | awk -F- '{print $$1}')
minorver  := $(shell dpkg-parsechangelog | awk -F- '/^Version:/ {print $$2}')

# The hypothetical kernel version - the unpatched source tree in use.
# The changelog should refer to kernel-patch-$(basever)-$(arch)
basever  := $(shell dpkg-parsechangelog | awk -F- '/^Source:/ {print $$3}')

# The debian revision of the image packages.
debver   := $(realver)-$(minorver)

ifneq ($(epoch),0)
 packver := $(epoch):$(debver)
else
 packver := $(debver)
endif

p_patch  := kernel-patch-$(basever)-powerpc
v_patch  := $(realver)-$(minorver)

kdir := build-tmp/kernel-source-$(basever)

subarches := chrp prep pmac

build:
	dh_testdir

clean:
	dh_testdir
	rm -rf build-tmp
	dh_clean

binary-indep:	build
	dh_testdir

binary-patch:	build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs -p$(p_patch)

	cp -a powerpc debian/tmp/usr/src/kernel-patches/powerpc
	for i in `ls config`; do \
	  cp config/$$i debian/tmp/usr/src/kernel-patches/powerpc/config.$$i; \
	done

	dh_installdocs -p$(p_patch)
	dh_installchangelogs -p$(p_patch)
	dh_compress -p$(p_patch)
	dh_installdeb -p$(p_patch)
	dh_fixperms -p$(p_patch)
	dh_gencontrol -p$(p_patch)
	dh_md5sums -p$(p_patch)
	dh_builddeb -p$(p_patch)

../kernel-patch-$(basever)-$(arch)_$(v_patch)_all.deb:
	$(MAKE) -f debian/rules binary-patch

binary-images:
	dh_testdir
	dh_testroot
	rm -rf build-tmp
	mkdir build-tmp
	if [ -f  /usr/src/kernel-source-$(basever).tar.bz2 ]; then		\
	  cd build-tmp && tar --bzip2 -xf /usr/src/kernel-source-$(basever).tar.bz2;	\
	else								\
	  cd build-tmp && tar xzf /usr/src/kernel-source-$(basever).tar.gz;	\
	fi
	ln -sf asm-ppc $(kdir)/include/asm
	if [ -f $(kdir)/drivers/usb/mkmap.adb ]; then		\
	  chmod a+x $(kdir)/drivers/usb/mkmap.adb;		\
	fi

	# Messes up version detection with kernel-package - but that's good
	export PATCH_THE_KERNEL=YES;					\
	export PATCH_DIR=$(shell pwd)/powerpc;				\
	for i in $(subarches); do					\
	  name=kernel-image-$(basever)-$${i};				\
	  cp config/$$i $(kdir)/.config;				\
	  if [ -f ../$${name}_$(debver)_$(arch).deb ];			\
	  then :;							\
	  else								\
	    mkdir $(kdir)/debian;					\
	    cp debian/changelog debian/control $(kdir)/debian/;		\
	    echo official > $(kdir)/debian/official;			\
	    (cd $(kdir) && make-kpkg --append_to_version -$$i		\
		--subarch $$i kernel_image);				\
	    (cd $(kdir) && make-kpkg clean);				\
	    cp build-tmp/$${name}_$(debver)_$(arch).deb			\
		 ..;							\
	  fi;								\
	done;								\
	mkdir $(kdir)/debian;						\
	cp debian/changelog debian/control $(kdir)/debian/;		\
	echo official > $(kdir)/debian/official;			\
	(cd $(kdir) && make-kpkg kernel_headers);			\
	cp build-tmp/kernel-headers-$(basever)_$(debver)_$(arch).deb ..

kernel-images:	binary-images \
		../kernel-headers-$(basever)_$(debver)_$(arch).deb

binary-arch: binary-patch kernel-images
	dpkg-distaddfile kernel-image-$(basever)-chrp_$(debver)_$(arch).deb base optional
	dpkg-distaddfile kernel-image-$(basever)-prep_$(debver)_$(arch).deb base optional
	dpkg-distaddfile kernel-image-$(basever)-pmac_$(debver)_$(arch).deb base optional
	dpkg-distaddfile kernel-headers-$(basever)_$(debver)_$(arch).deb devel optional

binary: binary-arch binary-indep

update_configs: $(KSRC)/arch/ppc/Makefile
	for i in $(subarches); do					\
	  cp -f config/$$i $(KSRC)/.config;				\
	  (cd $(KSRC) && make oldconfig);				\
	  cp -f $(KSRC)/.config config/new.$$i;				\
	done

.PHONY: binary binary-arch binary-indep clean

# Local Variables:
# mode:Makefile
# End: