2023-05-19 14:24:32 +03:00
i n c l u d e / u s r / s h a r e / d p k g / d e f a u l t . m k
2017-04-05 11:49:19 +03:00
2019-05-22 18:12:12 +03:00
PACKAGE = pve-qemu-kvm
2017-04-05 11:49:19 +03:00
SRCDIR := qemu
2019-05-22 18:12:12 +03:00
BUILDDIR ?= ${ PACKAGE } -${ DEB_VERSION_UPSTREAM }
2023-05-19 14:30:23 +03:00
ORIG_SRC_TAR = $( PACKAGE) _$( DEB_VERSION_UPSTREAM) .orig.tar.gz
2017-04-05 11:49:19 +03:00
2017-11-29 12:25:06 +03:00
GITVERSION := $( shell git rev-parse HEAD)
2017-04-05 11:49:19 +03:00
2023-05-19 14:30:23 +03:00
DSC = $( PACKAGE) _$( DEB_VERSION_UPSTREAM_REVISION) .dsc
2019-05-22 18:12:12 +03:00
DEB = ${ PACKAGE } _${ DEB_VERSION_UPSTREAM_REVISION } _${ DEB_BUILD_ARCH } .deb
DEB_DBG = ${ PACKAGE } -dbg_${ DEB_VERSION_UPSTREAM_REVISION } _${ DEB_BUILD_ARCH } .deb
2017-04-05 11:49:19 +03:00
DEBS = $( DEB) $( DEB_DBG)
all : $( DEBS )
.PHONY : submodule
submodule :
2019-06-06 13:59:12 +03:00
test -f " ${ SRCDIR } /configure " || git submodule update --init --recursive
2017-04-05 11:49:19 +03:00
2023-05-22 13:00:03 +03:00
PC_BIOS_FW_PURGE_LIST_IN = \
openbios-ppc \
openbios-sparc32 \
openbios-sparc64 \
palcode-clipper \
s390-ccw.img \
s390-netboot.img \
u-boot.e500 \
.*\. dtb \
qemu_vga.ndrv \
slof.bin \
opensbi-riscv.*-generic-fw_dynamic.bin \
BLOB_PURGE_SED_CMDS = $( foreach FILE,$( PC_BIOS_FW_PURGE_LIST_IN) ,-e " / $( FILE) /d " )
BLOB_PURGE_FILTER = $( foreach FILE,$( PC_BIOS_FW_PURGE_LIST_IN) ,-e " $( FILE) " )
2019-05-22 18:12:12 +03:00
$(BUILDDIR) : keycodemapdb | submodule
2021-02-11 19:11:11 +03:00
# check if qemu/ was used for a build
# if so, please run 'make distclean' in the submodule and try again
test ! -f $( SRCDIR) /build/config.status
2023-05-22 11:55:57 +03:00
rm -rf $@ .tmp $@
cp -a $( SRCDIR) $@ .tmp
cp -a debian $@ .tmp/debian
rm -rf $@ .tmp/ui/keycodemapdb
cp -a keycodemapdb $@ .tmp/ui/
2023-05-22 13:00:03 +03:00
find $@ .tmp/pc-bios -type f | grep $( BLOB_PURGE_FILTER) | xargs rm -f
sed -i $( BLOB_PURGE_SED_CMDS) $@ .tmp/pc-bios/meson.build
2023-05-22 11:55:57 +03:00
echo " git clone git://git.proxmox.com/git/pve-qemu.git\\ngit checkout $( GITVERSION) " > $@ .tmp/debian/SOURCE
mv $@ .tmp $@
2019-05-22 18:12:12 +03:00
2017-04-05 11:49:19 +03:00
.PHONY : deb kvm
deb kvm : $( DEBS )
$(DEB_DBG) : $( DEB )
2019-05-22 18:12:12 +03:00
$(DEB) : $( BUILDDIR )
cd $( BUILDDIR) ; dpkg-buildpackage -b -us -uc -j
lintian $( DEBS)
2017-04-05 11:49:19 +03:00
2023-05-19 14:31:05 +03:00
sbuild : $( DSC )
sbuild $( DSC)
2023-05-19 14:30:23 +03:00
$(ORIG_SRC_TAR) : $( BUILDDIR )
tar czf $( ORIG_SRC_TAR) --exclude= " $( BUILDDIR) /debian " $( BUILDDIR)
.PHONY : dsc
2023-05-22 11:30:49 +03:00
dsc :
rm -rf *.dsc $( BUILDDIR)
$( MAKE) $( DSC)
lintian $( DSC)
2023-05-19 14:30:23 +03:00
$(DSC) : $( ORIG_SRC_TAR ) $( BUILDDIR )
cd $( BUILDDIR) ; dpkg-buildpackage -S -us -uc -d
2018-02-22 14:34:57 +03:00
.PHONY : update
update :
2019-05-22 18:12:12 +03:00
cd $( SRCDIR) && git submodule deinit ui/keycodemapdb || true
rm -rf $( SRCDIR) /ui/keycodemapdb
mkdir $( SRCDIR) /ui/keycodemapdb
cd $( SRCDIR) && git submodule update --init ui/keycodemapdb
2018-02-22 14:34:57 +03:00
rm -rf keycodemapdb
mkdir keycodemapdb
2019-05-22 18:12:12 +03:00
cp -R $( SRCDIR) /ui/keycodemapdb/* keycodemapdb/
2018-02-22 14:34:57 +03:00
git add keycodemapdb
2017-04-05 11:49:19 +03:00
.PHONY : upload
2023-05-19 14:24:32 +03:00
upload : UPLOAD_DIST ?= $( DEB_DISTRIBUTION )
2017-04-05 11:49:19 +03:00
upload : $( DEBS )
2023-05-19 14:24:32 +03:00
tar cf - ${ DEBS } | ssh repoman@repo.proxmox.com upload --product pve --dist $( UPLOAD_DIST)
2017-04-05 11:49:19 +03:00
2019-05-22 18:12:12 +03:00
.PHONY : distclean clean
2017-04-05 11:49:19 +03:00
distclean : clean
clean :
2023-05-19 14:22:00 +03:00
rm -rf $( PACKAGE) -[ 0-9] */ $( PACKAGE) *.tar* *.deb *.dsc *.build *.buildinfo *.changes
2017-04-05 11:49:19 +03:00
.PHONY : dinstall
dinstall : $( DEBS )
dpkg -i $( DEBS)