#!/usr/bin/make -f

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

export DEB_BUILD_MAINT_OPTIONS = hardening=+all

CMAKE_FLAGS += \
	-DAU4_BUILD_CONFIGURATION=app \
	-DAU4_BUILD_MODE=release \
	-DAU4_INSTALL_NAME=audacity/ \
	-DAU_BUILD_CLOUD_AUDIOCOM=OFF \
	-DAU_BUILD_USAGEINFO_MODULE=OFF \
	-DAU_USE_SBSMS=ON \
	-DAU_USE_SOUNDTOUCH=ON \
	-DCMAKE_BUILD_TYPE=RelWithDebInfo \
	-DCMAKE_DEB_HOST_MULTIARCH=$(DEB_HOST_MULTIARCH) \
	-DCMAKE_INSTALL_LIBDIR=lib \
	-DEXTDEPS_CACHE=$(CURDIR)/offline-deps \
	-DEXTDEPS_OVERRIDE_EXPAT=SYSTEM \
	-DMUSE_ENABLE_UNIT_TESTS=OFF \
	-DMUSE_MODULE_AUDIO_JACK=ON \
	-DMUSE_MODULE_AUDIO_PIPEWIRE=ON \
	-DMUSE_MODULE_CLOUD_MUSESCORECOM=OFF \
	-DMUSE_MODULE_UPDATE=OFF \
	-DQT_QML_NO_CACHEGEN=ON

# Libs from debian
CMAKE_FLAGS += \
	-DEXTDEPS_OVERRIDE_CURL=SYSTEM \
	-DEXTDEPS_OVERRIDE_EXPAT=SYSTEM \
	-DEXTDEPS_OVERRIDE_FLAC=SYSTEM \
	-DEXTDEPS_OVERRIDE_FREETYPE=SYSTEM \
	-DEXTDEPS_OVERRIDE_HARFBUZZ=SYSTEM \
	-DEXTDEPS_OVERRIDE_LAME=SYSTEM \
	-DEXTDEPS_OVERRIDE_LIBPNG=SYSTEM \
	-DEXTDEPS_OVERRIDE_LIBSNDFILE=SYSTEM \
	-DEXTDEPS_OVERRIDE_LV2SDK=SYSTEM \
	-DEXTDEPS_OVERRIDE_MPG123=SYSTEM \
	-DEXTDEPS_OVERRIDE_OGG=SYSTEM \
	-DEXTDEPS_OVERRIDE_OPUSENC=SYSTEM \
	-DEXTDEPS_OVERRIDE_OPUSFILE=SYSTEM \
	-DEXTDEPS_OVERRIDE_OPUS=SYSTEM \
	-DEXTDEPS_OVERRIDE_PORTAUDIO=SYSTEM \
	-DEXTDEPS_OVERRIDE_PUGIXML=SYSTEM \
	-DEXTDEPS_OVERRIDE_RAPIDJSON=SYSTEM \
	-DEXTDEPS_OVERRIDE_SBSMS=SYSTEM \
	-DEXTDEPS_OVERRIDE_SOUNDTOUCH=SYSTEM \
	-DEXTDEPS_OVERRIDE_SOXR=SYSTEM \
	-DEXTDEPS_OVERRIDE_SQLITE=SYSTEM \
	-DEXTDEPS_OVERRIDE_TWOLAME=SYSTEM \
	-DEXTDEPS_OVERRIDE_UTFCPP=SYSTEM \
	-DEXTDEPS_OVERRIDE_VORBIS=SYSTEM \
	-DEXTDEPS_OVERRIDE_WAVPACK=SYSTEM \
	-DEXTDEPS_OVERRIDE_WXWIDGETS=SYSTEM \
	-DEXTDEPS_OVERRIDE_ZLIB=SYSTEM

# Embedded Libs
CMAKE_FLAGS += \
	-DEXTDEPS_OVERRIDE_MSDFGEN=REBUILD \
	-DEXTDEPS_OVERRIDE_NYQUIST=REBUILD \
	-DEXTDEPS_OVERRIDE_PFFFT=REBUILD \
	-DEXTDEPS_OVERRIDE_TFT=REBUILD \
	-DEXTDEPS_OVERRIDE_LOOP-TEMPO-ESTIMATOR=REBUILD \
	-DEXTDEPS_OVERRIDE_PICOJSON=REBUILD \
	-DEXTDEPS_OVERRIDE_VST3SDK=REBUILD

ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
CROSS_CMAKE_FLAGS = -DIMAGE_COMPILER_EXECUTABLE=$(CURDIR)/obj-$(DEB_BUILD_GNU_TYPE)/RelWithDebInfo/bin/image-compiler
endif

ifeq ($(DEB_HOST_ARCH),i386)
 export DEB_CFLAGS_MAINT_APPEND = -mfpmath=sse -msse2
 export DEB_CXXFLAGS_MAINT_APPEND = -mfpmath=sse -msse2
endif

%:
	dh $@

override_dh_auto_clean:
	dh_auto_clean
ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
	rm -rf obj-$(DEB_BUILD_GNU_TYPE)
endif
	dh_clean libraries/lib-theme-resources/*Code.h

override_dh_auto_configure:
ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
	dpkg-architecture -a$(DEB_BUILD_ARCH) -f -c \
		dh_auto_configure --reload-all-buildenv-variables --builddirectory=obj-$(DEB_BUILD_GNU_TYPE) -- \
		$(CMAKE_FLAGS)
	cmake --build obj-$(DEB_BUILD_GNU_TYPE) --target image-compiler
endif
	WX_CONFIG=/usr/lib/$(DEB_HOST_GNU_TYPE)/wx/config/gtk3-unicode-3.2 dh_auto_configure -- $(CMAKE_FLAGS) $(CROSS_CMAKE_FLAGS)
