Skip to content
Snippets Groups Projects
rules 2.74 KiB
#!/usr/bin/make -f

# DH_VERBOSE := 1

include /usr/share/dpkg/default.mk

CPPFLAGS:=$(shell dpkg-buildflags --get CPPFLAGS)
CFLAGS:=$(shell dpkg-buildflags --get CFLAGS) $(CPPFLAGS)
CXXFLAGS:=$(shell dpkg-buildflags --get CXXFLAGS) $(CPPFLAGS)
LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS)
TMPDIR     := $(CURDIR)/install_spades
LIBDIR     := debian/$(DEB_SOURCE)/usr/lib/spades
mandir     := $(CURDIR)/debian/man
debfolder  := $(CURDIR)/debian

PREFIX:=/usr
BUILD_DIR:=$(CURDIR)/build_spades

DEB_CMAKE_EXTRA_FLAGS = -DSPADES_BOOST_ROOT=/usr/include
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
export LC_ALL = C

%:
	dh $@  --with python2 --sourcedirectory=src --buildsystem=cmake

override_dh_clean:
	dh_clean -X.orig

override_dh_auto_clean:
	dh_auto_clean
	rm -rf build_spades
	rm -rf install_spades
	rm -rf spades_test
	find . -name "*.pyc" -delete
	rm -rf $(debfolder)/man_src/*.html $(debfolder)/man_src/*.?
	rm -rf $(mandir)

override_dh_auto_configure:
	echo "Simply use spades_compile.sh in auto_build"

override_dh_auto_build:
	PREFIX=$(TMPDIR) ./spades_compile.sh
# Use Debian-packaged yaml module
	find $(TMPDIR) \
	-type f \
	-print0 \
	-exec sed -i 's/pyyaml[2|3]/yaml/' {} +

override_dh_installman:
	mkdir -p $(mandir)
	asciidoctor -a docdate='' -b manpage $(debfolder)/man_src/*.adoc
	cp $(debfolder)/man_src/*.? $(mandir)
	dh_installman --

override_dh_auto_test:
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
	# Ugly hack to make files available for dh_aut_test and autopkgtest
	mkdir -p $(CURDIR)/../share/
	ln -s $(CURDIR)/install_spades/share/spades $(CURDIR)/../share/
	ln -s  /usr/bin/bwa $(CURDIR)/install_spades/bin/spades-bwa
	$(TMPDIR)/bin/spades.py --test
	$(TMPDIR)/bin/dipspades.py --test
	$(TMPDIR)/bin/metaspades.py --test
	$(TMPDIR)/bin/rnaspades.py --test
	# Difficult to test truSPAdes before installing because bwa-spades
	# is still not in the right place. Let's do this later in an
	# autopkgtest.
	# $(TMPDIR)/bin/truspades.py --test
	# Cleunup symlinks
	rm -rf $(CURDIR)/../share/
	unlink $(CURDIR)/install_spades/bin/spades-bwa
endif

override_dh_auto_install:
	echo "Nothing to install"
	find $(CURDIR) -name *.pyc -delete

override_dh_install:
	dh_install
	mkdir -p $(LIBDIR)
	mv debian/$(DEB_SOURCE)/usr/bin $(LIBDIR)
	mkdir -p debian/$(DEB_SOURCE)/usr/bin
	install debian/bin/spades debian/$(DEB_SOURCE)/usr/bin/
	chmod +x debian/$(DEB_SOURCE)/usr/bin/spades
	rm -f debian/$(DEB_SOURCE)/usr/share/spades/GPLv2.txt
	rm -f debian/$(DEB_SOURCE)/usr/share/spades/LICENSE
	ln -s ../../../share/spades/VERSION debian/$(DEB_SOURCE)/usr/lib/spades/bin/VERSION

override_dh_installdocs:
	dh_installdocs

override_dh_installchangelogs:
	LANG="C" LANGUAGE="en_US:en" LC_ALL=C.UTF-8 lynx -dump changelog.html > changelog
	dh_installchangelogs changelog
	rm changelog