#
# ============================================================
# This file defines the common definitions used in several
# Makefile. This file must be included, if needed, by the file
# Makefile.am.
# ============================================================
#

# Standard directory for installation
salomeincludedir   = $(includedir)/salome
libdir             = $(prefix)/lib@LIB_LOCATION_SUFFIX@/salome
bindir             = $(prefix)/bin/salome
salomescriptdir    = $(bindir)
salomepythondir    = $(pythondir)/salome
salomepyexecdir    = $(pyexecdir)/salome

# Directory for installing idl files
salomeidldir       = $(prefix)/idl/salome

# Directory for installing resource files
salomeresdir       = $(prefix)/share/salome/resources/@MODULE_NAME@

# Directories for installing admin files
admlocaldir        = $(prefix)/adm_local
admlocalunixdir    = $(admlocaldir)/unix
admlocalm4dir      = $(admlocaldir)/unix/config_files

# Shared modules installation directory
sharedpkgpythondir = $(salomepythondir)/shared_modules

# Documentation directory
docdir             = $(datadir)/doc/salome

# common rules

# meta object implementation files generation (moc)
%_moc.cxx: %.h
	$(MOC) $< -o $@

# translation (*.qm) files generation (lrelease)
%.qm: %.ts
	$(LRELEASE) $< -qm $@

# resource files generation (qrcc)
qrc_%.cxx: %.qrc
	$(QRCC) $< -o $@ -name $(*F)

# qt forms files generation (uic)
ui_%.h: %.ui
	$(UIC) -o $@ $<

# extra distributed files
EXTRA_DIST = $(MOC_FILES:%_moc.cxx=%.h) $(QRC_FILES:qrc_%.cxx=%.qrc) \
             $(UIC_FILES:ui_%.h=%.ui) $(nodist_salomeres_DATA:%.qm=%.ts)

# customize clean operation
mostlyclean-local:
	rm -f @builddir@/*_moc.cxx
	rm -f @builddir@/*.qm
	rm -f @builddir@/ui_*.h
	rm -f @builddir@/qrc_*.cxx

# tests
tests: unittest

unittest: $(UNIT_TEST_PROG)
	@if test "x$(UNIT_TEST_PROG)" != "x"; then \
	    $(UNIT_TEST_PROG);                     \
	fi;