Projects
Kolab:3.4
xapian-core
debian.rules
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File debian.rules of Package xapian-core
#!/usr/bin/make -f # # Copyright (C) 2004,2005,2006 Lemur Consulting Ltd # Copyright (C) 2006,2007,2008,2009,2010,2011,2012,2013 Olly Betts # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to # deal in the Software without restriction, including without limitation the # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or # sell copies of the Software, and to permit persons to whom the Software is # furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS # IN THE SOFTWARE. # Codename we're building packages for. For backported packages, put the # codename (e.g. lenny or jaunty) in debian/codename. If that file doesn't # exist, the default is sid. # CODENAME := $(shell cat debian/codename 2>/dev/null||echo sid) # The soversion number needs to match that generated by libtool. The following # lines should read configure.ac to get the current interface number and # subtract it from the interface age, to get the oldest interface number # supported by the library. This should correspond to the soversion assigned # to the library by libtool. (This isn't documented, and is system dependent, # so we need to check it doesn't break with future versions of libtool.) libxapian_soversion:=$(shell awk -F'[=:]' '($$1 == "LIBRARY_VERSION_INFO") {print $$2 - $$4}' configure.ac) # For now, we don't support installation of development files for multiple # versions concurrently. Incompatible ABI changes should be rare, so this # seems reasonable. libxapian_dev_soversion= export DH_OPTIONS export DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) export DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) confflags := --prefix=/usr --sysconfdir=/etc 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) # Disable the testsuite when cross-compiling. DEB_BUILD_OPTIONS += nocheck endif # For i386 and *-i386. ifeq ($(patsubst %-i386,i386,$(DEB_HOST_ARCH)), i386) XAPIAN_BUILD_SSE := 1 endif CFLAGS := `dpkg-buildflags --get CFLAGS` CXXFLAGS := `dpkg-buildflags --get CXXFLAGS` LDFLAGS := `dpkg-buildflags --get LDFLAGS` CPPFLAGS := `dpkg-buildflags --get CPPFLAGS` # Fallback for suites which don't have dpkg-buildflags. ifeq (,$(CFLAGS)) CFLAGS := CXXFLAGS := -g ifeq (,$(filter noopt,$(DEB_BUILD_OPTIONS))) CFLAGS += -O2 CXXFLAGS += -O2 endif endif # Handle other DEB_BUILD_OPTIONS. Note that dh_strip handles nostrip for us, # and dpkg-buildflags handles noopt with newer dpkg. ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) MAKEFLAGS += -j$(NUMJOBS) endif ifneq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) MAKE_CHECK := : else MAKE_CHECK := $(MAKE) check VALGRIND= endif confflags += CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" # With GCC3 and later this won't make a huge difference, but it'll save # a bit of time and diskspace while building. confflags += --disable-dependency-tracking maint: \ debian/control \ debian/libxapian$(libxapian_soversion).install \ debian/libxapian$(libxapian_dev_soversion)-dev.install maintclean: clean rm -f debian/control rm -f debian/libxapian$(libxapian_soversion).install rm -f debian/libxapian$(libxapian_dev_soversion)-dev.install rm -rf debian/libxapian$(libxapian_soversion) rm -rf debian/libxapian$(libxapian_dev_soversion)-dev rm -rf debian/xapian-doc rm -rf debian/xapian-tools rm -rf debian/tmp debian/tmp-sse2 debian/control: debian/rules debian/control.in debian/compat rm -f debian/control.tmp sed -e 's/@LIBXAPIAN_SOVERSION@/$(libxapian_soversion)/g' \ -e 's/@LIBXAPIAN_DEV_SOVERSION@/$(libxapian_dev_soversion)/g' \ -e 's/@BUILD_DEPS@/debhelper (>= $(shell cat debian/compat)),/g' \ debian/control.in > debian/control.tmp mv debian/control.tmp debian/control debian/libxapian$(libxapian_soversion).install: debian/rules debian/libxapianVERSION.install cp -f debian/libxapianVERSION.install debian/libxapian$(libxapian_soversion).install debian/libxapian$(libxapian_dev_soversion)-dev.install: debian/rules debian/libxapianVERSION-dev.install cp -f debian/libxapianVERSION-dev.install debian/libxapian$(libxapian_dev_soversion)-dev.install configure: configure-stamp configure-stamp: debian/control dh_testdir # Use the latest config.sub and config.guess from the autotools-dev # package. rm -f config.sub config.guess ln -s /usr/share/misc/config.sub config.sub ln -s /usr/share/misc/config.guess config.guess aclocal -I m4 automake --add-missing autoreconf -v # Report kernel and compiler version so upstream PLATFORMS file can be # updated from buildd logs. -uname -a -g++ --version # Configure in a subdirectory, for neatness. mkdir -p build ifdef XAPIAN_BUILD_SSE cd build && ../configure $(confflags) --disable-sse mkdir -p build-sse2 cd build-sse2 && ../configure $(confflags) --disable-static else cd build && ../configure $(confflags) endif # Touch the stamp file, to avoid repeating the configure step. touch $@ build: build-arch build-indep build-arch: build-stamp build-indep: build-stamp build-stamp: configure-stamp dh_testdir $(MAKE) -C build ifdef XAPIAN_BUILD_SSE $(MAKE) -C build-sse2 $(MAKE_CHECK) -C build-sse2 else $(MAKE_CHECK) -C build endif touch $@ install: DH_OPTIONS= install: install-stamp install-stamp: build-stamp \ debian/libxapian$(libxapian_soversion).install \ debian/libxapian$(libxapian_dev_soversion)-dev.install dh_testdir dh_testroot dh_prep dh_installdirs # Install the files into debian/tmp $(MAKE) -C build DESTDIR=$(CURDIR)/debian/tmp install ifdef XAPIAN_BUILD_SSE $(MAKE) -C build-sse2 DESTDIR=$(CURDIR)/debian/tmp-sse2 install mkdir -p $(CURDIR)/debian/libxapian$(libxapian_soversion)/usr/lib/sse2 mv $(CURDIR)/debian/tmp-sse2/usr/lib/libxapian*.so.* $(CURDIR)/debian/libxapian$(libxapian_soversion)/usr/lib/sse2 rm -rf $(CURDIR)/debian/tmp-sse2 endif # Empty dependency_libs to placate luddite release goal. sed -i 's/^\(dependency_libs=\).*/\1/' $(CURDIR)/debian/tmp/usr/lib/libxapian.la # Install the example source code mkdir -p debian/tmp/usr/share/doc/xapian-examples/examples cp examples/*.cc debian/tmp/usr/share/doc/xapian-examples/examples ln -s ../../../../lib/xapian-examples/examples debian/tmp/usr/share/doc/xapian-examples/examples/built # Fix up link to the internal sourcedocs to point to those on the # Xapian website since we don't build and package them. sed -i 's,sourcedoc/html/annotated.html,http://xapian.org/docs/&,' debian/tmp/usr/share/doc/xapian-core/internals.html # Reads the *.install files to decide where to install everything dh_install --sourcedir=debian/tmp --fail-missing touch $@ binary: binary-arch binary-indep binary-indep: DH_OPTIONS=-i binary-indep: build-indep install dh_testdir dh_testroot dh_installdocs dh_installexamples dh_installmenu dh_installman dh_installchangelogs ChangeLog dh_compress dh_fixperms dh_installdeb dh_gencontrol dh_md5sums dh_builddeb binary-arch: DH_OPTIONS=-a binary-arch: build-arch install dh_testdir dh_testroot dh_installdocs dh_installexamples dh_installmenu dh_installman dh_installchangelogs ChangeLog : dh_strip --dbg-package=libxapian$(libxapian_soversion)-dbg # Only keep debug symbols for the shared library. rm -rf debian/libxapian$(libxapian_soversion)-dbg/usr/lib/debug/usr/lib/xapian-examples rm -rf debian/libxapian$(libxapian_soversion)-dbg/usr/lib/debug/usr/bin : dh_link dh_compress dh_fixperms dh_makeshlibs dh_installdeb dh_shlibdeps -L libxapian$(libxapian_soversion) -ldebian/libxapian$(libxapian_soversion)/usr/lib dh_gencontrol dh_md5sums dh_builddeb clean: debian/control dh_testdir dh_testroot rm -rf build build-sse2 rm -f config.sub config.guess dh_clean .PHONY: maint maintclean configure build build-arch build-indep install binary binary-arch binary-indep clean
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.