]> git.proxmox.com Git - zfsonlinux.git/blob - Makefile
rebase patches on top of zfs-0.7.13
[zfsonlinux.git] / Makefile
1 RELEASE=5.1
2
3 # source form https://github.com/zfsonlinux/
4
5 SPLDIR=spl-linux_${ZFSVER}
6 SPLSRC=spl/upstream
7 SPLPKG=spl/debian
8 ZFSDIR=zfs-linux_${ZFSVER}
9 ZFSSRC=zfs/upstream
10 ZFSPKG=zfs/debian
11
12 ZFSVER != dpkg-parsechangelog -l ${ZFSPKG}/changelog -Sversion | cut -d- -f1
13
14 ZFSPKGVER != dpkg-parsechangelog -l ${ZFSPKG}/changelog -Sversion
15 SPLPKGVER != dpkg-parsechangelog -l ${SPLPKG}/changelog -Sversion
16
17 SPL_DEB = \
18 spl_${SPLPKGVER}_amd64.deb
19 SPL_DSC = spl-linux_${SPLPKGVER}.dsc
20
21 ZFS_DEB1= libnvpair1linux_${ZFSPKGVER}_amd64.deb
22 ZFS_DEB2= \
23 libuutil1linux_${ZFSPKGVER}_amd64.deb \
24 libzfs2linux_${ZFSPKGVER}_amd64.deb \
25 libzfslinux-dev_${ZFSPKGVER}_amd64.deb \
26 libzpool2linux_${ZFSPKGVER}_amd64.deb \
27 zfs-dbg_${ZFSPKGVER}_amd64.deb \
28 zfs-zed_${ZFSPKGVER}_amd64.deb \
29 zfs-initramfs_${ZFSPKGVER}_all.deb \
30 zfs-test_${ZFSPKGVER}_amd64.deb \
31 zfsutils-linux_${ZFSPKGVER}_amd64.deb
32 ZFS_DEBS= $(ZFS_DEB1) $(ZFS_DEB2)
33 ZFS_DSC = zfs-linux_${ZFSPKGVER}.dsc
34
35 DEBS=${SPL_DEB} ${ZFS_DEBS}
36 DSCS=${SPL_DSC} ${ZFS_DSC}
37
38 all: deb
39 .PHONY: deb
40 deb: ${DEBS}
41 .PHONY: dsc
42 dsc: ${DSCS}
43
44 # called from pve-kernel's Makefile to get patched sources
45 .PHONY: kernel
46 kernel: dsc
47 dpkg-source -x ${SPL_DSC} ../pkg-spl
48 dpkg-source -x ${ZFS_DSC} ../pkg-zfs
49
50 .PHONY: dinstall
51 dinstall: ${DEBS}
52 dpkg -i ${DEBS}
53
54 .PHONY: submodule
55 submodule:
56 test -f "${ZFSSRC}/README.markdown" || git submodule update --init
57 test -f "${SPLSRC}/README.markdown" || git submodule update --init
58
59 .PHONY: spl
60 spl: ${SPL_DEB}
61 ${SPL_DEB}: ${SPLDIR}
62 cd ${SPLDIR}; dpkg-buildpackage -b -uc -us
63 lintian ${SPL_DEB}
64
65 ${SPL_DSC}: ${SPLDIR}
66 tar czf spl-linux_${ZFSVER}.orig.tar.gz ${SPLDIR}
67 cd ${SPLDIR}; dpkg-buildpackage -S -uc -us -d
68 lintian $@
69
70 ${SPLDIR}: ${SPLSRC} ${SPLPKG}
71 rm -rf ${SPLDIR}
72 mkdir ${SPLDIR}
73 cp -a ${SPLSRC}/* ${SPLDIR}/
74 cp -a ${SPLPKG} ${SPLDIR}/debian
75
76 .PHONY: zfs
77 zfs: $(ZFS_DEBS)
78 $(ZFS_DEB2): $(ZFS_DEB1)
79 $(ZFS_DEB1): ${ZFSDIR}
80 cd ${ZFSDIR}; dpkg-buildpackage -b -uc -us
81 lintian ${ZFS_DEBS}
82
83 ${ZFS_DSC}: ${ZFSDIR}
84 tar czf zfs-linux_${ZFSVER}.orig.tar.gz ${ZFSDIR}
85 cd ${ZFSDIR}; dpkg-buildpackage -S -uc -us -d
86 lintian $@
87
88 ${ZFSDIR}: $(ZFSSRC) ${ZFSPKG}
89 rm -rf ${ZFSDIR}
90 mkdir ${ZFSDIR}
91 cp -a ${ZFSSRC}/* ${ZFSDIR}/
92 cp -a ${ZFSPKG} ${ZFSDIR}/debian
93
94
95 .PHONY: clean
96 clean:
97 rm -rf *~ *.deb *.changes *.buildinfo *.dsc *.orig.tar.* *.debian.tar.* ${ZFSDIR} ${SPLDIR}
98
99 .PHONY: distclean
100 distclean: clean
101
102 .PHONY: upload
103 upload: ${DEBS}
104 tar -cf - ${DEBS} | ssh repoman@repo.proxmox.com -- upload --product pve,pmg --dist stretch --arch amd64