111 lines
5.5 KiB
Diff
111 lines
5.5 KiB
Diff
Index: new/debian/control.in
|
|
===================================================================
|
|
--- new.orig/debian/control.in
|
|
+++ new/debian/control.in
|
|
@@ -18,32 +18,9 @@ Homepage: http://www.zfsonlinux.org/
|
|
Vcs-Git: git://anonscm.debian.org/pkg-zfsonlinux/spl.git
|
|
Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-zfsonlinux/spl.git
|
|
|
|
-Package: spl-dkms
|
|
-Architecture: all
|
|
-Depends: linux-headers-amd64, ${misc:Depends}, dkms (>> 2.1.1.2-5), lsb-release, file
|
|
-Recommends: spl (>= ${source:Upstream-Version})
|
|
-Provides: spl-modules
|
|
-Description: Solaris Porting Layer kernel modules for Linux
|
|
- The Solaris Porting Layer (SPL) is a Linux kernel module which provides
|
|
- many of the Solaris kernel APIs. This shim layer makes it possible to
|
|
- run Solaris kernel code in the Linux kernel with relatively minimal
|
|
- modification. The Solaris Porting LAyer Tests (SPLAT) is a Linux kernel
|
|
- module which provides a testing harness for the SPL module.
|
|
- .
|
|
- SPL can be particularly useful when you want to track upstream Illumos
|
|
- (or any other OpenSolaris fork) development closely and don't want the
|
|
- overhead of maintaining a large patch which converts Solaris primitives
|
|
- to Linux primitives.
|
|
- .
|
|
- This package contains the source code for the SPL and SPLAT Linux kernel
|
|
- modules, which can be used with DKMS, so that local kernel modules are
|
|
- automatically built and installed every time the kernel packages are
|
|
- upgraded.
|
|
-
|
|
Package: spl
|
|
Architecture: linux-any
|
|
Depends: ${shlibs:Depends}, ${misc:Depends}
|
|
-Recommends: spl-modules | spl-dkms
|
|
Description: Solaris Porting Layer user-space utilities for Linux
|
|
The Solaris Porting Layer (SPL) is a Linux kernel module which provides
|
|
many of the Solaris kernel APIs. This shim layer makes it possible to
|
|
Index: new/debian/rules
|
|
===================================================================
|
|
--- new.orig/debian/rules
|
|
+++ new/debian/rules
|
|
@@ -24,15 +24,12 @@ pmodules = $(PACKAGE)-modules-$(non_epoc
|
|
KIMGVER=$(shell dpkg -s linux-image-$(KVERS)-$(DEB_HOST_ARCH) | grep ^Version | sed 's/.*: //')
|
|
|
|
%:
|
|
- dh $@ --with dkms
|
|
+ dh $@
|
|
|
|
override_dh_prep-base-deb-files:
|
|
- sed -e 's/##SHLIB_MAJOR##/$(SHLIB_MAJOR)/g ; s/##MODULES_BUILD_DEPENDS##/linux-headers-$(KVERS)-common, linux-headers-$(KVERS)-$(DEB_HOST_ARCH)/g' \
|
|
+ sed -e 's/##SHLIB_MAJOR##/$(SHLIB_MAJOR)/g ; s/##MODULES_BUILD_DEPENDS##/pve-headers-$(KVERS)/g' \
|
|
< debian/control.in > debian/control
|
|
|
|
- sed -e 's/##KVERS##/$(KVERS)/g ; s/#KVERS#/$(KVERS)/g ; s/_KVERS_/$(KVERS)/g ; s/##KDREV##/$(KDREV)/g ; s/#KDREV#/$(KDREV)/g ; s/_KDREV_/$(KDREV)/g ; s/_ARCH_/$(DEB_HOST_ARCH)/g ; s/_IMGVER_/$(KIMGVER)/g' \
|
|
- < debian/control.modules.in >> debian/control
|
|
-
|
|
for templ in $(wildcard $(CURDIR)/debian/*_KVERS_*.in); do \
|
|
sed -e 's/##KVERS##/$(KVERS)/g ; s/#KVERS#/$(KVERS)/g ; s/_KVERS_/$(KVERS)/g ; s/##KDREV##/$(KDREV)/g ; s/#KDREV#/$(KDREV)/g ; s/_KDREV_/$(KDREV)/g ; s/_ARCH_/$(DEB_HOST_ARCH)/g' \
|
|
< $$templ > `echo $$templ | sed -e 's/_KVERS_/$(KVERS)/g ; s/_ARCH_/$(DEB_HOST_ARCH)/g ; s/\.in$$//'` ; \
|
|
@@ -52,8 +49,7 @@ override_dh_auto_configure: override_dh_
|
|
@# Build the userland and the modules
|
|
dh_auto_configure -- \
|
|
--prefix=/usr \
|
|
- --with-linux=$(KSRC) \
|
|
- --with-linux-obj=$(KOBJ)
|
|
+ --with-config=user
|
|
|
|
override_dh_auto_test:
|
|
# scripts/check.sh tries insmod and rmmod, so it cannot
|
|
@@ -63,40 +59,6 @@ override_dh_auto_install:
|
|
@# Install the utilities.
|
|
$(MAKE) install DESTDIR='$(CURDIR)/debian/tmp'
|
|
|
|
- @# Get a bare copy of the source code.
|
|
- @# This creates the $(CURDIR)/$(NAME)-$(VERSION)/ tree.
|
|
- $(MAKE) distdir
|
|
-
|
|
- # Install the DKMS source.
|
|
- @# We only want the files needed to build the modules
|
|
- mkdir -p '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)'
|
|
- touch '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)/.nogitrelease'
|
|
- rm -Rf '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)/include'
|
|
- $(foreach file,$(DKMSFILES),mv '$(CURDIR)/$(NAME)-$(VERSION)/$(file)' '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)' || exit 1;)
|
|
- @# Hellish awk line:
|
|
- @# * Deletes from configure.ac the parts not needed for building the kernel module
|
|
- @# * It deletes from inside AC_CONFIG_FILES([]) everything except:
|
|
- @# (Makefile$|include/|module/|*.release$)
|
|
- @# * Takes care of spaces and tabs
|
|
- awk '/^AC_CONFIG_FILES\(\[/,/^\]\)/ { if ($$0 !~ /^(AC_CONFIG_FILES\(\[([ \t]+)?$$|\]\)([ \t]+)?$$|([ \t]+)?(include\/|module\/|Makefile([ \t]+)?$$|spl\.release([ \t]+)?$$))/){next} } {print}' \
|
|
- '$(CURDIR)/$(NAME)-$(VERSION)/configure.ac' > '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)/configure.ac'
|
|
- @# Set "SUBDIRS = module include" for CONFIG_KERNEL and remove SUBDIRS for all other configs.
|
|
- sed '1,/CONFIG_KERNEL/s/SUBDIRS.*=.*//g;s/SUBDIRS.*=.*/SUBDIRS = module include/g;' \
|
|
- '$(CURDIR)/$(NAME)-$(VERSION)/Makefile.am' > '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)/Makefile.am'
|
|
- @# Sanity test
|
|
- grep -q 'SUBDIRS = module include' '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)/Makefile.am'
|
|
- @# Run autogen on the stripped source tree
|
|
- cd '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)'; ./autogen.sh
|
|
- rm -fr '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)/autom4te.cache'
|
|
-
|
|
- @# This shunt allows DKMS to install the Module.symvers and spl_config.h
|
|
- @# files to the ${dkms_tree} area through the POST_INSTALL directive.
|
|
- echo '#!/bin/sh' >'$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)/cp'
|
|
- echo 'cp "$$@"' >>'$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)/cp'
|
|
- chmod 755 '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(VERSION)/cp'
|
|
-
|
|
- find '$(CURDIR)/debian/tmp' -name '*~' | xargs rm
|
|
-
|
|
override_dh_dkms:
|
|
dh_dkms -V $(VERSION)
|
|
|