sintonia/campcaster/src/modules/widgets/etc/Makefile.in

261 lines
8.6 KiB
Makefile

#-------------------------------------------------------------------------------
# Copyright (c) 2004 Media Development Loan Fund
#
# This file is part of the Campcaster project.
# http://campcaster.campware.org/
# To report bugs, send an e-mail to bugs@campware.org
#
# Campcaster is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# Campcaster is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Campcaster; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
#
# Author : $Author$
# Version : $Revision$
# Location : $URL$
#
# @configure_input@
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# General command definitions
#-------------------------------------------------------------------------------
MKDIR = mkdir -p
RM = rm -f
RMDIR = rm -rf
DOXYGEN = doxygen
CP = cp -f
#-------------------------------------------------------------------------------
# Basic directory and file definitions
#-------------------------------------------------------------------------------
PACKAGE_NAME = @PACKAGE_NAME@
BASE_DIR = @builddir@
DOC_DIR = ${BASE_DIR}/doc
DOXYGEN_DIR = ${DOC_DIR}/doxygen
COVERAGE_DIR = ${DOC_DIR}/coverage
ETC_DIR = ${BASE_DIR}/etc
INCLUDE_DIR = ${BASE_DIR}/include
LIB_DIR = ${BASE_DIR}/lib
SRC_DIR = ${BASE_DIR}/src
TMP_DIR = ${BASE_DIR}/tmp
VAR_DIR = ${BASE_DIR}/var
prefix = @prefix@
USR_DIR = ${prefix}
USR_INCLUDE_DIR = ${USR_DIR}/include
USR_BIN_DIR = ${USR_DIR}/bin
USR_LIB_DIR = ${USR_DIR}/lib
USR_VAR_DIR = ${USR_DIR}/var
MODULES_DIR = ${BASE_DIR}/..
CORE_DIR = ${MODULES_DIR}/core
CORE_INCLUDE_DIR = ${CORE_DIR}/include
CORE_LIB_DIR = ${CORE_DIR}/lib
CORE_LIB = livesupport_core
CORE_LIB_FILE = ${CORE_LIB_DIR}/lib${CORE_LIB}.a
GENRB = @GENRB@
GENRBOPTS = --destdir ${TMP_DIR} \
--encoding utf-8 \
--package-name ${PACKAGE_NAME} \
--strict
VPATH = ${SRC_DIR}
BOOST_CFLAGS=@BOOST_CPPFLAGS@
BOOST_LIBS=@BOOST_LDFLAGS@
BOOST_DATE_TIME_LIB=@BOOST_DATE_TIME_LIB@
LIBXMLPP_CFLAGS=@LIBXMLPP_CFLAGS@
LIBXMLPP_LIBS=@LIBXMLPP_LIBS@
ICU_CFLAGS=@ICU_CFLAGS@
ICU_CXXFLAGS=@ICU_CXXFLAGS@
ICU_LIBS=@ICU_LIBS@
GTKMM_CFLAGS=@GTKMM_CFLAGS@
GTKMM_LIBS=@GTKMM_LIBS@
TEST_RESULTS = ${DOC_DIR}/testResults.xml
# the text result XSLT has to be relative to the test result file, e.g. TMP_DIR
TEST_XSLT = ../etc/testResultToHtml.xsl
WIDGETS_LIB = livesupport_widgets
WIDGETS_LIB_FILE = ${LIB_DIR}/lib${WIDGETS_LIB}.a
TEST_EXE = ${TMP_DIR}/test
TEST_CFG = ${ETC_DIR}/widgetFactory.xml
DOXYGEN_CONFIG = ${ETC_DIR}/doxygen.config
export LD_LIBRARY_PATH:=${USR_LIB_DIR}:${LD_LIBRARY_PATH}
#-------------------------------------------------------------------------------
# Configuration parameters
#-------------------------------------------------------------------------------
CPPFLAGS = @CPPFLAGS@
CXXFLAGS = @CXXFLAGS@ @DEFS@ @COVERAGE_CXXFLAGS@ -pthread \
-pedantic -Wall -Wno-long-long \
${BOOST_CFLAGS} \
${LIBXMLPP_CFLAGS} \
${ICU_CFLAGS} \
${GTKMM_CFLAGS} \
-I${USR_INCLUDE_DIR} \
-I${CORE_INCLUDE_DIR} \
-I${INCLUDE_DIR} -I${TMP_DIR}
LDFLAGS = @LDFLAGS@ -pthread \
${BOOST_LIBS} \
${LIBXMLPP_LIBS} \
${ICU_LIBS} \
${GTKMM_LIBS} \
-L${USR_LIB_DIR} \
-L${CORE_LIB_DIR} \
-L${LIB_DIR}
#-------------------------------------------------------------------------------
# Dependencies
#-------------------------------------------------------------------------------
WIDGETS_LIB_OBJS = ${TMP_DIR}/ImageButton.o \
${TMP_DIR}/Button.o \
${TMP_DIR}/BlueBin.o \
${TMP_DIR}/EntryBin.o \
${TMP_DIR}/WhiteWindow.o \
${TMP_DIR}/CornerImages.o \
${TMP_DIR}/ButtonImages.o \
${TMP_DIR}/ComboBoxText.o \
${TMP_DIR}/MetadataComboBoxText.o \
${TMP_DIR}/OperatorComboBoxText.o \
${TMP_DIR}/Notebook.o \
${TMP_DIR}/WidgetFactory.o \
${TMP_DIR}/ZebraTreeView.o \
${TMP_DIR}/ZebraCellRenderer.o \
${TMP_DIR}/Colors.o \
${TMP_DIR}/DialogWindow.o \
${TMP_DIR}/ScrolledWindow.o \
${TMP_DIR}/ScrolledNotebook.o \
${TMP_DIR}/DateTimeChooserWindow.o \
${TMP_DIR}/RadioButtons.o \
${TMP_DIR}/MasterPanelBin.o \
TEST_EXE_OBJS = ${TMP_DIR}/TestWindow.o \
${TMP_DIR}/main.o
TEST_RUNNER_RES = ${TMP_DIR}/${PACKAGE_NAME}_root.res \
${TMP_DIR}/${PACKAGE_NAME}_en.res \
${TMP_DIR}/${PACKAGE_NAME}_hu.res
TEST_EXE_LIBS = -l${WIDGETS_LIB} -l${CORE_LIB} ${ICU_LIBS} \
${BOOST_DATE_TIME_LIB} -lxmlrpc++ -lssl
#-------------------------------------------------------------------------------
# Targets
#-------------------------------------------------------------------------------
.PHONY: all dir_setup doc clean docclean depclean distclean check install
all: dir_setup ${WIDGETS_LIB_FILE}
dir_setup: ${TMP_DIR} ${DOXYGEN_DIR}
doc:
${DOXYGEN} ${DOXYGEN_CONFIG}
clean:
${RM} ${WIDGETS_LIB_OBJS} ${WIDGETS_LIB_FILE}
${RM} ${TEST_EXE_OBJS} ${TEST_EXE}
${RM} ${TMP_DIR}/*.bb ${TMP_DIR}/*.bbg ${TMP_DIR}/*.da ${TMP_DIR}/*.info
docclean:
${RMDIR} ${DOXYGEN_DIR}/html
${RMDIR} ${COVERAGE_DIR}/*
${RM} ${TEST_RESULTS}
depclean: clean
distclean: clean docclean
${RMDIR} ${TMP_DIR}/config* ${TMP_DIR}/autom4te* ${TMP_DIR}/ac*.m4
run: all ${TEST_EXE} ${TEST_RUNNER_RES}
${TEST_EXE} -c ${TEST_CFG}
check: all
install: all
${MKDIR} ${USR_INCLUDE_DIR}/LiveSupport/Widgets
${CP} ${INCLUDE_DIR}/LiveSupport/Widgets/*.h \
${USR_INCLUDE_DIR}/LiveSupport/Widgets
${CP} ${WIDGETS_LIB_FILE} ${USR_LIB_DIR}
${MKDIR} ${USR_VAR_DIR}/LiveSupport/Widgets/blueBin \
${USR_VAR_DIR}/LiveSupport/Widgets/button \
${USR_VAR_DIR}/LiveSupport/Widgets/combo \
${USR_VAR_DIR}/LiveSupport/Widgets/darkBlueBin \
${USR_VAR_DIR}/LiveSupport/Widgets/entryBin \
${USR_VAR_DIR}/LiveSupport/Widgets/icons \
${USR_VAR_DIR}/LiveSupport/Widgets/imageButton \
${USR_VAR_DIR}/LiveSupport/Widgets/tabButton \
${USR_VAR_DIR}/LiveSupport/Widgets/whiteWindow
${CP} ${VAR_DIR}/blueBin/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/blueBin
${CP} ${VAR_DIR}/button/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/button
${CP} ${VAR_DIR}/combo/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/combo
${CP} ${VAR_DIR}/darkBlueBin/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/darkBlueBin
${CP} ${VAR_DIR}/entryBin/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/entryBin
${CP} ${VAR_DIR}/icons/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/icons
${CP} ${VAR_DIR}/imageButton/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/imageButton
${CP} ${VAR_DIR}/tabButton/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/tabButton
${CP} ${VAR_DIR}/whiteWindow/*.png \
${USR_VAR_DIR}/LiveSupport/Widgets/whiteWindow
#-------------------------------------------------------------------------------
# Specific targets
#-------------------------------------------------------------------------------
${WIDGETS_LIB_FILE}: ${WIDGETS_LIB_OBJS}
${AR} crus $@ $^
${TMP_DIR}:
${MKDIR} ${TMP_DIR}
${DOXYGEN_DIR}:
${MKDIR} ${DOXYGEN_DIR}
${TEST_EXE}: ${CORE_LIB_FILE} ${TEST_EXE_OBJS} ${WIDGETS_LIB_FILE}
${CXX} ${LDFLAGS} -o $@ ${TEST_EXE_OBJS} ${TEST_EXE_LIBS} \
${WIDGETS_LIB_FILE}
${CORE_LIB_FILE}:
${MAKE} -C ${CORE_DIR}
#-------------------------------------------------------------------------------
# Pattern rules
#-------------------------------------------------------------------------------
${TMP_DIR}/%.o : ${SRC_DIR}/%.cxx
${CXX} ${CPPFLAGS} ${CXXFLAGS} -c -o $@ $<
${TMP_DIR}/${PACKAGE_NAME}_%.res : ${VAR_DIR}/%.txt
${GENRB} ${GENRBOPTS} $^