aboutsummaryrefslogtreecommitdiffstats
path: root/config/deb.am
blob: 58ab96e186ada6892ea2b5cb17fa8f896035b4f1 (plain)
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
deb-local:
	@(if test "${HAVE_DPKGBUILD}" = "no"; then \
		echo -e "\n" \
	"*** Required util ${DPKGBUILD} missing.  Please install the\n" \
	"*** package for your distribution which provides ${DPKGBUILD},\n" \
	"*** re-run configure, and try again.\n"; \
		exit 1; \
	fi; \
	if test "${HAVE_ALIEN}" = "no"; then \
		echo -e "\n" \
	"*** Required util ${ALIEN} missing.  Please install the\n" \
	"*** package for your distribution which provides ${ALIEN},\n" \
	"*** re-run configure, and try again.\n"; \
		exit 1; \
	fi)

deb-kmod: deb-local rpm-kmod
	name=${PACKAGE}; \
	version=${VERSION}-${RELEASE}; \
	arch=`$(RPM) -qp $${name}-kmod-$${version}.src.rpm --qf %{arch} | tail -1`; \
	debarch=`$(DPKG) --print-architecture`; \
	pkg1=kmod-$${name}*$${version}.$${arch}.rpm; \
	fakeroot $(ALIEN) --bump=0 --scripts --to-deb --target=$$debarch $$pkg1; \
	$(RM) $$pkg1


deb-dkms: deb-local rpm-dkms
	name=${PACKAGE}; \
	version=${VERSION}-${RELEASE}; \
	arch=`$(RPM) -qp $${name}-dkms-$${version}.src.rpm --qf %{arch} | tail -1`; \
	debarch=`$(DPKG) --print-architecture`; \
	pkg1=$${name}-dkms-$${version}.$${arch}.rpm; \
	fakeroot $(ALIEN) --bump=0 --scripts --to-deb --target=$$debarch $$pkg1; \
	$(RM) $$pkg1

deb-utils: deb-local rpm-utils
	name=${PACKAGE}; \
	version=${VERSION}-${RELEASE}; \
	arch=`$(RPM) -qp $${name}-$${version}.src.rpm --qf %{arch} | tail -1`; \
	debarch=`$(DPKG) --print-architecture`; \
	pkg1=$${name}-$${version}.$${arch}.rpm; \
	pkg2=libnvpair1-$${version}.$${arch}.rpm; \
	pkg3=libuutil1-$${version}.$${arch}.rpm; \
	pkg4=libzfs2-$${version}.$${arch}.rpm; \
	pkg5=libzpool2-$${version}.$${arch}.rpm; \
	pkg6=libzfs2-devel-$${version}.$${arch}.rpm; \
	pkg7=$${name}-test-$${version}.$${arch}.rpm; \
	pkg8=$${name}-dracut-$${version}.$${arch}.rpm; \
	pkg9=$${name}-initramfs-$${version}.$${arch}.rpm; \
## Arguments need to be passed to dh_shlibdeps. Alien provides no mechanism
## to do this, so we install a shim onto the path which calls the real
## dh_shlibdeps with the required arguments.
	path_prepend=`mktemp -d /tmp/intercept.XXX`; \
	echo "#$(SHELL)" > $${path_prepend}/dh_shlibdeps; \
	echo "`which dh_shlibdeps` -- \
	 -xlibuutil1linux -xlibnvpair1linux -xlibzfs2linux -xlibzpool2linux" \
	 >> $${path_prepend}/dh_shlibdeps; \
## These -x arguments are passed to dpkg-shlibdeps, which exclude the
## Debianized packages from the auto-generated dependencies of the new debs,
## which should NOT be mixed with the alien-generated debs created here
	chmod +x $${path_prepend}/dh_shlibdeps; \
	env PATH=$${path_prepend}:$${PATH} \
	fakeroot $(ALIEN) --bump=0 --scripts --to-deb --target=$$debarch \
	    $$pkg1 $$pkg2 $$pkg3 $$pkg4 $$pkg5 $$pkg6 $$pkg7 \
	    $$pkg8 $$pkg9; \
	$(RM) $${path_prepend}/dh_shlibdeps; \
	rmdir $${path_prepend}; \
	$(RM) $$pkg1 $$pkg2 $$pkg3 $$pkg4 $$pkg5 $$pkg6 $$pkg7 \
	    $$pkg8 $$pkg9;

deb: deb-kmod deb-dkms deb-utils