#!/usr/bin/make -f

DH_AUTO_OPTIONS         := -v -Smakefile --parallel
BUILT_USING             := $(shell dpkg-query -f '$${source:Package} (= $${source:Version})' -W lzma-dev)
package                 := $(shell dh_listpackages)


BIG_ENDIAN_ARCHS        := hppa ia64 sparc
DEB_BUILD_ARCH          := $(shell dpkg-architecture -qDEB_BUILD_ARCH)

export DEB_BUILD_MAINT_OPTIONS=hardening=+all
export DESTDIR          := $(CURDIR)/debian/$(package)

export CC               := gcc
export CXX              := g++
# Note: `export USE_GNUC := 1' may be needed if CXX is changed to e.g. g++-$version
export UPX_UCLDIR       := /none
export UPX_LZMADIR      := /usr/include/lzma
export CXXFLAGS         := $(shell dpkg-buildflags --get CXXFLAGS)
export CPPFLAGS         := -DWITH_UCL -D_FILE_OFFSET_BITS=64 \
                           $(shell dpkg-buildflags --get CPPFLAGS)
export LDFLAGS          := $(shell dpkg-buildflags --get LDFLAGS)
ifneq (,$(findstring $(DEB_BUILD_ARCH), $(BIG_ENDIAN_ARCHS)))
        CPPFLAGS        += -D__BIG_ENDIAN__=1
endif


%:
	dh "$@"

override_dh_auto_build: build-stamp
build-stamp:
	# Add here commands to compile the package.
	@echo "Starting build process ($(DEB_BUILD_ARCH))"
	dh_auto_build $(DH_AUTO_OPTIONS) --     \
	              exeext=""                 \
	              target=linux              \
	              all

	cd doc && mv upx.1 $(package).1

	touch "$@"

override_dh_auto_clean:
	rm -f build-stamp

	dh_auto_clean $(DH_AUTO_OPTIONS) -- \
	                exeext=""
	rm -rf doc/*.1 doc/*.ps

override_dh_auto_install:
	install -pm 0755 src/upx $(DESTDIR)/usr/bin/$(package)

override_dh_installchangelogs:
	dh_installchangelogs NEWS

override_dh_installman:
	dh_installman doc/*.1

override_dh_gencontrol:
	dh_gencontrol -- -VBuilt-Using="$(BUILT_USING)"
