]> git.proxmox.com Git - librados2-perl.git/blame - Makefile
buildsys: drop unused CFLAGS line
[librados2-perl.git] / Makefile
CommitLineData
1e7b5b8a
TL
1include /usr/share/dpkg/pkg-info.mk
2include /usr/share/dpkg/architecture.mk
27bfc7c6 3
27bfc7c6 4PACKAGE=librados2-perl
27bfc7c6 5
1e7b5b8a 6BUILDSRC := $(PACKAGE)-$(DEB_VERSION_UPSTREAM)
b39fcf2d 7
27bfc7c6
DM
8DESTDIR=
9PREFIX=/usr
10BINDIR=${PREFIX}/bin
11LIBDIR=${PREFIX}/lib
12SBINDIR=${PREFIX}/sbin
13MANDIR=${PREFIX}/share/man
14DOCDIR=${PREFIX}/share/doc/${PACKAGE}
15MAN1DIR=${MANDIR}/man1/
16PERLDIR=${PREFIX}/share/perl5
c942d42b
WB
17
18PERL_ARCHLIB := `perl -MConfig -e 'print $$Config{archlib};'`
19PERL_INSTALLVENDORARCH := `perl -MConfig -e 'print $$Config{installvendorarch};'`
75a50e55 20PERL_APIVER := `perl -MConfig -e 'print $$Config{debian_abi}//$$Config{version};'`
c942d42b 21
c942d42b
WB
22CFLAGS= -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
26PERLSODIR=$(PERL_INSTALLVENDORARCH)/auto
27bfc7c6 27
adc738c7 28GITVERSION:=$(shell git rev-parse HEAD)
27bfc7c6 29
1e7b5b8a
TL
30DEB=${PACKAGE}_${DEB_VERSION_UPSTREAM_REVISION}_${DEB_BUILD_ARCH}.deb
31DSC=${PACKAGE}_${DEB_VERSION_UPSTREAM_REVISION}.dsc
27bfc7c6 32
98f1c5cb 33all:
27bfc7c6
DM
34
35RADOS.c: RADOS.xs typemap
36 xsubpp RADOS.xs -typemap typemap > RADOS.xsc
37 mv RADOS.xsc RADOS.c
38
27bfc7c6
DM
39RADOS.so: RADOS.c
40 gcc ${CFLAGS} -lrados -o RADOS.so RADOS.c
41
42
43.PHONY: dinstall
44dinstall: deb
45 dpkg -i ${DEB}
46
47.PHONY: install
48install: PVE/RADOS.pm RADOS.so
49 install -D -m 0644 PVE/RADOS.pm ${DESTDIR}${PERLDIR}/PVE/RADOS.pm
908b721b 50 install -D -m 0644 -s RADOS.so ${DESTDIR}${PERLSODIR}/PVE/RADOS/RADOS.so
27bfc7c6 51
b39fcf2d
WB
52.PHONY: $(BUILDSRC)
53$(BUILDSRC):
54 rm -rf $(BUILDSRC)
55 rsync -a * $(BUILDSRC)
56 sed -e "s|@PERLAPI@|perlapi-$(PERL_APIVER)|g" debian/control.in >$(BUILDSRC)/debian/control
57 echo "git clone git://git.proxmox.com/git/librados2-perl.git\\ngit checkout ${GITVERSION}" > $(BUILDSRC)/debian/SOURCE
98f1c5cb
TL
58
59.PHONY: deb
c942d42b 60deb: ${DEB}
b39fcf2d
WB
61${DEB}: $(BUILDSRC)
62 cd $(BUILDSRC); dpkg-buildpackage -b -us -uc
27bfc7c6
DM
63 lintian ${DEB}
64
31a80a84
TL
65.PHONY: dsc
66dsc: ${DSC}
b39fcf2d
WB
67${DSC}: $(BUILDSRC)
68 cd $(BUILDSRC); dpkg-buildpackage -S -us -uc -d -nc
31a80a84
TL
69 lintian ${DSC}
70
27bfc7c6
DM
71.PHONY: clean
72clean:
31a80a84 73 rm -rf *~ build *.deb *.changes *.buildinfo *.dsc *.tar.gz
27bfc7c6
DM
74 find . -name '*~' -exec rm {} ';'
75
76.PHONY: distclean
77distclean: clean
78
79
80.PHONY: upload
81upload: ${DEB}
03f6ca58 82 tar cf - ${DEB} | ssh repoman@repo.proxmox.com -- upload --product pve --dist buster --arch ${DEB_BUILD_ARCH}