r3262 - in branches/kernel-image-2.6.11/debian: . arch/i386 templates

Jurij Smakov jurij-guest@costa.debian.org
Sun, 29 May 2005 04:46:18 +0000


Author: jurij-guest
Date: 2005-05-29 04:46:18 +0000 (Sun, 29 May 2005)
New Revision: 3262

Added:
   branches/kernel-image-2.6.11/debian/templates/control.headers.in
   branches/kernel-image-2.6.11/debian/templates/control.source.in
Modified:
   branches/kernel-image-2.6.11/debian/Makefile
   branches/kernel-image-2.6.11/debian/arch/i386/control.in
   branches/kernel-image-2.6.11/debian/rules
   branches/kernel-image-2.6.11/debian/templates/control.main.in
   branches/kernel-image-2.6.11/debian/templates/post-install.in
Log:
Builds source, tree and images. Images currently
break due to some stem issues.


Modified: branches/kernel-image-2.6.11/debian/Makefile
===================================================================
--- branches/kernel-image-2.6.11/debian/Makefile	2005-05-29 00:15:03 UTC (rev 3261)
+++ branches/kernel-image-2.6.11/debian/Makefile	2005-05-29 04:46:18 UTC (rev 3262)
@@ -5,24 +5,23 @@
 # Additionally, variables version, abiname and ktver are
 # expected to be available (need to be exported from the parent process).
 # It is possible to override the flavours by setting the flavours
-# variable. 
+# variable. It will also be passed a list of source files
 #
-# This Makefile is run from the debian subdir
+# This Makefile is run from the debian subdir. 
 #
 SHELL  := sh -e
 debver := $(version)-$(abiname)
 uver   := $(subst .,_,$(version))
 debnum := -$(abiname)
-kbpkg  := kernel-kbuild-$(version)-$(abiname)
-# This will eventually have to be changed to a command, applying
-# the debian's patches from the local tree (arch/patches?)
-kpatch := /usr/src/kernel-patches/all/$(version)/apply/debian $(version)-$(ktver)
+#
+# These variables control the behaviour of make-kpkg
+#
 DEBIAN_UPSTREAM_VERSION := $(version)
 ifeq (,$(DEB_HOST_ARCH))
   DEB_HOST_ARCH  := $(shell dpkg-architecture -qDEB_HOST_ARCH)
   DEB_BUILD_ARCH := $(shell dpkg-architecture -qDEB_BUILD_ARCH)
 endif
-export version debnum DEBIAN_UPSTREAM_VERSION
+export version debnum DEBIAN_UPSTREAM_VERSION DEBIAN_STEM
 
 karch := $(DEB_HOST_ARCH)
 #
@@ -33,8 +32,9 @@
   append  := 
 else
   basedir := arch/$(karch)/$(subarch)
-  append  := -$(subarch)
+  append  := $(subarch)-
 endif
+
 default := $(basedir)/config.default
 configs := $(notdir $(wildcard $(basedir)/config.*))
 configs := $(filter-out config.common config.default, $(configs))
@@ -43,6 +43,8 @@
 ifndef flavours
   flavours := $(patsubst config.%,%,$(configs))
 endif
+controls := templates/control.source.in templates/control.headers.in
+controls += $(basedir)/control.in
 
 -include $(basedir)/Makefile.inc
 
@@ -54,8 +56,10 @@
 # replaced by the flavour for which the command is run. 
 #
 kpkg_headers_cmd := HEADER_CLEAN_HOOK='$(CURDIR)/header-install-$(subarch)'
-kpkg_headers_cmd += make-kpkg --append-to-version $(debnum)$(append)
-kpkg_build_cmd  := make-kpkg --append-to-version $(debnum)-@flavour@
+kpkg_headers_cmd += make-kpkg --append-to-version $(append)$(debnum)
+kpkg_headers_cmd += --stem linux
+kpkg_build_cmd := make-kpkg --append-to-version $(debnum)-@flavour@
+kpkg_build_cmd += --stem linux
 ifdef added_patches
   kpkg_headers_cmd += --added_patches $(subst @uver@,$(uver),$(added_patches))
   kpkg_build_cmd   += --added_patches $(subst @uver@,$(uver),$(added_patches))
@@ -119,9 +123,6 @@
 	touch install-stamp-$(subarch)-$*
 
 headers-stamp: $(kdir)
-	dh_testdir
-	dh_clean -k
-	dh_installdirs
 	cp $(default) $(kdir)/.config
 	cd $(kdir); $(kpkg_headers_cmd)
 	cat $(kdir)/debian/files >> files
@@ -165,24 +166,23 @@
 #	Flavour config file must be present
 	cat $(basedir)/$@ >> $@			 
 
-$(kdir): post-install-$(subarch)
-	dh_testdir
-	tar jxf /usr/src/$(tkdir).tar.bz2
+srcfiles := $(filter-out ../debian ../linux-source-$(version), $(shell echo ../*))
+$(kdir): post-install-$(subarch) $(controls)
+	mkdir -p $(tkdir)
+	cp -al $(srcfiles) $(tkdir)
 	mkdir -p $(tkdir)/debian
-	cp debian/changelog $(tkdir)/debian
-	cp debian/control   $(tkdir)/debian
-	cp debian/copyright $(tkdir)/debian
+	cp changelog $(tkdir)/debian
+	cp copyright $(tkdir)/debian
+	cat $(controls) |			\
+	sed -e 's/@version@/$(version)/g'	\
+	    -e 's/@ltver@/$(ltver)/g'		\
+	    -e 's/@subarch@/$(append)/g'	\
+	    -e 's/@major@/$(major)/g'		\
+            -e 's/@abiname@/$(abiname)/g' |	\
+        sed '/^[[:space:]]*$$/d' |		\
+        sed 's/^Package:/\n&/g' > $(tkdir)/debian/control
 	touch $(tkdir)/debian/official
 	install post-install-$(subarch) $(tkdir)/debian/post-install
-	cd $(tkdir) && $(kpatch)
-#	Arch/subarch-specific patches
-	if [ -d $(basedir)/patches ] &&				\
-	   [ -s $(basedir)/patches/list ]; then			\
-	  cd $(tkdir);						\
-	  for i in $$(cat ../$(basedir)/patches/list); do	\
-	    patch -p1 < ../$(basedir)/patches/$${i};		\
-	  done;							\
-	fi
 	mv $(tkdir) $@
 #
 # This target performs a build for a particular flavour. Note
@@ -199,7 +199,6 @@
 # still needs variables headers_dirs and headers_extra set.
 #
 build-stamp-$(subarch)-%: build-$(subarch)-%
-	dh_testdir
 	PATH=$$PWD/bin:$$PATH;					\
 	cd $<;							\
 	$(subst @flavour@,$*,$(kpkg_build_cmd));		\
@@ -216,7 +215,6 @@
 # Creates a build directory for a particular flavour
 #
 build-$(subarch)-%: $(kdir) config.%
-	dh_testdir
 	if [ ! -d $@ ]; then					\
 	  cp -al $(kdir) $@;					\
 	  cp config.$* $@/.config;				\

Modified: branches/kernel-image-2.6.11/debian/arch/i386/control.in
===================================================================
--- branches/kernel-image-2.6.11/debian/arch/i386/control.in	2005-05-29 00:15:03 UTC (rev 3261)
+++ branches/kernel-image-2.6.11/debian/arch/i386/control.in	2005-05-29 04:46:18 UTC (rev 3262)
@@ -1,37 +1,20 @@
-Package: kernel-headers-@version@-@abiname@-foo
-Architecture: any
-Section: devel
-Priority: optional
-Depends: coreutils | fileutils (>= 4.0)
-Provides: kernel-headers, kernel-headers-2.6
-Description: Header files related to Linux kernel version @version@
- This package provides kernel header files for version @version@, generally
- used for building out-of-tree kernel modules. See the 'module-assistant'
- package for more information.
- .
- This package consists mostly of the common files between the subarchitecture
- specific header packages, which should be used for building modules.
- .
- For more information you can also read:
- /usr/share/doc/kernel-headers-@version@-@abiname@/debian.README.gz.
-
-Package: kernel-headers-2.6.11-1-686
+Package: linux-headers-2.6.11-1-686
 Architecture: i386
 Section: devel
 Priority: optional
 Depends: coreutils | fileutils (>= 4.0), kernel-headers-2.6.11-1
-Provides: kernel-headers, kernel-headers-2.6
+Provides: linux-headers, linux-headers-2.6
 Description: Linux kernel headers 2.6.11 on PPro/Celeron/PII/PIII/P4
  This package provides kernel header files for version 2.6.11 on
  Pentium Pro/Celeron/Pentium II/Pentium III/Pentium 4.
  Please read /usr/share/doc/kernel-headers-2.6.11-1/debian.README.gz for
  details
 
-Package: kernel-image-2.6.11-1-686
+Package: linux-image-2.6.11-1-686
 Architecture: i386
 Section: base
 Priority: optional
-Provides: kernel-image, kernel-image-2.6
+Provides: linux-image, linux-image-2.6
 Depends: initrd-tools (>= 0.1.76), coreutils | fileutils (>= 4.0), module-init-tools (>= 0.9.13)
 Conflicts: hotplug (<< 0.0.20040105-1)
 Suggests: lilo (>= 19.1) | grub, fdutils, kernel-doc-2.6.11 | kernel-source-2.6.11

Modified: branches/kernel-image-2.6.11/debian/rules
===================================================================
--- branches/kernel-image-2.6.11/debian/rules	2005-05-29 00:15:03 UTC (rev 3261)
+++ branches/kernel-image-2.6.11/debian/rules	2005-05-29 04:46:18 UTC (rev 3262)
@@ -9,7 +9,6 @@
 # Generally nothing needs to be modified below this line
 #
 SHELL    := sh -e
-controls := $(wildcard debian/arch/*/control.in debian/arch/*/*/control.in)
 karch    := $(shell dpkg-architecture -qDEB_HOST_ARCH)
 major    := $(basename $(version))
 srcver   := $(shell dpkg-parsechangelog | awk '/^Version:/ {print $$2}')
@@ -43,7 +42,7 @@
 #
 source_files = $(filter-out debian linux-source-$(version), $(shell echo *))
 
-export version abiname ltver kbuildver flavours
+export version abiname ltver kbuildver flavours major
 
 patch: debian/patch-stamp
 debian/patch-stamp: debian/bin/apply
@@ -107,24 +106,24 @@
 	dh_builddeb -p$(tpkg)
 	touch debian/tree-stamp
 
-unpack: debian/linux-source-$(version).tar.bz2 unpack-stamp
-unpack-stamp:
+unpack: debian/unpack-stamp
+debian/unpack-stamp: debian/patch-stamp
 	dh_testdir
-	for i in $(subarchs); do					\
-	  cd debian; 							\
-	  $(MAKE) subarch=$${i} source_files='$(source_files)' unpack;	\
+	for i in $(subarchs); do	\
+	  cd debian; 			\
+	  $(MAKE) subarch=$${i} unpack;	\
 	done
 	ln -s $$(command -v touch) debian/bin/touch.orig
-	touch unpack-stamp
+	touch debian/unpack-stamp
 
-build: build-stamp
-build-stamp: unpack-stamp
+build: debian/build-stamp
+debian/build-stamp: debian/unpack-stamp
 	dh_testdir
-	for i in $(subarchs); do					\
-	  cd debian;	 						\ 
-	  $(MAKE) subarch=$${i} source_files='$(source_files)' build;	\
+	for i in $(subarchs); do	\
+	  cd debian;			\
+	  $(MAKE) subarch=$${i} build;	\
 	done
-	touch build-stamp
+	touch debian/build-stamp
 
 clean: unpatch
 	dh_testdir
@@ -136,12 +135,12 @@
 	rm -rf kernel-source-* build-* install-*		
 	dh_clean
 
-binary-indep: build
+binary-indep: source tree
 binary-arch: build
 	dh_testdir
-	for i in $(subarchs); do					\
-	  cd debian;							\
-	  $(MAKE) subarch=$${i} source_files='$(source_files)' binary;	\	
+	for i in $(subarchs); do	\
+	  cd debian;			\
+	  $(MAKE) subarch=$${i} binary;	\
 	done
 
 binary:	binary-indep binary-arch
@@ -151,7 +150,8 @@
 # variable values into the template.
 #
 debian/control: debian/templates/control.main.in
-	cat debian/templates/control.main.in |		\
+	cat debian/templates/control.source.in 		\
+	    debian/templates/control.main.in |		\
 	sed -e 's/@version@/$(version)/g'       	\
 	    -e 's/@major@/$(major)/g'			\
 	    -e 's/@ltver@/$(ltver)/g'           	\
@@ -161,18 +161,5 @@
 	    -e 's/@abiname@/$(abiname)/g' |       	\
 	sed '/^[[:space:]]*$$/d' |              	\
         sed 's/^Package:/\n&/g' > debian/control
-#
-# If we ended up here, either we need to perform the linux-source
-# build, or use the existing linux-source to unpack the kernels.
-# This can be controlled by the use_existing_source variable.
-#
-debian/linux-source-$(version).tar.bz2: debian/Makefile.source
-	dh_testdir
-	if [ '$(use_existing_source)' = 'yes' ]; then		\
-	  ln -s /usr/src/linux-source-$(version).tar.bz2	\
-	        debian/linux-source-$(version).tar.bz2;		\
-	else							\
-	  $(MAKE) -f debian/Makefile.source binary;		\
-	fi
 	
-.PHONY: clean build unpack binary-indep binary-arch binary patch unpatch source
+.PHONY: clean build unpack binary-indep binary-arch binary patch unpatch source tree

Added: branches/kernel-image-2.6.11/debian/templates/control.headers.in
===================================================================
--- branches/kernel-image-2.6.11/debian/templates/control.headers.in	2005-05-29 00:15:03 UTC (rev 3261)
+++ branches/kernel-image-2.6.11/debian/templates/control.headers.in	2005-05-29 04:46:18 UTC (rev 3262)
@@ -0,0 +1,17 @@
+Package: linux-headers@subarch@-@version@-@abiname@
+Architecture: any
+Section: devel
+Priority: optional
+Depends: coreutils | fileutils (>= 4.0)
+Provides: linux-headers, linux-headers-@major@
+Description: Common architecture-specific header files for Linux kernel @version@
+ This package provides the architecture-specific common kernel header files
+ for Linux kernel version @version@, generally used for building out-of-tree
+ kernel modules. To obtain a complete set of headers you also need to install
+ the linux-headers-@version@-@abiname@-(flavour) package, matching the flavour
+ of the kernel you intend the build for. To obtain such a set for the currently
+ running kernel it is sufficient to run a command
+
+ apt-get install linux-headers-@version@-@abiname@-$(uname -r)
+ .
+ and it will be unpacked in /usr/src/linux-headers-@version@-@abiname@-(flavour).

Modified: branches/kernel-image-2.6.11/debian/templates/control.main.in
===================================================================
--- branches/kernel-image-2.6.11/debian/templates/control.main.in	2005-05-29 00:15:03 UTC (rev 3261)
+++ branches/kernel-image-2.6.11/debian/templates/control.main.in	2005-05-29 04:46:18 UTC (rev 3262)
@@ -1,10 +1,3 @@
-Source: linux-source-@version@
-Section: devel
-Priority: optional
-Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
-Standards-Version: 3.6.1.0
-Build-Depends: Build-Depends: gcc (>= 4:3.3), debhelper (>= 4), kernel-package, module-init-tools, sparc-utils [sparc]
-
 Package: linux-source-@version@
 Architecture: all
 Section: devel
@@ -73,19 +66,6 @@
  The package serves no purpose outside of the Debian build and
  archive infrastructure.
 
-Package: linux-headers-@version@-@abiname@
-Architecture: all
-Section: devel
-Priority: optional
-Depends: coreutils | fileutils (>= 4.0)
-Provides: linux-headers, linux-headers-@major@
-Description: Architecture-independent header files for Linux kernel @version@
- This package provides the architecture-independent kernel header files
- for Linux kernel version @version@, generally used for building out-of-tree
- kernel modules. It does not include the header files for (sub)architectures
- which require additional unmerged patches to build, for those separate
- header packages are provided.
-
 Package: linux-scripts-@version@-@abiname@
 Architecture: any
 Section: devel

Added: branches/kernel-image-2.6.11/debian/templates/control.source.in
===================================================================
--- branches/kernel-image-2.6.11/debian/templates/control.source.in	2005-05-29 00:15:03 UTC (rev 3261)
+++ branches/kernel-image-2.6.11/debian/templates/control.source.in	2005-05-29 04:46:18 UTC (rev 3262)
@@ -0,0 +1,6 @@
+Source: linux-source-@version@
+Section: devel
+Priority: optional
+Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
+Standards-Version: 3.6.1.0
+Build-Depends: Build-Depends: gcc (>= 4:3.3), debhelper (>= 4), kernel-package, module-init-tools, sparc-utils [sparc]

Modified: branches/kernel-image-2.6.11/debian/templates/post-install.in
===================================================================
--- branches/kernel-image-2.6.11/debian/templates/post-install.in	2005-05-29 00:15:03 UTC (rev 3261)
+++ branches/kernel-image-2.6.11/debian/templates/post-install.in	2005-05-29 04:46:18 UTC (rev 3262)
@@ -28,14 +28,14 @@
 # prefix=$(version)-$(abiname)
 # prefix is then used to form a destination directory
 # to link to. For cases with subarch we need to link
-# to kernel-headers-$(version)-$(abiname)-$(subarch),
+# to kernel-headers-$(subarch)-$(version)-$(abiname),
 # not just kernel-headers-$(version)-$(abiname). Note
 # that the append_subarch substitution must contain a
-# dash, if it is non-empty.
+# trailing dash, if it is non-empty.
 #
 append='@append_subarch@'
 suffix=${version#*$debnum-}
-prefix=${version%%-*}${debnum}${append}
+prefix=${append}${version%%-*}${debnum}
 pkg=kernel-headers-$version
 top=$PWD/debian/$pkg
 dir=$top/usr/src/kernel-headers-$version