#!/usr/bin/make -f

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

# Avoid unneeded library dependencies
LDFLAGS = $(shell dpkg-buildflags --get LDFLAGS)
LDFLAGS += -Wl,--as-needed

# Flags for debugging, and original flags from the program.
CXXFLAGS = -g -Wall -Wno-sign-compare

# Flags for optimization
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
    CXXFLAGS += -O0
else
    CXXFLAGS += -O2
endif

# Target for stripping / not stripping
BUILD_TARGET = astyle
ifneq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
    BUILD_TARGET = astyled
endif

# The Makefile erroneously calls CPPFLAGS the CXXFLAGS
build: build-stamp
build-stamp:
	dh_testdir
	$(MAKE) -C build/gcc $(BUILD_TARGET) CFLAGS="$(CXXFLAGS)"
	[ "$(BUILD_TARGET)" = "astyle" ] || mv bin/$(BUILD_TARGET) bin/astyle
	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp install-stamp
	[ ! -f build/gcc/Makefile ] || $(MAKE) -C build/gcc clean
	rm -rf build/gcc/obj
	rm -rf bin
	dh_clean

install: install-stamp
install-stamp: build-stamp
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs
	dh_install
	touch install-stamp

# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.

# Build architecture-dependent files here.
binary-arch: build install
	dh_testdir
	dh_testroot
	dh_installdocs
	dh_installman
	dh_installchangelogs 
	dh_strip
	dh_compress
	dh_fixperms
	dh_installdeb
	dh_shlibdeps
	dh_gencontrol
	dh_md5sums
	dh_builddeb

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary
