]> git.proxmox.com Git - librados2-perl.git/blob - Makefile
avoid unnecessary warning
[librados2-perl.git] / Makefile
1 RELEASE=3.1
2
3 VERSION=0.72.1
4 PACKAGE=librados2-perl
5 PKGREL=1
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
16 PERLSODIR=${LIBDIR}/perl5/auto
17
18 ARCH:=$(shell dpkg-architecture -qDEB_BUILD_ARCH)
19 GITVERSION:=$(shell cat .git/refs/heads/master)
20
21 DEB=${PACKAGE}_${VERSION}-${PKGREL}_${ARCH}.deb
22
23 all: ${DEB}
24
25 RADOS.c: RADOS.xs typemap
26 xsubpp RADOS.xs -typemap typemap > RADOS.xsc
27 mv RADOS.xsc RADOS.c
28
29 CFLAGS= -shared -fPIC -O2 -Wall -Wl,-z,relro -I/usr/lib/perl/5.14.2/CORE -DXS_VERSION=\"1.0\"
30 RADOS.so: RADOS.c
31 gcc ${CFLAGS} -lrados -o RADOS.so RADOS.c
32
33
34 .PHONY: dinstall
35 dinstall: deb
36 dpkg -i ${DEB}
37
38 .PHONY: install
39 install: PVE/RADOS.pm RADOS.so
40 install -D -m 0644 PVE/RADOS.pm ${DESTDIR}${PERLDIR}/PVE/RADOS.pm
41 install -D -m 0644 -s RADOS.so ${DESTDIR}${PERLSODIR}/PVE/RADOS/RADOS.so
42
43 .PHONY: deb ${DEB}
44 deb ${DEB}:
45 rm -rf debian
46 mkdir debian
47 make DESTDIR=${CURDIR}/debian install
48 install -d -m 0755 debian/DEBIAN
49 sed -e s/@@VERSION@@/${VERSION}/ -e s/@@PKGRELEASE@@/${PKGREL}/ -e s/@@ARCH@@/${ARCH}/ <control.in >debian/DEBIAN/control
50 install -D -m 0644 copyright debian/${DOCDIR}/copyright
51 install -m 0644 changelog.Debian debian/${DOCDIR}/
52 gzip -9 debian/${DOCDIR}/changelog.Debian
53 echo "git clone git://git.proxmox.com/git/librados2-perl.git\\ngit checkout ${GITVERSION}" > debian/${DOCDIR}/SOURCE
54 dpkg-deb --build debian
55 mv debian.deb ${DEB}
56 rm -rf debian
57 lintian ${DEB}
58
59 .PHONY: clean
60 clean:
61 rm -rf debian *.deb ${PACKAGE}-*.tar.gz dist *.1.pod *.1.gz RADOS.so RADOS.c
62 find . -name '*~' -exec rm {} ';'
63
64 .PHONY: distclean
65 distclean: clean
66
67
68 .PHONY: upload
69 upload: ${DEB}
70 umount /pve/${RELEASE}; mount /pve/${RELEASE} -o rw
71 mkdir -p /pve/${RELEASE}/extra
72 rm -f /pve/${RELEASE}/extra/${PACKAGE}_*.deb
73 rm -f /pve/${RELEASE}/extra/Packages*
74 cp ${DEB} /pve/${RELEASE}/extra
75 cd /pve/${RELEASE}/extra; dpkg-scanpackages . /dev/null > Packages; gzip -9c Packages > Packages.gz
76 umount /pve/${RELEASE}; mount /pve/${RELEASE} -o ro
77