mirror of
https://github.com/ceph/ceph
synced 2024-12-13 15:08:33 +00:00
5c1782a57c
Since all currently supported platforms have tcmalloc available and it is now the default, remove broken check code that turns it off if the package is not listed in build-depends. Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
159 lines
4.5 KiB
Makefile
Executable File
159 lines
4.5 KiB
Makefile
Executable File
#!/usr/bin/make -f
|
|
# -*- makefile -*-
|
|
export DH_VERBOSE=1
|
|
export DESTDIR=$(CURDIR)/debian/tmp
|
|
|
|
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
|
|
NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
|
|
MAKEFLAGS += -j$(NUMJOBS)
|
|
endif
|
|
|
|
export DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
|
|
export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
|
|
|
|
# Recommended snippet for Autoconf 2.52 or later
|
|
ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
|
|
confflags += --build $(DEB_HOST_GNU_TYPE)
|
|
else
|
|
confflags += --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE)
|
|
endif
|
|
|
|
export DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
|
|
|
|
extraopts += --with-ocf --with-rest-bench --with-nss
|
|
extraopts += --with-debug
|
|
extraopts += --enable-cephfs-java
|
|
|
|
ifeq ($(DEB_HOST_ARCH), armel)
|
|
# armel supports ARMv4t or above instructions sets.
|
|
# libatomic-ops is only usable with Ceph for ARMv6 or above.
|
|
extraopts += --without-libatomic-ops
|
|
endif
|
|
|
|
ifneq ($(DEB_HOST_ARCH), i386)
|
|
ifneq ($(DEB_HOST_ARCH), amd64)
|
|
# libgoogle-perftools-dev is only available on i386 and amd64
|
|
extraopts += --without-tcmalloc
|
|
endif
|
|
endif
|
|
|
|
configure: configure-stamp
|
|
configure-stamp:
|
|
dh_testdir
|
|
./autogen.sh
|
|
./configure --prefix=/usr --sbindir=/sbin --localstatedir=/var \
|
|
--sysconfdir=/etc $(extraopts) $(confflags) \
|
|
$(CEPH_EXTRA_CONFIGURE_ARGS)
|
|
touch $@
|
|
|
|
build-arch: build
|
|
build-indep: build
|
|
|
|
build: build-stamp
|
|
build-stamp: configure-stamp
|
|
dh_testdir
|
|
|
|
$(MAKE)
|
|
|
|
cp src/init-ceph debian/ceph.init
|
|
cp src/init-radosgw debian/radosgw.init
|
|
cp src/logrotate.conf debian/ceph.logrotate
|
|
cp src/rgw/logrotate.conf debian/radosgw.logrotate
|
|
|
|
touch $@
|
|
|
|
clean:
|
|
dh_testdir
|
|
dh_testroot
|
|
rm -f build-stamp configure-stamp
|
|
|
|
[ ! -f Makefile ] || $(MAKE) distclean
|
|
rm -f aclocal.m4 compile config.sub config.guess depcomp install-sh \
|
|
ltmain.sh missing
|
|
rm -f configure Makefile.in man/Makefile.in src/Makefile.in
|
|
rm -f src/acconfig.h.in
|
|
rm -f debian/ceph.init debian/radosgw.init debian/ceph.logrotate debian/radosgw.logrotate
|
|
|
|
dh_clean
|
|
|
|
install: build
|
|
dh_testdir
|
|
dh_testroot
|
|
dh_clean -k
|
|
dh_installdirs
|
|
|
|
$(MAKE) DESTDIR=$(DESTDIR) install
|
|
sed -i "/dependency_libs/ s/'.*'/''/" `find . -name '*.la'`
|
|
install -D -m 644 udev/50-rbd.rules $(DESTDIR)/lib/udev/rules.d/50-rbd.rules
|
|
install -D -m 644 udev/95-ceph-osd.rules $(DESTDIR)/lib/udev/rules.d/95-ceph-osd.rules
|
|
|
|
# Add here commands to install the package into debian/testpack.
|
|
# Build architecture-independent files here.
|
|
binary-indep: build install
|
|
dh_testdir
|
|
dh_testroot
|
|
jh_installlibs -v -i
|
|
dh_installchangelogs -i
|
|
dh_installdocs -i --all ChangeLog
|
|
dh_installexamples -i
|
|
dh_install -i --sourcedir=$(DESTDIR) --list-missing
|
|
dh_installman -i
|
|
dh_lintian -i
|
|
dh_link -i
|
|
dh_compress -i
|
|
dh_fixperms -i
|
|
dh_python2 -i
|
|
dh_installdeb -i
|
|
dh_gencontrol -i
|
|
dh_md5sums -i
|
|
dh_builddeb -i
|
|
|
|
# We have nothing to do by default.
|
|
# Build architecture-dependent files here.
|
|
binary-arch: build install
|
|
dh_testdir
|
|
dh_testroot
|
|
dh_installchangelogs -a
|
|
dh_installdocs -a --all ChangeLog
|
|
dh_installexamples -a
|
|
dh_install -a --sourcedir=$(DESTDIR) --list-missing
|
|
dh_installlogrotate -a
|
|
dh_installinit -a --no-start
|
|
# dh_installinit is only set up to handle one upstart script
|
|
# per package, so do this ourselves
|
|
install -d -m0755 debian/ceph/etc/init
|
|
install -m0644 src/upstart/ceph*.conf debian/ceph/etc/init
|
|
install -d -m0755 debian/ceph-mds/etc/init
|
|
mv debian/ceph/etc/init/ceph-mds* debian/ceph-mds/etc/init
|
|
install -d -m0755 debian/radosgw/etc/init
|
|
install -m0644 src/upstart/radosgw*.conf debian/radosgw/etc/init
|
|
dh_installman -a
|
|
dh_lintian -a
|
|
dh_link -a
|
|
|
|
dh_strip -pceph --dbg-package=ceph-dbg -k --exclude=libcls_
|
|
dh_strip -pceph-mds --dbg-package=ceph-mds-dbg
|
|
dh_strip -pceph-fuse --dbg-package=ceph-fuse-dbg
|
|
dh_strip -prbd-fuse --dbg-package=rbd-fuse-dbg
|
|
dh_strip -pceph-common --dbg-package=ceph-common-dbg
|
|
dh_strip -pceph-fs-common --dbg-package=ceph-fs-common-dbg
|
|
dh_strip -plibrados2 --dbg-package=librados2-dbg
|
|
dh_strip -plibrbd1 --dbg-package=librbd1-dbg
|
|
dh_strip -plibcephfs1 --dbg-package=libcephfs1-dbg
|
|
dh_strip -pradosgw --dbg-package=radosgw-dbg
|
|
dh_strip -prest-bench --dbg-package=rest-bench-dbg
|
|
dh_strip -pceph-test --dbg-package=ceph-test-dbg
|
|
|
|
dh_compress -a
|
|
dh_fixperms -a
|
|
dh_makeshlibs -a -X/usr/lib/rados-classes # exclude .so files in ceph package
|
|
dh_python2 -a
|
|
dh_installdeb -a
|
|
dh_shlibdeps -a
|
|
dh_gencontrol -a
|
|
dh_md5sums -a
|
|
dh_builddeb -a
|
|
|
|
binary: binary-indep binary-arch
|
|
.PHONY: build clean binary-indep binary-arch binary install configure
|