-RELEASE=4.0
+RELEASE=5.1
# source form https://github.com/zfsonlinux/
-ZFSVER=0.6.4
-ZFSPKGREL=pve3~jessie
-SPLPKGREL=pve3~jessie
+ZFSVER=0.7.8
+ZFSPKGREL=pve1~bpo9
+SPLPKGREL=pve1~bpo9
ZFSPKGVER=${ZFSVER}-${ZFSPKGREL}
SPLPKGVER=${ZFSVER}-${SPLPKGREL}
-SPLDIR=pkg-spl
-SPLSRC=pkg-spl.tar.gz
-ZFSDIR=pkg-zfs
-ZFSSRC=pkg-zfs.tar.gz
+SPLDIR=spl-build
+SPLSRC=spl-debian
+ZFSDIR=zfs-build
+ZFSSRC=zfs-debian
-SPL_DEBS= \
+SPL_DEB = \
spl_${SPLPKGVER}_amd64.deb
-ZFS_DEBS= \
-libnvpair1_${ZFSPKGVER}_amd64.deb \
-libuutil1_${ZFSPKGVER}_amd64.deb \
-libzfs2_${ZFSPKGVER}_amd64.deb \
-libzfs-dev_${ZFSPKGVER}_amd64.deb \
-libzpool2_${ZFSPKGVER}_amd64.deb \
+ZFS_DEB1= libnvpair1linux_${ZFSPKGVER}_amd64.deb
+ZFS_DEB2= \
+libuutil1linux_${ZFSPKGVER}_amd64.deb \
+libzfs2linux_${ZFSPKGVER}_amd64.deb \
+libzfslinux-dev_${ZFSPKGVER}_amd64.deb \
+libzpool2linux_${ZFSPKGVER}_amd64.deb \
zfs-dbg_${ZFSPKGVER}_amd64.deb \
-zfs-initramfs_${ZFSPKGVER}_amd64.deb \
-zfsutils_${ZFSPKGVER}_amd64.deb
+zfs-zed_${ZFSPKGVER}_amd64.deb \
+zfs-initramfs_${ZFSPKGVER}_all.deb \
+zfs-test_${ZFSPKGVER}_amd64.deb \
+zfsutils-linux_${ZFSPKGVER}_amd64.deb
+ZFS_DEBS= $(ZFS_DEB1) $(ZFS_DEB2)
-DEBS=${SPL_DEBS} ${ZFS_DEBS}
+DEBS=${SPL_DEB} ${ZFS_DEBS}
-all: ${DEBS}
+all: deb
+deb: ${DEBS}
.PHONY: dinstall
dinstall: ${DEBS}
dpkg -i ${DEBS}
+.PHONY: submodule
+submodule:
+ test -f "${ZFSSRC}/debian/changelog" || git submodule update --init
+ test -f "${SPLSRC}/debian/changelog" || git submodule update --init
+
.PHONY: spl
-spl ${SPL_DEBS}: ${SPLSRC}
+spl: ${SPL_DEB}
+${SPL_DEB}: ${SPLSRC}
rm -rf ${SPLDIR}
- tar xf ${SPLSRC}
+ mkdir ${SPLDIR}
+ cp -a ${SPLSRC}/* ${SPLDIR}/
mv ${SPLDIR}/debian/changelog ${SPLDIR}/debian/changelog.org
cat spl-changelog.Debian ${SPLDIR}/debian/changelog.org > ${SPLDIR}/debian/changelog
cd ${SPLDIR}; ln -s ../spl-patches patches
cd ${SPLDIR}; quilt push -a
cd ${SPLDIR}; rm -rf .pc ./patches
- cd ${SPLDIR}; ./debian/rules override_dh_prep-base-deb-files
- cd ${SPLDIR}; dpkg-buildpackage -b -uc -us
+ cd ${SPLDIR}; dpkg-buildpackage -b -uc -us
.PHONY: zfs
-zfs ${ZFS_DEBS}: ${ZFSSRC}
+zfs: $(ZFS_DEBS)
+$(ZFS_DEB2): $(ZFS_DEB1)
+$(ZFS_DEB1): $(ZFSSRC)
rm -rf ${ZFSDIR}
- tar xf ${ZFSSRC}
+ mkdir ${ZFSDIR}
+ cp -a ${ZFSSRC}/* ${ZFSDIR}/
mv ${ZFSDIR}/debian/changelog ${ZFSDIR}/debian/changelog.org
cat zfs-changelog.Debian ${ZFSDIR}/debian/changelog.org > ${ZFSDIR}/debian/changelog
cd ${ZFSDIR}; ln -s ../zfs-patches patches
cd ${ZFSDIR}; quilt push -a
cd ${ZFSDIR}; rm -rf .pc ./patches
- cd ${ZFSDIR}; ./debian/rules override_dh_prep-base-deb-files
- cd ${ZFSDIR}; dpkg-buildpackage -b -uc -us
-
-.PHONY: download
-download:
- rm -rf pkg-spl pkg-zfs ${SPLSRC} ${ZFSSRC}
- git clone https://github.com/zfsonlinux/pkg-spl.git
- git clone https://github.com/zfsonlinux/pkg-zfs.git
- # list tags with: git tag --list 'master/*'
- cd pkg-spl; git checkout snapshot/debian/jessie/0.6.4-8-8ac6ff
- cd pkg-zfs; git checkout snapshot/debian/jessie/0.6.4-24-6bec43
- tar czf ${SPLSRC} pkg-spl
- tar czf ${ZFSSRC} pkg-zfs
+ cd ${ZFSDIR}; dpkg-buildpackage -b -uc -us
.PHONY: clean
clean:
- rm -rf *~ *.deb *.changes ${ZFSDIR} ${SPLDIR}
+ rm -rf *~ *.deb *.changes *.buildinfo ${ZFSDIR} ${SPLDIR}
.PHONY: distclean
distclean: clean
.PHONY: upload
upload: ${DEBS}
- umount /pve/${RELEASE}; mount /pve/${RELEASE} -o rw
- mkdir -p /pve/${RELEASE}/extra
- rm -f /pve/${RELEASE}/extra/spl_*.deb
- rm -f /pve/${RELEASE}/extra/spl-dkms_*.deb
- rm -f /pve/${RELEASE}/extra/libnvpair1_*.deb
- rm -f /pve/${RELEASE}/extra/libnvpair1-dbg_*.deb
- rm -f /pve/${RELEASE}/extra/libuutil1_*.deb
- rm -f /pve/${RELEASE}/extra/libuutil1-dbg_*.deb
- rm -f /pve/${RELEASE}/extra/libzfs2_*.deb
- rm -f /pve/${RELEASE}/extra/libzfs2-dbg_*.deb
- rm -f /pve/${RELEASE}/extra/libzfs-dev_*.deb
- rm -f /pve/${RELEASE}/extra/libzpool2_*.deb
- rm -f /pve/${RELEASE}/extra/libzpool2-dbg_*.deb
- rm -f /pve/${RELEASE}/extra/zfs_*.deb
- rm -f /pve/${RELEASE}/extra/zfs-dkms_*.deb
- rm -f /pve/${RELEASE}/extra/zfs-doc_*.deb
- rm -f /pve/${RELEASE}/extra/zfs-dbg_*.deb
- rm -f /pve/${RELEASE}/extra/zfs-initramfs_*.deb
- rm -f /pve/${RELEASE}/extra/zfsutils_*.deb
- rm -f /pve/${RELEASE}/extra/zfsutils-dbg_*.deb
- rm -f /pve/${RELEASE}/extra/Packages*
- cp ${DEBS} /pve/${RELEASE}/extra
- cd /pve/${RELEASE}/extra; dpkg-scanpackages . /dev/null > Packages; gzip -9c Packages > Packages.gz
- umount /pve/${RELEASE}; mount /pve/${RELEASE} -o ro
-
+ tar -cf - ${DEBS} | ssh repoman@repo.proxmox.com -- upload --product pve,pmg --dist stretch --arch amd64