]>
Commit | Line | Data |
---|---|---|
510737f9 | 1 | RELEASE=5.0 |
27bfc7c6 | 2 | |
54755282 | 3 | VERSION=1.0 |
27bfc7c6 | 4 | PACKAGE=librados2-perl |
19773ec9 | 5 | PKGREL=5 |
27bfc7c6 DM |
6 | |
7 | DESTDIR= | |
8 | PREFIX=/usr | |
9 | BINDIR=${PREFIX}/bin | |
10 | LIBDIR=${PREFIX}/lib | |
11 | SBINDIR=${PREFIX}/sbin | |
12 | MANDIR=${PREFIX}/share/man | |
13 | DOCDIR=${PREFIX}/share/doc/${PACKAGE} | |
14 | MAN1DIR=${MANDIR}/man1/ | |
15 | PERLDIR=${PREFIX}/share/perl5 | |
c942d42b WB |
16 | |
17 | PERL_ARCHLIB := `perl -MConfig -e 'print $$Config{archlib};'` | |
18 | PERL_INSTALLVENDORARCH := `perl -MConfig -e 'print $$Config{installvendorarch};'` | |
75a50e55 | 19 | PERL_APIVER := `perl -MConfig -e 'print $$Config{debian_abi}//$$Config{version};'` |
c942d42b WB |
20 | |
21 | CFLAGS= -shared -fPIC -O2 -Wall -Wl,-z,relro -I$(PERL_ARCHLIB)/CORE -DXS_VERSION=\"1.0\" | |
22 | CFLAGS= -shared -fPIC -O2 -Werror -Wtype-limits -Wall -Wl,-z,relro \ | |
23 | -D_FORTIFY_SOURCE=2 -I$(PERL_ARCHLIB)/CORE -DXS_VERSION=\"1.0\" | |
24 | ||
25 | ||
26 | PERLSODIR=$(PERL_INSTALLVENDORARCH)/auto | |
27bfc7c6 DM |
27 | |
28 | ARCH:=$(shell dpkg-architecture -qDEB_BUILD_ARCH) | |
adc738c7 | 29 | GITVERSION:=$(shell git rev-parse HEAD) |
27bfc7c6 DM |
30 | |
31 | DEB=${PACKAGE}_${VERSION}-${PKGREL}_${ARCH}.deb | |
31a80a84 | 32 | DSC=${PACKAGE}_${VERSION}-${PKGREL}.dsc |
27bfc7c6 | 33 | |
98f1c5cb | 34 | all: |
27bfc7c6 DM |
35 | |
36 | RADOS.c: RADOS.xs typemap | |
37 | xsubpp RADOS.xs -typemap typemap > RADOS.xsc | |
38 | mv RADOS.xsc RADOS.c | |
39 | ||
27bfc7c6 DM |
40 | RADOS.so: RADOS.c |
41 | gcc ${CFLAGS} -lrados -o RADOS.so RADOS.c | |
42 | ||
43 | ||
44 | .PHONY: dinstall | |
45 | dinstall: deb | |
46 | dpkg -i ${DEB} | |
47 | ||
48 | .PHONY: install | |
49 | install: PVE/RADOS.pm RADOS.so | |
50 | install -D -m 0644 PVE/RADOS.pm ${DESTDIR}${PERLDIR}/PVE/RADOS.pm | |
908b721b | 51 | install -D -m 0644 -s RADOS.so ${DESTDIR}${PERLSODIR}/PVE/RADOS/RADOS.so |
27bfc7c6 | 52 | |
98f1c5cb TL |
53 | |
54 | .PHONY: deb | |
c942d42b WB |
55 | deb: ${DEB} |
56 | ${DEB}: | |
98f1c5cb TL |
57 | rm -rf build |
58 | rsync -a * build | |
59 | sed -e "s|@PERLAPI@|perlapi-$(PERL_APIVER)|g" debian/control.in >build/debian/control | |
60 | echo "git clone git://git.proxmox.com/git/librados2-perl.git\\ngit checkout ${GITVERSION}" > build/debian/SOURCE | |
61 | cd build; dpkg-buildpackage -b -us -uc | |
27bfc7c6 DM |
62 | lintian ${DEB} |
63 | ||
31a80a84 TL |
64 | .PHONY: dsc |
65 | dsc: ${DSC} | |
66 | ${DSC}: | |
67 | rm -rf build | |
68 | rsync -a * build | |
69 | sed -e "s|@PERLAPI@|perlapi-$(PERL_APIVER)|g" debian/control.in >build/debian/control | |
70 | echo "git clone git://git.proxmox.com/git/librados2-perl.git\\ngit checkout ${GITVERSION}" > build/debian/SOURCE | |
71 | cd build; dpkg-buildpackage -S -us -uc -d -nc | |
72 | lintian ${DSC} | |
73 | ||
27bfc7c6 DM |
74 | .PHONY: clean |
75 | clean: | |
31a80a84 | 76 | rm -rf *~ build *.deb *.changes *.buildinfo *.dsc *.tar.gz |
27bfc7c6 DM |
77 | find . -name '*~' -exec rm {} ';' |
78 | ||
79 | .PHONY: distclean | |
80 | distclean: clean | |
81 | ||
82 | ||
83 | .PHONY: upload | |
84 | upload: ${DEB} | |
b90c3853 | 85 | tar cf - ${DEB} | ssh repoman@repo.proxmox.com -- upload --product pve --dist stretch --arch ${ARCH} |