#!/usr/bin/make -f

# See debhelper(7) (uncomment to enable).
# Output every command that modifies files on the build system.

# Get the list of all .po files and extract language codes
PO_FILES := $(basename $(notdir $(wildcard po/*.po)))
# Generate the list of .mo files with folder structure: mo/<lang>/LC_MESSAGES/driveutility.mo
MO_FILES := $(foreach lang,$(PO_FILES),mo/$(lang)/LC_MESSAGES/driveutility.mo)

#export DH_VERBOSE = 1


# See FEATURE AREAS in dpkg-buildflags(1).
#export DEB_BUILD_MAINT_OPTIONS = hardening=+all

# See ENVIRONMENT in dpkg-buildflags(1).
# Package maintainers to append CFLAGS.
#export DEB_CFLAGS_MAINT_APPEND  = -Wall -pedantic
# Package maintainers to append LDFLAGS.
#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed


%:
	dh $@


# dh_make generated override targets.
# This is an example for Cmake (see <https://bugs.debian.org/641051>).
#override_dh_auto_configure:
#	dh_auto_configure -- \
#	-DCMAKE_LIBRARY_PATH=$(DEB_HOST_MULTIARCH)

override_dh_auto_build:
	# First, perform the standard build
	dh_auto_build
	# Then explicitly call our target for building translations
	$(MAKE) -f debian/rules mo_build

override_dh_auto_clean:
	dh_auto_clean
	# Explicitly call our target for cleaning
	$(MAKE) -f debian/rules mo_clean


# "Fake" target that depends on all .mo files with correct structure
mo_build: $(MO_FILES)

# Pattern rule for compiling a single .po file into mo/<lang>/LC_MESSAGES/driveutility.mo
mo/%/LC_MESSAGES/driveutility.mo: po/%.po
	@echo "Compiling translation: $< -> $@"
	@mkdir -p $(dir $@)
	@msgfmt --output-file=$@ $<

# Target for cleaning
mo_clean:
	@echo "Cleaning compiled translations..."
	@rm -rf mo

# Declare our targets as "phony" so make doesn't look for files named mo_build or mo_clean.
.PHONY: mo_build mo_clean