PTdecode/CImg-1.3.0/resources/CMakeLists.txt

changeset 5
1204ebf9340d
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/PTdecode/CImg-1.3.0/resources/CMakeLists.txt	Mon Aug 03 14:09:20 2009 +0100
     1.3 @@ -0,0 +1,323 @@
     1.4 +#
     1.5 +#  File        : CMakeLists.txt
     1.6 +#                ( Cmake configuration file )
     1.7 +#
     1.8 +#  Description : CMake can use this to generate a working Makefile.
     1.9 +#                This file is a part of the CImg Library project.
    1.10 +#                ( http://cimg.sourceforge.net )
    1.11 +#
    1.12 +#  Copyright   : Baptiste Mougel
    1.13 +#                ( http://www.mougel.org )
    1.14 +#                David Tschumperle
    1.15 +#                ( http://www.greyc.ensicaen.fr/~dtschump/ )
    1.16 +#
    1.17 +#  License     : CeCILL v2.0
    1.18 +#                ( http://www.cecill.info/licences/Licence_CeCILL_V2-en.html )
    1.19 +#
    1.20 +#  This software is governed by the CeCILL  license under French law and
    1.21 +#  abiding by the rules of distribution of free software.  You can  use,
    1.22 +#  modify and/ or redistribute the software under the terms of the CeCILL
    1.23 +#  license as circulated by CEA, CNRS and INRIA at the following URL
    1.24 +#  "http://www.cecill.info".
    1.25 +#
    1.26 +#  As a counterpart to the access to the source code and  rights to copy,
    1.27 +#  modify and redistribute granted by the license, users are provided only
    1.28 +#  with a limited warranty  and the software's author,  the holder of the
    1.29 +#  economic rights,  and the successive licensors  have only  limited
    1.30 +#  liability.
    1.31 +#
    1.32 +#  In this respect, the user's attention is drawn to the risks associated
    1.33 +#  with loading,  using,  modifying and/or developing or reproducing the
    1.34 +#  software by the user in light of its specific status of free software,
    1.35 +#  that may mean  that it is complicated to manipulate,  and  that  also
    1.36 +#  therefore means  that it is reserved for developers  and  experienced
    1.37 +#  professionals having in-depth computer knowledge. Users are therefore
    1.38 +#  encouraged to load and test the software's suitability as regards their
    1.39 +#  requirements in conditions enabling the security of their systems and/or
    1.40 +#  data to be ensured and,  more generally, to use and operate it in the
    1.41 +#  same conditions as regards security.
    1.42 +#
    1.43 +#  The fact that you are presently reading this means that you have had
    1.44 +#  knowledge of the CeCILL license and that you accept its terms.
    1.45 +#
    1.46 +
    1.47 +#-------------------
    1.48 +# IMPORTANT NOTICE : This file is intended to be copied in the 'examples/' directory before use.
    1.49 +#-------------------
    1.50 +project(CIMG)
    1.51 +
    1.52 +IF(UNIX)
    1.53 +   CMAKE_MINIMUM_REQUIRED (VERSION 2.4.0 FATAL_ERROR)
    1.54 +   MESSAGE(STATUS "Compilation mode : UNIX")
    1.55 +ELSE(UNIX)
    1.56 +  IF(WIN32)
    1.57 +    CMAKE_MINIMUM_REQUIRED(VERSION 2.4.6 FATAL_ERROR)
    1.58 +    MESSAGE(STATUS "Compilation mode : Win32")
    1.59 +  ELSE(WIN32)
    1.60 +    IF(APPLE)
    1.61 +       CMAKE_MINIMUM_REQUIRED(VERSION 2.6.0 FATAL_ERROR)
    1.62 +       IF(${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} EQUAL 4 AND ${CMAKE_PATCH_VERSION} LESS 7)
    1.63 +         MESSAGE("Warning: A critical CMake bug exists in 2.4.6 and below. Trying to build Universal Binaries will result in a compile error that seems unrelated. Either avoid building Universal Binaries by changing the CMAKE_OSX_ARCHITECTURES field to list only your architecture, or upgrade to the current CVS version of CMake or a newer stable version if it exists.")
    1.64 +       ENDIF(${CMAKE_MAJOR_VERSION} EQUAL 2 AND ${CMAKE_MINOR_VERSION} EQUAL 4 AND ${CMAKE_PATCH_VERSION} LESS 7)
    1.65 +       MESSAGE(STATUS "Compilation mode : MAC OSX")
    1.66 +    ELSE(APPLE)
    1.67 +        CMAKE_MINIMUM_REQUIRED(VERSION 2.4.0 FATAL_ERROR)
    1.68 +    ENDIF(APPLE)
    1.69 +  ENDIF(WIN32)
    1.70 +ENDIF(UNIX)
    1.71 +
    1.72 +#-----------------------------------------------------------------------------
    1.73 +# CImg version number.  An even minor number corresponds to releases.
    1.74 +SET(CIMG_VERSION "1.3.0")
    1.75 +SET(CIMG_H "CImg.h")
    1.76 +
    1.77 +MESSAGE(STATUS "CImg version : ${CIMG_VERSION}")
    1.78 +
    1.79 +#-----------------------------------------------------------------------------
    1.80 +# Output directories.
    1.81 +INCLUDE_DIRECTORIES (
    1.82 +  ${CIMG_BINARY_DIR}
    1.83 +  ${CIMG_SOURCE_DIR}
    1.84 +)
    1.85 +
    1.86 +IF(NOT LIBRARY_OUTPUT_PATH)
    1.87 +   SET (LIBRARY_OUTPUT_PATH ${CIMG_BINARY_DIR}/ CACHE INTERNAL "Single output directory for building all libraries.")
    1.88 +ENDIF(NOT LIBRARY_OUTPUT_PATH)
    1.89 +IF(NOT EXECUTABLE_OUTPUT_PATH)
    1.90 +   SET (EXECUTABLE_OUTPUT_PATH ${CIMG_BINARY_DIR}/ CACHE INTERNAL "Single output directory for building all executables.")
    1.91 +ENDIF(NOT EXECUTABLE_OUTPUT_PATH)
    1.92 +
    1.93 +#MARK_AS_ADVANCED(LIBRARY_OUTPUT_PATH EXECUTABLE_OUTPUT_PATH)
    1.94 +
    1.95 +#-----------------------------------------------------------------------------
    1.96 +# Compilation.
    1.97 +
    1.98 +SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -W -ansi -pedantic")
    1.99 +SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -W -ansi -pedantic")
   1.100 +SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lm -lpthread")
   1.101 +SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lm -lpthread")
   1.102 +SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lm -lpthread")
   1.103 +
   1.104 +OPTION(BUILD_EXAMPLES "Build the Examples directory." ON)
   1.105 +IF (BUILD_EXAMPLES)
   1.106 +	ADD_EXECUTABLE(CImg_demo CImg_demo.cpp)
   1.107 +	ADD_EXECUTABLE(captcha captcha.cpp)
   1.108 +	ADD_EXECUTABLE(curve_editor curve_editor.cpp)
   1.109 +	ADD_EXECUTABLE(dtmri_view dtmri_view.cpp)
   1.110 +	ADD_EXECUTABLE(edge_explorer edge_explorer.cpp)
   1.111 +	ADD_EXECUTABLE(fade_images fade_images.cpp)
   1.112 +	ADD_EXECUTABLE(generate_loop_macros generate_loop_macros.cpp)
   1.113 +        ADD_EXECUTABLE(gmic gmic.cpp)
   1.114 +	ADD_EXECUTABLE(greycstoration greycstoration.cpp)
   1.115 +	ADD_EXECUTABLE(hough_transform hough_transform.cpp)
   1.116 +	ADD_EXECUTABLE(image2ascii image2ascii.cpp)
   1.117 +	ADD_EXECUTABLE(image_registration image_registration.cpp)
   1.118 +	ADD_EXECUTABLE(image_surface image_surface.cpp)
   1.119 +	ADD_EXECUTABLE(jawbreaker jawbreaker.cpp)
   1.120 +	ADD_EXECUTABLE(mcf_levelsets3d mcf_levelsets3d.cpp)
   1.121 +	ADD_EXECUTABLE(mcf_levelsets mcf_levelsets.cpp)
   1.122 +	ADD_EXECUTABLE(odykill odykill.cpp)
   1.123 +	ADD_EXECUTABLE(pde_heatflow2d pde_heatflow2d.cpp)
   1.124 +	ADD_EXECUTABLE(pde_TschumperleDeriche2d pde_TschumperleDeriche2d.cpp)
   1.125 +	ADD_EXECUTABLE(radon_transform radon_transform.cpp)
   1.126 +	ADD_EXECUTABLE(scene3d scene3d.cpp)
   1.127 +	ADD_EXECUTABLE(tetris tetris.cpp)
   1.128 +	ADD_EXECUTABLE(tron tron.cpp)
   1.129 +	ADD_EXECUTABLE(tutorial tutorial.cpp)
   1.130 +	ADD_EXECUTABLE(wavelet_atrous wavelet_atrous.cpp)
   1.131 +	ADD_EXECUTABLE(use_draw_gradient use_draw_gradient.cpp)
   1.132 +	ADD_EXECUTABLE(use_greycstoration use_greycstoration.cpp)
   1.133 +	ADD_EXECUTABLE(use_nlmeans use_nlmeans.cpp)
   1.134 +	ADD_EXECUTABLE(use_RGBclass use_RGBclass.cpp)
   1.135 +	ADD_EXECUTABLE(use_skeleton use_skeleton.cpp)
   1.136 +ENDIF (BUILD_EXAMPLES)
   1.137 +
   1.138 +# Flags to enable code debugging.
   1.139 +OPTION(CIMG_DEBUG_FLAGS "Flags to enable code debugging." OFF)
   1.140 +IF (CIMG_DEBUG_FLAGS)
   1.141 +  ADD_DEFINITIONS(-Dcimg_debug=3)
   1.142 +  SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g")
   1.143 +  SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g")
   1.144 +ENDIF(CIMG_DEBUG_FLAGS)
   1.145 +
   1.146 +# Flags to enable color output messages.
   1.147 +# (requires a VT100 compatible terminal)
   1.148 +OPTION(CIMG_VT100_FLAGS "Flags to enable color output messages. (requires a VT100 compatible terminal)" ON)
   1.149 +IF (CIMG_VT100_FLAGS)
   1.150 +  ADD_DEFINITIONS(-Dcimg_use_vt100)
   1.151 +ENDIF(CIMG_VT100_FLAGS)
   1.152 +
   1.153 +# Flags to enable code optimization by the compiler.
   1.154 +OPTION(CIMG_OPT_FLAGS "Flags to enable code optimization by the compiler." ON)
   1.155 +IF (CIMG_OPT_FLAGS)
   1.156 +   SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O3 -ffast-math")
   1.157 +   SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -ffast-math")
   1.158 +ENDIF(CIMG_OPT_FLAGS)
   1.159 +
   1.160 +# Flags to enable OpenMP support.
   1.161 +OPTION(CIMG_OPENMP_FLAGS "Flags to enable code optimization by the compiler." OFF)
   1.162 +IF (CIMG_OPENMP_FLAGS)
   1.163 +   SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}  -fopenmp")
   1.164 +   SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}  -fopenmp")
   1.165 +   ADD_DEFINITIONS(-Dcimg_use_openmp)
   1.166 +ENDIF(CIMG_OPENMP_FLAGS)
   1.167 +
   1.168 +# Flags to enable the use of the X11 library.
   1.169 +# (X11 is used by CImg to handle display windows)
   1.170 +# !!! For 64bits systems : replace -L$(X11PATH)/lib by -L$(X11PATH)/lib64 !!!
   1.171 +OPTION(CIMG_X11_FLAGS "Flags to enable fast image display, using the XSHM library." ON)
   1.172 +IF (CIMG_X11_FLAGS)
   1.173 +
   1.174 +  FIND_PATH(X11_PATH /bin/xterm /usr/X11R6)
   1.175 +
   1.176 +  OPTION(CIMG_SYSTEMS_64BITS "For 64bits systems." OFF)
   1.177 +  IF (CIMG_SYSTEMS_64BITS)
   1.178 +    INCLUDE_DIRECTORIES(${X11_PATH}/include)
   1.179 +    LINK_DIRECTORIES(${X11_PATH}/lib64)
   1.180 +    SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -L${X11_PATH}/lib64 -lX11")
   1.181 +    SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -L${X11_PATH}/lib64 -lX11")
   1.182 +    SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -L${X11_PATH}/lib64 -lX11")
   1.183 +  ELSE (CIMG_SYSTEMS_64BITS)
   1.184 +    INCLUDE_DIRECTORIES(${X11_PATH}/include)
   1.185 +    LINK_DIRECTORIES(${X11_PATH}/lib)
   1.186 +    SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -L${X11_PATH}/lib -lX11")
   1.187 +    SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -L${X11_PATH}/lib -lX11")
   1.188 +    SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -L${X11_PATH}/lib -lX11")
   1.189 +  ENDIF(CIMG_SYSTEMS_64BITS)
   1.190 +
   1.191 +  # Flags to enable fast image display, using the XSHM library.
   1.192 +  # (CIMG_X11_FLAGS must be defined also)
   1.193 +  OPTION(CIMG_XSHM_FLAGS "Flags to enable fast image display, using the XSHM library." ON)
   1.194 +  IF (CIMG_XSHM_FLAGS)
   1.195 +    ADD_DEFINITIONS(-Dcimg_use_xshm)
   1.196 +    SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lXext")
   1.197 +    SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lXext")
   1.198 +    SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lXext")
   1.199 +  ENDIF(CIMG_XSHM_FLAGS)
   1.200 +
   1.201 +  # Flags to enable screen mode switching, using the XRandr library.
   1.202 +  # (CIMG_X11_FLAGS must be defined also)
   1.203 +  OPTION(CIMG_XRANDR_FLAGS "Flags to enable screen mode switching, using the XRandr library." ON)
   1.204 +  IF (CIMG_XRANDR_FLAGS)
   1.205 +    ADD_DEFINITIONS(-Dcimg_use_xrandr)
   1.206 +    SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lXrandr")
   1.207 +    SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lXrandr")
   1.208 +    SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lXrandr")
   1.209 +  ENDIF(CIMG_XRANDR_FLAGS)
   1.210 +
   1.211 +  # Flags to compile on Solaris
   1.212 +  #CIMG_SOLARIS_FLAGS = -R$(X11PATH)/lib -lrt -lnsl -lsocket
   1.213 +  OPTION(CIMG_SOLARIS_FLAGS "Flags to compile on Solaris." OFF)
   1.214 +  IF (CIMG_SOLARIS_FLAGS)
   1.215 +    SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -R$(X11_PATH)/lib -lrt -lnsl -lsocket")
   1.216 +    SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -R$(X11_PATH)/lib -lrt -lnsl -lsocket")
   1.217 +    SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -R$(X11_PATH)/lib -lrt -lnsl -lsocket")
   1.218 +  ENDIF(CIMG_SOLARIS_FLAGS)
   1.219 +
   1.220 +ENDIF(CIMG_X11_FLAGS)
   1.221 +
   1.222 +
   1.223 +# Flags to enable native support for PNG image files, using the PNG library.
   1.224 +#CIMG_PNG_FLAGS = -Dcimg_use_png -lpng -lz
   1.225 +OPTION(CIMG_PNG_FLAGS "Flags to enable native support for PNG image files, using the PNG library." OFF)
   1.226 +IF (CIMG_PNG_FLAGS)
   1.227 +  ADD_DEFINITIONS(-Dcimg_use_png)
   1.228 +  SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lpng -lz")
   1.229 +  SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lpng -lz")
   1.230 +  SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lpng -lz")
   1.231 +ENDIF(CIMG_PNG_FLAGS)
   1.232 +
   1.233 +# Flags to enable native support for JPEG image files, using the JPEG library.
   1.234 +#CIMG_JPEG_FLAGS = -Dcimg_use_jpeg -ljpeg
   1.235 +OPTION(CIMG_JPEG_FLAGS "Flags to enable native support for JPEG image files, using the JPEG library." OFF)
   1.236 +IF (CIMG_JPEG_FLAGS)
   1.237 +  ADD_DEFINITIONS(-Dcimg_use_jpeg)
   1.238 +  SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -ljpeg")
   1.239 +  SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -ljpeg")
   1.240 +  SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -ljpeg")
   1.241 +ENDIF(CIMG_JPEG_FLAGS)
   1.242 +
   1.243 +# Flags to enable native support for TIFF image files, using the TIFF library.
   1.244 +#CIMG_TIFF_FLAGS = -Dcimg_use_tiff -ltiff
   1.245 +OPTION(CIMG_TIFF_FLAGS "Flags to enable native support for TIFF image files, using the TIFF library." OFF)
   1.246 +IF (CIMG_TIFF_FLAGS)
   1.247 +  ADD_DEFINITIONS(-Dcimg_use_tiff)
   1.248 +  SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -ltiff")
   1.249 +  SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -ltiff")
   1.250 +  SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -ltiff")
   1.251 +ENDIF(CIMG_TIFF_FLAGS)
   1.252 +
   1.253 +# Flags to enable native support for various video files, using the FFMPEG library.
   1.254 +#CIMG_FFMPEG_FLAGS = -Dcimg_use_ffmpeg -lavcodec -lavformat
   1.255 +OPTION(CIMG_FFMPEG_FLAGS "Flags to enable native support for various video files, using the FFMPEG library." OFF)
   1.256 +IF (CIMG_FFMPEG_FLAGS)
   1.257 +  ADD_DEFINITIONS(-Dcimg_use_ffmpeg)
   1.258 +  SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lavcodec -lavformat")
   1.259 +  SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lavcodec -lavformat")
   1.260 +  SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lavcodec -lavformat")
   1.261 +ENDIF(CIMG_FFMPEG_FLAGS)
   1.262 +
   1.263 +# Flags to enable native support for compressed .cimgz files, using the Zlib library.
   1.264 +#CIMG_ZLIB_FLAGS = -Dcimg_use_zlib -lz
   1.265 +OPTION(CIMG_ZLIB_FLAGS "Flags to enable native support for compressed .cimgz files, using the Zlib library." OFF)
   1.266 +IF (CIMG_ZLIB_FLAGS)
   1.267 +  ADD_DEFINITIONS(-Dcimg_use_zlib)
   1.268 +  SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lz")
   1.269 +  SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lz")
   1.270 +  SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lz")
   1.271 +ENDIF(CIMG_ZLIB_FLAGS)
   1.272 +
   1.273 +# Flags to enable native support of most classical image file formats, using the Magick++ library.
   1.274 +#CIMG_MAGICK_FLAGS = -Dcimg_use_magick `Magick++-config --cppflags` `Magick++-config --cxxflags` `Magick++-config --ldflags` `Magick++-config --libs`
   1.275 +OPTION(CIMG_MAGICK_FLAGS "Flags to enable native support of most classical image file formats, using the Magick++ library." OFF)
   1.276 +IF (CIMG_MAGICK_FLAGS)
   1.277 +  ADD_DEFINITIONS(-Dcimg_use_magick)
   1.278 +  SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} `Magick++-config --cppflags` `Magick++-config --cxxflags`")
   1.279 +  SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} `Magick++-config --cppflags` `Magick++-config --cxxflags`")
   1.280 +  SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} `Magick++-config --ldflags` `Magick++-config --libs`")
   1.281 +  SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} `Magick++-config --ldflags` `Magick++-config --libs`")
   1.282 +  SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} `Magick++-config --ldflags` `Magick++-config --libs`")
   1.283 +ENDIF(CIMG_MAGICK_FLAGS)
   1.284 +
   1.285 +# Flags to enable faster Discrete Fourier Transform computation, using the FFTW3 library
   1.286 +#CIMG_FFTW3_FLAGS = -Dcimg_use_fftw3 -lfftw3
   1.287 +OPTION(CIMG_FFTW3_FLAGS "Flags to enable faster Discrete Fourier Transform computation, using the FFTW3 library." OFF)
   1.288 +IF (CIMG_FFTW3_FLAGS)
   1.289 +  ADD_DEFINITIONS(-Dcimg_use_fftw3)
   1.290 +  SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lfftw3")
   1.291 +  SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lfftw3")
   1.292 +  SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lfftw3")
   1.293 +ENDIF(CIMG_FFTW3_FLAGS)
   1.294 +
   1.295 +# Flags to enable the use of LAPACK routines for matrix computation
   1.296 +#CIMG_LAPACK_FLAGS = -Dcimg_use_lapack -lblas -lg2c -llapack
   1.297 +OPTION(CIMG_LAPACK_FLAGS "Flags to enable the use of LAPACK routines for matrix computation" OFF)
   1.298 +IF (CIMG_LAPACK_FLAGS)
   1.299 +  ADD_DEFINITIONS(-Dcimg_use_lapack)
   1.300 +  SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lblas -lg2c -llapack")
   1.301 +  SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lblas -lg2c -llapack")
   1.302 +  SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lblas -lg2c -llapack")
   1.303 +ENDIF(CIMG_LAPACK_FLAGS)
   1.304 +
   1.305 +# Flags to enable the use of the Board library
   1.306 +#CIMG_BOARD_FLAGS = -Dcimg_use_board -I/usr/include/board -lboard
   1.307 +OPTION(CIMG_BOARD_FLAGS "Flags to enable the use of the Board library." OFF)
   1.308 +IF (CIMG_BOARD_FLAGS)
   1.309 +  ADD_DEFINITIONS(-Dcimg_use_board)
   1.310 +  INCLUDE_DIRECTORIES(/usr/include/board)
   1.311 +  SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lboard")
   1.312 +  SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -lboard")
   1.313 +  SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -lboard")
   1.314 +ENDIF(CIMG_BOARD_FLAGS)
   1.315 +
   1.316 +# Flags to compile on MacOSX with Carbon-based display support
   1.317 +#CIMG_CARBON_FLAGS = -Dcimg_display=3 -framework Carbon
   1.318 +IF(APPLE)
   1.319 +  OPTION(CIMG_CARBON_FLAGS "Flags to compile on MacOSX with Carbon-based display support." ON)
   1.320 +  IF (CIMG_CARBON_FLAGS)
   1.321 +    ADD_DEFINITIONS(-Dcimg_display=3)
   1.322 +    SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -framework Carbon")
   1.323 +    SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -framework Carbon")
   1.324 +    SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -framework Carbon")
   1.325 +  ENDIF(CIMG_CARBON_FLAGS)
   1.326 +ENDIF(APPLE)