* debian/arch/amd64/xen/defines: Change type to plain-xen.

* debian/bin/gencontrol.py: Add modules package for plain-xen images.
* debian/lib/python/debian_linux/debian.py:
  Add a hack to get deps for the modules package right.
* debian/rules.real: Support plain-xen type.
* debian/templates/control.modules.in: Add.

svn path=/dists/trunk/linux-2.6/; revision=6034
This commit is contained in:
Bastian Blank 2006-03-02 22:24:19 +00:00
parent d5271106bf
commit 12f1acaa4e
5 changed files with 28 additions and 7 deletions

View File

@ -2,7 +2,10 @@
flavours:
amd64-k8
em64t-p4
type: plain
[image]
initramfs: false
type: plain-xen
[amd64-k8]
class: AMD64 K8

View File

@ -93,6 +93,7 @@ class gencontrol(debian_linux.gencontrol.gencontrol):
def do_flavour_packages(self, packages, makefile, arch, subarch, flavour, vars, makeflags, extra):
image = self.templates["control.image"]
headers = self.templates["control.headers"]
modules = self.templates["control.modules"]
image_latest = self.templates["control.image.latest"]
headers_latest = self.templates["control.headers.latest"]
@ -108,6 +109,13 @@ class gencontrol(debian_linux.gencontrol.gencontrol):
packages_own = []
packages_dummy = []
if vars['type'] == 'plain-xen':
p = self.process_package(modules[0], vars)
image_depends.extend(p['Reverse-Depends'])
del p['Reverse-Depends']
packages_own.append(p)
packages_own.append(self.process_real_image(image[0], image_depends, vars))
packages_own.append(self.process_package(headers[0], vars))
packages_dummy.extend(self.process_packages(image_latest, vars))

View File

@ -202,6 +202,7 @@ class package(dict):
('Suggests', package_relation_list),
('Replaces', package_relation_list),
('Conflicts', package_relation_list),
('Reverse-Depends', package_relation_list), # Some sort of hack
('Description', package_description),
))

13
debian/rules.real vendored
View File

@ -125,7 +125,7 @@ $(STAMPS_DIR)/build-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-kernel-package: $(STAMPS_DIR)/
cd '$(DIR)'; $(setup_env) PATH='$(CURDIR)/build:$(CURDIR)/bin:$(PATH)' $(kpkg_image) build
touch '$@'
$(STAMPS_DIR)/build-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-plain: $(STAMPS_DIR)/setup-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-$(TYPE)
$(STAMPS_DIR)/build-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-plain-xen: $(STAMPS_DIR)/setup-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-$(TYPE)
cd '$(DIR)'; $(setup_env) make ARCH=$(KERNEL_ARCH)
touch '$@'
@ -139,11 +139,10 @@ $(STAMPS_DIR)/setup-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-kernel-package: $(BUILD_DIR)/c
cd '$(DIR)'; $(setup_env) $(kpkg_image) configure
touch '$@'
$(STAMPS_DIR)/setup-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-plain: $(BUILD_DIR)/config.$(ARCH)-$(SUBARCH)-$(FLAVOUR) $(STAMPS_DIR)/source-$(ARCH)-$(SUBARCH)
$(STAMPS_DIR)/setup-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-plain-xen: $(BUILD_DIR)/config.$(ARCH)-$(SUBARCH)-$(FLAVOUR) $(STAMPS_DIR)/source-$(ARCH)-$(SUBARCH)
rm -rf '$(DIR)'
cp -al '$(SOURCE_DIR)' '$(DIR)'
cp '$<' '$(DIR)/.config'
# TODO
echo '$(KPKG_ABINAME)$(LOCALVERSION)' > '$(DIR)/localversion'
cd '$(DIR)'; $(setup_env) make prepare ARCH=$(KERNEL_ARCH)
touch '$@'
@ -302,7 +301,6 @@ install-image-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-$(TYPE): PACKAGE_NAME = linux-image-
install-image-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-$(TYPE): PACKAGE_DIR = $(CURDIR)/debian/$(PACKAGE_NAME)
install-image-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-$(TYPE): SOURCE_DIR=$(BUILD_DIR)/build-$(ARCH)-$(SUBARCH)-$(FLAVOUR)
install-image-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-$(TYPE): DIR=$(BUILD_DIR)/$@
install-image-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-$(TYPE): DH_OPTIONS = -p$(PACKAGE_NAME)
install-image-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-kernel-package: $(STAMPS_DIR)/build-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-$(TYPE)
rm -rf '$(DIR)'
@ -320,13 +318,16 @@ endif
done
rm -rf '$(DIR)'
install-image-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-plain: $(STAMPS_DIR)/build-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-$(TYPE)
install-image-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-plain-xen: MODULES_PACKAGE_NAME = linux-modules-$(REAL_VERSION)
install-image-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-plain-xen: MODULES_PACKAGE_DIR = $(CURDIR)/debian/$(MODULES_PACKAGE_NAME)
install-image-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-plain-xen: DH_OPTIONS = -p$(PACKAGE_NAME) -p$(MODULES_PACKAGE_NAME)
install-image-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-plain-xen: $(STAMPS_DIR)/build-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-$(TYPE)
dh_testdir
dh_testroot
dh_clean -d -k
dh_installdirs 'boot'
cp '$(SOURCE_DIR)/vmlinuz' $(PACKAGE_DIR)/boot/vmlinuz-$(REAL_VERSION)
cd '$(SOURCE_DIR)'; $(setup_env) make modules_install ARCH=$(KERNEL_ARCH) INSTALL_MOD_PATH=$(PACKAGE_DIR)
cd '$(SOURCE_DIR)'; $(setup_env) make modules_install ARCH=$(KERNEL_ARCH) INSTALL_MOD_PATH=$(MODULES_PACKAGE_DIR)
$(MAKE) -f debian/rules.real install-base DH_OPTIONS='$(DH_OPTIONS)'
install-patch: PACKAGE = linux-patch-debian-$(VERSION)

8
debian/templates/control.modules.in vendored Normal file
View File

@ -0,0 +1,8 @@
Package: linux-modules-@upstreamversion@@abiname@@localversion@
Section: base
Priority: optional
Depends: module-init-tools (>= 0.9.13)
Reverse-Depends: linux-modules-@upstreamversion@@abiname@@localversion@ (= ${Source-Version})
Description: Linux kernel modules @version@ image on @class@ machines
This package provides pre-built loadable modules for
Linux kernel @version@ on @longclass@ machines.