]> git.proxmox.com Git - zfsonlinux.git/blob - Makefile
d/control: add new zfs-dracut package
[zfsonlinux.git] / Makefile
1 # source form https://github.com/zfsonlinux/
2
3 ZFSPKG=debian
4 ZFSVER != dpkg-parsechangelog -l ${ZFSPKG}/changelog -Sversion | cut -d- -f1
5 ZFSPKGVER != dpkg-parsechangelog -l ${ZFSPKG}/changelog -Sversion
6 ZFSDIR=zfs-linux_${ZFSVER}
7 ZFSSRC=upstream
8
9 ZFS_DEB1= libnvpair3linux_${ZFSPKGVER}_amd64.deb
10
11 ZFS_DEB_BINARY = \
12 libpam-zfs_${ZFSPKGVER}_amd64.deb \
13 libuutil3linux_${ZFSPKGVER}_amd64.deb \
14 libzfs4linux_${ZFSPKGVER}_amd64.deb \
15 libzfsbootenv1linux_${ZFSPKGVER}_amd64.deb \
16 libzpool5linux_${ZFSPKGVER}_amd64.deb \
17 zfs-test_${ZFSPKGVER}_amd64.deb \
18 zfsutils-linux_${ZFSPKGVER}_amd64.deb \
19 zfs-zed_${ZFSPKGVER}_amd64.deb
20
21 ZFS_DBG_DEBS = $(patsubst %_${ZFSPKGVER}_amd64.deb, %-dbgsym_${ZFSPKGVER}_amd64.deb, ${ZFS_DEB1} ${ZFS_DEB_BINARY})
22
23 ZFS_DEB2= ${ZFS_DEB_BINARY} \
24 libzfslinux-dev_${ZFSPKGVER}_amd64.deb \
25 python3-pyzfs_${ZFSPKGVER}_amd64.deb \
26 pyzfs-doc_${ZFSPKGVER}_all.deb \
27 spl_${ZFSPKGVER}_all.deb \
28 zfs-initramfs_${ZFSPKGVER}_all.deb
29 DEBS= ${ZFS_DEB1} ${ZFS_DEB2} ${ZFS_DBG_DEBS}
30
31 ZFS_DSC = zfs-linux_${ZFSPKGVER}.dsc
32
33 all: deb
34 .PHONY: deb
35 deb: ${DEBS}
36 .PHONY: dsc
37 dsc: ${ZFS_DSC}
38
39 # called from pve-kernel's Makefile to get patched sources
40 .PHONY: kernel
41 kernel: dsc
42 dpkg-source -x ${ZFS_DSC} ../pkg-zfs
43 ${MAKE} -C ../pkg-zfs -f debian/rules adapt_meta_file
44
45 .PHONY: dinstall
46 dinstall: ${DEBS}
47 dpkg -i ${DEBS}
48
49 .PHONY: submodule
50 submodule:
51 test -f "${ZFSSRC}/README.md" || git submodule update --init
52 ${ZFSSRC}/README.md: submodule
53
54 .PHONY: zfs
55 zfs: ${DEBS}
56 ${ZFS_DEB2}: ${ZFS_DEB1}
57 ${ZFS_DEB1}: ${ZFSDIR}
58 cd ${ZFSDIR}; dpkg-buildpackage -b -uc -us
59 lintian ${DEBS}
60
61 ${ZFS_DSC}: ${ZFSDIR}
62 tar czf zfs-linux_${ZFSVER}.orig.tar.gz ${ZFSDIR}
63 cd ${ZFSDIR}; dpkg-buildpackage -S -uc -us -d
64 lintian $@
65
66 ${ZFSDIR}: ${ZFSSRC}/README.md ${ZFSSRC} ${ZFSPKG}
67 rm -rf ${ZFSDIR} ${ZFSDIR}.tmp
68 cp -a ${ZFSSRC} ${ZFSDIR}.tmp
69 cp -a ${ZFSPKG} ${ZFSDIR}.tmp/debian
70 mv ${ZFSDIR}.tmp ${ZFSDIR}
71
72
73 .PHONY: clean
74 clean:
75 rm -rf *~ *.deb *.changes *.buildinfo *.dsc *.orig.tar.* *.debian.tar.* ${ZFSDIR}
76
77 .PHONY: distclean
78 distclean: clean
79
80 .PHONY: upload
81 upload: ${DEBS}
82 tar -cf - ${DEBS} | ssh repoman@repo.proxmox.com -- upload --product pve,pmg,pbs --dist bullseye --arch amd64