3 ARCH
:=$(shell dpkg-architecture
-qDEB_BUILD_ARCH
)
4 GITVERSION
:=$(shell git rev-parse HEAD
)
8 # Binaries usable by users
10 proxmox-backup-client \
13 # Binaries usable by admins
14 USR_SBIN
:= proxmox-backup-manager
16 # Binaries for services:
21 ifeq ($(BUILD_MODE
), release
)
22 CARGO_BUILD_ARGS
+= --release
23 COMPILEDIR
:= target
/release
25 COMPILEDIR
:= target
/debug
29 $(addprefix $(COMPILEDIR
)/,$(USR_BIN
) $(USR_SBIN
) $(SERVICE_BIN
))
31 export PROXMOX_PKG_VERSION
=${PKGVER}
32 export PROXMOX_PKG_RELEASE
=${PKGREL}
33 export PROXMOX_PKG_REPOID
=${GITVERSION}
35 export PROXMOX_JSDIR
:= $(JSDIR
)
37 DEB
=${PACKAGE}_
${PKGVER}-${PKGREL}_
${ARCH}.deb
41 all: cargo-build
$(SUBDIRS
)
48 cargo
test $(CARGO_BUILD_ARGS
)
50 # always re-create this dir
54 rsync
-a debian Makefile defines.mk Cargo.toml src
$(SUBDIRS
) build
/
59 cd build
; dpkg-buildpackage
-b
-us
-uc
66 rm -rf
*.deb
*.buildinfo
*.changes build
67 find .
-name
'*~' -exec
rm {} ';'
75 cargo build
$(CARGO_BUILD_ARGS
)
77 $(COMPILED_BINS
): cargo-build
79 install: $(COMPILED_BINS
)
80 install -dm755
$(DESTDIR
)$(BINDIR
)
81 $(foreach i
,$(USR_BIN
), \
82 install -m755
$(COMPILEDIR
)/$(i
) $(DESTDIR
)$(BINDIR
)/ ;)
83 install -dm755
$(DESTDIR
)$(SBINDIR
)
84 $(foreach i
,$(USR_SBIN
), \
85 install -m755
$(COMPILEDIR
)/$(i
) $(DESTDIR
)$(SBINDIR
)/ ;)
86 install -dm755
$(DESTDIR
)$(LIBDIR
)/proxmox-backup
87 $(foreach i
,$(SERVICE_BIN
), \
88 install -m755
$(COMPILEDIR
)/$(i
) $(DESTDIR
)$(LIBDIR
)/proxmox-backup
/ ;)
89 $(MAKE
) -C www
install