#!/usr/bin/make -f

USE_PRIVATE_KDEGRAPHICS := n
PRIVATE_LIBDIR := /usr/lib/digikam
export DEB_LDFLAGS_MAINT_APPEND := -Wl,--as-needed

ifeq ($(USE_PRIVATE_KDEGRAPHICS),y)
  # Force to use local libkipi, libkexiv2, and libkdcraw implementation
  EXTRA_CMAKE_ARGS += -DDIGIKAMSC_USE_PRIVATE_KDEGRAPHICS=ON
  CONFLICTS_SUBSTVAR := libkipi-data, libkexiv2-data, libkdcraw-data, libksane-data
else
  EXTRA_CMAKE_ARGS += -DDIGIKAMSC_USE_PRIVATE_KDEGRAPHICS=OFF
endif

DEB_VERSION_UPSTREAM_REVISION := $(shell dpkg-parsechangelog | awk '/^Version: / { print $$2 }' | sed -e 's/^[0-9]*://')
DEB_VERSION_UPSTREAM := $(shell dpkg-parsechangelog | awk '/^Version: / { print $$2 }' | sed -e 's/-[^-]*$$//' | sed -e 's/^[0-9]*://')

%:
	dh $@ --with kde --parallel 

override_dh_auto_configure:
	dh_auto_configure --buildsystem=kde -- \
	  -DCMAKE_INSTALL_RPATH="$(PRIVATE_LIBDIR)" \
	  -DDIGIKAMSC_COMPILE_DOC=on \
	  -DDIGIKAMSC_COMPILE_PO=on \
	  -DENABLE_LCMS2=ON \
	  -DKDE4_BUILD_TESTS=OFF \
	  $(EXTRA_CMAKE_ARGS)

override_dh_installchangelogs:
	dh_installchangelogs -pdigikam core/ChangeLog
	dh_installchangelogs -pkipi-plugins extra/kipi-plugins/ChangeLog
	dh_installchangelogs --remaining-packages

override_dh_installinit:
	dh_installinit
	dh_apparmor -pdigikam --profile-name=usr.sbin.mysqld-digikam

override_dh_install:
	dh_install --list-missing
	install -m 644 -p -D debian/usr.sbin.mysqld-digikam \
		debian/digikam/etc/apparmor.d/usr.sbin.mysqld-digikam
	install -m 755 -p -D debian/mysqld-digikam \
		debian/digikam/usr/sbin/mysqld-digikam

override_dh_shlibdeps:
	dh_shlibdeps -Xusr/lib/kde4/ -l$(CURDIR)/debian/digikam-private-libs/$(PRIVATE_LIBDIR):$(CURDIR)/debian/kipi-plugins/$(PRIVATE_LIBDIR)

override_dh_gencontrol:
	dh_gencontrol -plibkface2 -- -v1.0~digikam$(DEB_VERSION_UPSTREAM_REVISION) -Vdigikam:Conflicts='$(CONFLICTS_SUBSTVAR)'
	dh_gencontrol -plibkface-data -- -v1.0~digikam$(DEB_VERSION_UPSTREAM_REVISION) -Vdigikam:Conflicts='$(CONFLICTS_SUBSTVAR)'
	dh_gencontrol -plibkface-dev -- -v1.0~digikam$(DEB_VERSION_UPSTREAM_REVISION) -Vdigikam:Conflicts='$(CONFLICTS_SUBSTVAR)'
	dh_gencontrol -plibkgeomap1 -- -v1.0~digikam$(DEB_VERSION_UPSTREAM_REVISION) -Vdigikam:Conflicts='$(CONFLICTS_SUBSTVAR)'
	dh_gencontrol -plibkgeomap-data -- -v1.0~digikam$(DEB_VERSION_UPSTREAM_REVISION) -Vdigikam:Conflicts='$(CONFLICTS_SUBSTVAR)'
	dh_gencontrol -plibkgeomap-dev -- -v1.0~digikam$(DEB_VERSION_UPSTREAM_REVISION) -Vdigikam:Conflicts='$(CONFLICTS_SUBSTVAR)'
	dh_gencontrol -plibmediawiki1 -- -v1.0~digikam$(DEB_VERSION_UPSTREAM_REVISION) -Vdigikam:Conflicts='$(CONFLICTS_SUBSTVAR)'
	dh_gencontrol -plibmediawiki-dev -- -v1.0~digikam$(DEB_VERSION_UPSTREAM_REVISION) -Vdigikam:Conflicts='$(CONFLICTS_SUBSTVAR)'
	dh_gencontrol -plibkvkontakte1 -- -v1.0~digikam$(DEB_VERSION_UPSTREAM_REVISION) -Vdigikam:Conflicts='$(CONFLICTS_SUBSTVAR)'
	dh_gencontrol -plibkvkontakte-dev -- -v1.0~digikam$(DEB_VERSION_UPSTREAM_REVISION) -Vdigikam:Conflicts='$(CONFLICTS_SUBSTVAR)'
	dh_gencontrol --remaining-packages -- -Vdigikam:Conflicts='$(CONFLICTS_SUBSTVAR)'

override_dh_strip:
	# Don't include the libraries in the debug package to prevent file conflicts
	# in the future. We have -dbgsym packages anyway.
	dh_strip -plibkface2 -plibkgeomap1 -plibmediawiki1 -plibkvkontakte1
	dh_strip --remaining-packages --dbg-package=digikam-dbg

override_dh_makeshlibs:
	dh_makeshlibs -plibkface2 -V 'libkface2 (>= 1.0~digikam$(DEB_VERSION_UPSTREAM))'
	dh_makeshlibs -plibkgeomap1 -V 'libkgeomap1 (>= 1.0~digikam$(DEB_VERSION_UPSTREAM))'
	dh_makeshlibs -plibmediawiki1 -V 'libmediawiki1 (>= 1.0~digikam$(DEB_VERSION_UPSTREAM))'
	dh_makeshlibs -plibkvkontakte1 -V 'libkvkontakte1 (>= 1.0~digikam$(DEB_VERSION_UPSTREAM))'
	dh_makeshlibs --remaining-packages

# auto tests require user interaction - override
override_dh_auto_test:

