1 include /usr
/share
/dpkg
/default.mk
3 PACKAGE
= libproxmox-backup-qemu0
4 BUILDDIR
= $(PACKAGE
)-$(DEB_VERSION_UPSTREAM
)
7 export GITVERSION
:=$(shell git rev-parse HEAD
)
9 MAIN_DEB
=$(PACKAGE
)_
$(DEB_VERSION
)_
$(ARCH
).deb
11 $(PACKAGE
)-dev_
$(DEB_VERSION
)_
$(ARCH
).deb \
12 $(PACKAGE
)-dbgsym_
$(DEB_VERSION
)_
$(ARCH
).deb
13 DEBS
=$(MAIN_DEB
) $(OTHER_DEBS
)
17 TARGETDIR
:= target
/debug
19 ifeq ($(BUILD_MODE
), release
)
20 CARGO_BUILD_ARGS
+= --release
21 TARGETDIR
:= target
/release
29 build
: $(TARGETDIR
)/libproxmox_backup_qemu.so
30 $(TARGETDIR
)/libproxmox_backup_qemu.so
: Cargo.toml src
/
31 cargo build
$(CARGO_BUILD_ARGS
)
33 # source / packaging target
35 install: $(TARGETDIR
)/libproxmox_backup_qemu.so
36 install -D
-m
0755 $(TARGETDIR
)/libproxmox_backup_qemu.so
$(DESTDIR
)/usr
/lib
/libproxmox_backup_qemu.so
.0
37 cd
$(DESTDIR
)/usr
/lib
/; ls
*; ln
-s libproxmox_backup_qemu.so
.0 libproxmox_backup_qemu.so
40 test: current-api.h proxmox-backup-qemu.h
41 diff
-I
'PROXMOX_BACKUP_QEMU_VERSION' -up current-api.h proxmox-backup-qemu.h
44 $(BUILDDIR
): submodule
45 rm -rf
$@
$@.tmp
&& mkdir
$@.tmp
46 cp
-a submodules debian Makefile .cargo Cargo.toml build.rs src header-preamble.c current-api.h
$@.tmp
/
50 [ -e submodules
/proxmox-backup
/Cargo.toml
] || git submodule update
--init
--recursive
54 $(OTHER_DEBS
): $(MAIN_DEB
)
55 $(MAIN_DEB
): $(BUILDDIR
)
56 cd
$(BUILDDIR
); dpkg-buildpackage
-b
-us
-uc
59 proxmox-backup-qemu.h
: $(TARGETDIR
)/libproxmox_backup_qemu.so
61 simpletest
: simpletest.c proxmox-backup-qemu.h
62 gcc simpletest.c
-o simpletest
-lc
-Wl
,-rpath
=.
/$(TARGETDIR
) -L .
/$(TARGETDIR
) -l proxmox_backup_qemu
67 rm -rf
*.deb
*.dsc
*.
tar.gz
*.buildinfo
*.changes Cargo.lock proxmox-backup-qemu.h build
75 # check if working directory is clean
76 git diff
--exit-code
--stat
&& git diff
--exit-code
--stat
--staged
77 tar cf
- $(DEBS
) | ssh
-X repoman@repo.proxmox.com upload
--product pve
--dist bullseye