#!/usr/bin/make -f

include /usr/share/dpkg/architecture.mk
include /usr/share/dpkg/pkg-info.mk

export DEB_HOST_MULTIARCH
export DEB_CFLAGS_MAINT_APPEND = -fPIC
export DEB_CXXFLAGS_MAINT_APPEND = -fPIC
export DEB_CPPFLAGS_MAINT_APPEND = -DNDEBUG
export DEB_LDFLAGS_MAINT_APPEND = -fPIC
# DEB_BUILD_PROFILES = stage1

STAGE1_COMPONENTS = adb \
                    simg2img \
                    img2simg \
                    append2simg \
                    libadb.so \
                    libbacktrace.so \
                    libbase.so \
                    libcutils.so \
                    liblog.so \
                    libsparse.so \
                    libutils.so \
                    libziparchive.so
OTHER_COMPONENTS = fastboot
COMPONENTS = $(STAGE1_COMPONENTS)
ifeq ($(filter stage1,$(DEB_BUILD_PROFILES)),)
  COMPONENTS += $(OTHER_COMPONENTS)
endif

# If building on architectures other than the supported ones, only build the
# architecture independent "android-platform-system-core-headers"
ifeq ($(filter amd64 i386 armel armhf arm64 mips mipsel mips64el,$(DEB_HOST_ARCH)),)
  COMPONENTS =
endif

lib%.so: debian/lib%.mk
	make -f $<

libadb.so: debian/libadb.mk libcutils.so libbase.so
	make -f $< DEB_VERSION=$(DEB_VERSION)

libbacktrace.so: debian/libbacktrace.mk libcutils.so libbase.so liblog.so
	make -f $<

libbase.so: debian/libbase.mk liblog.so
	make -f $<

libcutils.so: debian/libcutils.mk liblog.so
	make -f $<

libutils.so: debian/libutils.mk liblog.so libcutils.so libbacktrace.so
	make -f $<

libziparchive: debian/libziparchive.mk libutils.so liblog.so libbase.so
	make -f $<

adb: debian/adb.mk libadb.so libcutils.so libbase.so
	make -f $< DEB_VERSION=$(DEB_VERSION)

fastboot: debian/fastboot.mk libziparchive.so libsparse.so libbase.so libcutils.so libadb.so
	make -f $< DEB_VERSION=$(DEB_VERSION)

simg2img: debian/simg2img.mk libsparse.so
	make -f $<

img2simg: debian/img2simg.mk libsparse.so
	make -f $<

append2simg: debian/append2simg.mk libsparse.so
	make -f $<

.PHONY: adb fastboot simg2img img2simg append2simg

%:
	dh $@ --with bash-completion

override_dh_auto_build: $(COMPONENTS)
	pandoc -s -o debian/adb.1 debian/adb.1.md
	pandoc -s -o debian/fastboot.1 debian/fastboot.1.md

override_dh_auto_clean:
	dh_auto_clean
	$(foreach component,$(COMPONENTS),make clean -f debian/$(component:.so=).mk;)
	$(RM) debian/*.1

override_dh_shlibdeps:
	dh_shlibdeps -l/usr/lib/$(DEB_HOST_MULTIARCH)/android

get-orig-source:
	uscan --download-current-version --force-download --rename
