# -*-mode: Makefile;-*- ;; Have EMACS always use makefile-mode for this file. ifeq "${ICL_DEPENDENCIES_CHECKED}" "" ## search for configuration file CFG_FILE:=${SRC_ROOT}/config CONFIG:=$(wildcard ${CFG_FILE}) ifeq "$(CREATE_CONFIG)" "TRUE" ifneq "${CONFIG}" "" $(info saving old conifg to ${CFG_FILE}.old) $(shell mv ${CFG_FILE} ${CFG_FILE}.old) endif ########################################################################################## ## Config Convenience Functions ######################################################### ########################################################################################## CFG_ECHO=/bin/echo -e # writes anything into the configfile CFG=$(shell ${CFG_ECHO} $1 >> ${CFG_FILE}) # e.g. for $1=IPP: writes IPP_ROOT=$(IPP_ROOT) into the config file CFG_SET_ROOT=$(shell ${CFG_ECHO} $1_ROOT:=${$1_ROOT} >> ${CFG_FILE}) # e.g. for $1=IPP: writes HAVE_IPP=TRUE into the config file CFG_HAVE_TRUE=$(shell ${CFG_ECHO} HAVE_$1:=TRUE >> ${CFG_FILE}) # e.g. for $1=IPP: writes HAVE_IPP= into the config file CFG_HAVE_FALSE=$(shell ${CFG_ECHO} HAVE_$1:= >> ${CFG_FILE}) # e.g. for $1=CFLAGS and $2=-DHAVE_IPP: Writes CFLAGS=$(CFLAGS) -DHAVE_IPP into the config file #CFG_VAR_ADD=$(shell ${CFG_ECHO} 'ifeq' '"$${CONFIG_READ}"' '""\n'$1:='$${$1} $2\nendif' >> ${CFG_FILE}); CFG_VAR_ADD=$(shell ${CFG_ECHO} $1:='$${$1} $2' >> ${CFG_FILE}); # e.g. for $1=IPP: writes CONFIG_LIST:=$(CONFIG_LIST),[IPP] into the config file #CFG_LIST_ADD=$(shell ${CFG_ECHO} 'ifeq' '"$${CONFIG_READ}"' '""\n'CONFIG_LIST:='$${CONFIG_LIST},['$1']\nendif'>> ${CFG_FILE}); CFG_LIST_ADD=$(shell ${CFG_ECHO} CONFIG_LIST:='$${CONFIG_LIST},['$1']'>> ${CFG_FILE}); # write a comment into the config file CFG_COMMENT = $(shell ${CFG_ECHO} "\# " $1 >> ${CFG_FILE}); # starts a new section in the config file CFG_HEADER = $(shell ${CFG_ECHO} "\n\# Configuration for ["$1"]" >> ${CFG_FILE}); # writes an info statement into the config file, that notifies support for $1 CFG_NOTIFY_ENABLED = $(shell ${CFG_ECHO} 'ifeq' '"$${CONFIG_READ}"' '""\n''$$(info | '$1' support enabled: '$2')\nendif' >> ${CFG_FILE} ) # writes an info statement into the config file, that notifies $1 is not supported CFG_NOTIFY_DISABLED = $(shell ${CFG_ECHO} 'ifeq' '"$${CONFIG_READ}"' '""\n''$$(info | '$1' not found in: '$2' (support disabled))\nendif' >> ${CFG_FILE} ) ########################################################################################## ## Create Dependency config file ######################################################### ########################################################################################## E=e $(call CFG_COMMENT ,"ICL-Configuration File (auto generated)") $(call CFG ,CONFIG_LIST="") $(call CFG,'ifeq "$${CONFIG_READ}" ""\n$$(info +-----------------------------------------------------------------------)\nendif' ); # IPP IPP_ROOT ?= /vol/vision/IPP ifeq "${OS_TYPE}" "linux" $(call CFG_HEADER ,IPP) ifeq "$(wildcard $(IPP_ROOT)/5.2/sharedlib/libipp*.so)" "" $(call CFG_NOTIFY_DISABLED,'IPP 5.2 ',${IPP_ROOT}/5.2/sharedlib); $(call CFG_HAVE_FALSE ,IPP) else $(call CFG_NOTIFY_ENABLED,'IPP 5.2 ',${IPP_ROOT}/5.2/sharedlib); $(call CFG_SET_ROOT ,IPP) $(call CFG_VAR_ADD ,CDEFINES,-DWITH_IPP_OPTIMIZATION) $(call CFG_VAR_ADD ,CPPDEFINES,-DWITH_IPP_OPTIMIZATION) $(call CFG_HAVE_TRUE ,IPP) $(call CFG_LIST_ADD ,IPP) endif endif # linux ifeq "${OS_TYPE}" "macosx" $(call CFG_HEADER ,IPP) ifeq "$(wildcard $(IPP_ROOT)/Intel_IPP.framework/Libraries/libipp*.dylib)" "" $(call CFG_NOTIFY_DISABLED,'IPP-Framework ',${IPP_ROOT}/Intel_IPP/Libraries); $(call CFG_HAVE_FALSE ,IPP) else $(call CFG_NOTIFY_ENABLED,'IPP-Framework ',${IPP_ROOT}/Intel_IPP/Libraries) $(call CFG_SET_ROOT ,IPP) $(call CFG_VAR_ADD ,CDEFINES,-DWITH_IPP_OPTIMIZATION) $(call CFG_VAR_ADD ,CPPDEFINES,-DWITH_IPP_OPTIMIZATION) $(call CFG_HAVE_TRUE ,IPP) $(call CFG_LIST_ADD ,IPP) endif endif # macosx # QT QTDIR ?= /vol/qt/4.3 $(call CFG_HEADER ,Qt) ifeq "$(shell $(QTDIR)/bin/qmake --version 2>&1 | grep 'Using Qt version 4.')" "" $(call CFG_NOTIFY_DISABLED,'Qt ',${QTDIR}/lib); else $(call CFG_NOTIFY_ENABLED,'Qt ',${QTDIR}/lib); $(call CFG ,QTDIR:=${QTDIR}) $(call CFG_HAVE_TRUE ,QT) $(call CFG_LIST_ADD ,Qt) endif # libJPEG LIBJPEG_ROOT ?= /usr $(call CFG_HEADER ,LIBJPEG) ifeq "$(wildcard ${LIBJPEG_ROOT}/lib/libjpeg.*)" "" $(call CFG_NOTIFY_DISABLED,'libjpeg.so ',${LIBJPEG_ROOT}/lib); $(call CFG_HAVE_FALSE ,LIBJPEG) else $(call CFG_NOTIFY_ENABLED,'libjpeg.so ',${LIBJPEG_ROOT}/lib); $(call CFG_SET_ROOT ,LIBJPEG) $(call CFG_VAR_ADD ,CDEFINES,-DWITH_JPEG_SUPPORT) $(call CFG_VAR_ADD ,CPPDEFINES,-DWITH_JPEG_SUPPORT) $(call CFG_HAVE_TRUE ,LIBJPEG) endif # zlib ZLIB_ROOT ?= /usr $(call CFG_HEADER ,ZLIB) ZLIB_SOMETHING_IS_MISSING=FALSE ifeq "$(wildcard ${ZLIB_ROOT}/lib/libz.*)" "" ZLIB_SOMETHING_IS_MISSING=TRUE endif ifeq "$(wildcard ${ZLIB_ROOT}/include/zlib.h)" "" ZLIB_SOMETHING_IS_MISSING=TRUE endif ifeq "$(ZLIB_SOMETHING_IS_MISSING)" "TRUE" $(call CFG_NOTIFY_DISABLED,'libz.so/zlib.h ','${ZLIB_ROOT}/[lib|include]'); $(call CFG_HAVE_FALSE ,ZLIB) else $(call CFG_NOTIFY_ENABLED,'libz.so/zlib.h ','${ZLIB_ROOT}/[lib|include]'); $(call CFG_SET_ROOT ,ZLIB) $(call CFG_VAR_ADD ,CDEFINES,-DWITH_ZLIB_SUPPORT) $(call CFG_VAR_ADD ,CPPDEFINES,-DWITH_ZLIB_SUPPORT) $(call CFG_HAVE_TRUE ,ZLIB) endif # libdc1394 LIBDC_ROOT ?= /vol/video $(call CFG_HEADER ,LIBDC) ifeq "$(wildcard ${LIBDC_ROOT}/lib/libdc1394.*2*)" "" $(call CFG_NOTIFY_DISABLED,'libdc1394.so.2x ',${LIBDC_ROOT}/lib); $(call CFG_HAVE_FALSE ,LIBDC) else $(call CFG_NOTIFY_ENABLED,'libdc1394.so.2x ',${LIBDC_ROOT}/lib); $(call CFG_SET_ROOT ,LIBDC) $(call CFG_HAVE_TRUE ,LIBDC) $(call CFG_LIST_ADD ,LIBDC) endif # libraw1394 LIBRAW_ROOT ?= /vol/video $(call CFG_HEADER ,LIBRAW) ifeq "$(wildcard ${LIBRAW_ROOT}/lib/libraw1394.so*)" "" $(call CFG_NOTIFY_DISABLED,'libraw1394.so ',${LIBRAW_ROOT}/lib); $(call CFG_HAVE_FALSE ,LIBRAW) else $(call CFG_NOTIFY_ENABLED,'libraw1394.so ',${LIBRAW_ROOT}/lib); $(call CFG_SET_ROOT ,LIBRAW) $(call CFG_HAVE_TRUE ,LIBRAW) endif # SVS SVS_ROOT ?= /vol/vision/SVS/4.2 $(call CFG_HEADER ,SVS) ifeq "$(wildcard ${SVS_ROOT}/bin/libsvs.so)" "" $(call CFG_NOTIFY_DISABLED,'libsvs.so ',${SVS_ROOT}/bin) $(call CFG_HAVE_FALSE ,SVS) else $(call CFG_NOTIFY_ENABLED,'libsvs.so ',${SVS_ROOT}/bin) $(call CFG_SET_ROOT ,SVS) $(call CFG_HAVE_TRUE ,SVS) $(call CFG_LIST_ADD ,SVS) endif # unicap UNICAP_ROOT ?= /vol/video $(call CFG_HEADER ,Unicap) ifeq "$(wildcard ${UNICAP_ROOT}/lib/libunicap*.so)" "" $(call CFG_NOTIFY_DISABLED,'libunicap.so ',${UNICAP_ROOT}/lib) $(call CFG_HAVE_FALSE ,UNICAP) else $(call CFG_NOTIFY_ENABLED,'libunicap.so ',${UNICAP_ROOT}/lib) $(call CFG_SET_ROOT ,UNICAP) $(call CFG_HAVE_TRUE ,UNICAP) $(call CFG_LIST_ADD ,Unicap) endif ##new # ImageMagick++ IMAGEMAGIC_ROOT ?= /usr $(call CFG_HEADER ,ImageMagic++) IMAGEMAGIC_AVAILABLE=TRUE ifeq "$(wildcard ${IMAGEMAGIC_ROOT}/lib/libMagick++*.so)" "" IMAGEMAGIC_AVAILABLE=FALSE endif ifeq "$(wildcard ${IMAGEMAGIC_ROOT}/include/Magick++.h)" "" IMAGEMAGIC_AVAILABLE=FALSE endif ifeq "${IMAGEMAGIC_AVAILABLE}" "FALSE" $(call CFG_NOTIFY_DISABLED,'libMagick++.so ','${IMAGEMAGIC_ROOT}/[lib|include]') $(call CFG_HAVE_FALSE ,IMAGEMAGIC) else $(call CFG_NOTIFY_ENABLED,'libMagick++.so ','${IMAGEMAGIC_ROOT}/[lib|include]') $(call CFG_SET_ROOT ,IMAGEMAGIC) $(call CFG_HAVE_TRUE ,IMAGEMAGIC) $(call CFG_VAR_ADD ,CDEFINES,-DWITH_IMAGEMAGIC_SUPPORT) $(call CFG_VAR_ADD ,CPPDEFINES,-DWITH_IMAGEMAGIC_SUPPORT) $(call CFG_LIST_ADD ,ImageMagic) endif ##/new #XCF XCF_ROOT ?= /vol/xcf $(call CFG_HEADER ,XCF) ifeq "$(wildcard ${XCF_ROOT}/lib/libxcf*.so)" "" $(call CFG_NOTIFY_DISABLED,'libxcf.so ',${XCF_ROOT}/lib) $(call CFG_HAVE_FALSE ,XCF) else $(call CFG_NOTIFY_ENABLED,'libxcf.so ',${XCF_ROOT}/lib) $(call CFG_SET_ROOT ,XCF) $(call CFG_HAVE_TRUE ,XCF) $(call CFG_LIST_ADD ,XCF) endif $(call CFG,'\n# some final misc') $(call CFG,'ifeq "$${CONFIG_READ}" ""\n$$(info +-----------------------------------------------------------------------)\nendif' ); $(call CFG,export CONFIG_LIST) $(call CFG,export CONFIG_READ=TRUE) $(info +-----------------------------------------------------------------------) $(info | created this configuration (stored at ${CFG_FILE})) # #ifeq "${CREATE_CONFIG}" "TRUE" endif # ICL dependency check done export ICL_DEPENDENCIES_CHECKED=TRUE # endif for if config not found endif