You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

101 lines
4.6 KiB

diff --git a/CMakeLists.txt b/CMakeLists.txt
index f7b8801d..8281aee1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -596,36 +598,16 @@ endif(GRAPHICSMAGICK_FOUND)
# -DMAGICK=ON|OFF
# -DMAGICKDIR=DIR
if(MAGICK)
- set(CMAKE_PREFIX_PATH ${MAGICKDIR})
- find_package(ImageMagick QUIET COMPONENTS Magick++ MagickWand MagickCore)
- mark_as_advanced(ImageMagick_EXECUTABLE_DIR ImageMagick_Magick++_INCLUDE_DIR ImageMagick_Magick++_LIBRARY
- ImageMagick_MagickCore_INCLUDE_DIR ImageMagick_MagickCore_LIBRARY ImageMagick_MagickWand_INCLUDE_DIR ImageMagick_MagickWand_LIBRARY)
- set(USE_MAGICK ${ImageMagick_FOUND})
- set(HAS_IMAGEMAGICK ${ImageMagick_FOUND})
- if(ImageMagick_FOUND)
- find_program(MAGICKXXCONFIG Magick++-config)
- if(MAGICKXXCONFIG)
- execute_process(COMMAND ${MAGICKXXCONFIG} "--libs" OUTPUT_VARIABLE MAGICKXXCONFIGLIBS OUTPUT_STRIP_TRAILING_WHITESPACE)
- set(LIBRARIES ${LIBRARIES} ${MAGICKXXCONFIGLIBS})
- execute_process(COMMAND ${MAGICKXXCONFIG} "--cxxflags" OUTPUT_VARIABLE MAGICKXXCONFIGCXXFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE)
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${MAGICKXXCONFIGCXXFLAGS}")
- else(MAGICKXXCONFIG)
- message(FATAL_ERROR "ImageMagick is required but was not found (Magick++-config).\n"
- "Use -DMAGICKDIR=DIR to specify the ImageMagick directory.\n"
- "Use -DMAGICK=OFF to not use it.\n"
- "(suitable Debian/Ubuntu package: libmagick++-dev)\n"
- "(suitable Fedora/CentOS package: ImageMagick-c++-devel)")
- endif(MAGICKXXCONFIG)
- set(LIBRARIES ${LIBRARIES} ${ImageMagick_LIBRARIES})
- include_directories(${ImageMagick_INCLUDE_DIRS} ${ImageMagick_MagickCore_INCLUDE_DIRS})
- set(MAGICK_LIBRARIES ${ImageMagick_LIBRARIES})
- else(ImageMagick_FOUND)
- message(FATAL_ERROR "ImageMagick is required but was not found.\n"
- "Use -DMAGICKDIR=DIR to specify the ImageMagick directory.\n"
- "Use -DMAGICK=OFF to not use it.\n"
- "(suitable Debian/Ubuntu package: libmagick++-dev)\n"
- "(suitable Fedora/CentOS package: ImageMagick-c++-devel)")
- endif(ImageMagick_FOUND)
+ find_package(PkgConfig REQUIRED)
+ pkg_check_modules(Magick++ REQUIRED Magick++)
+ pkg_check_modules(MagickWand REQUIRED MagickWand)
+ pkg_check_modules(MagickCore REQUIRED MagickCore)
+
+ set(MAGICK_LIBRARIES ${Magick++_LIBRARIES} ${MagickWand_LIBRARIES} ${MagickCore_LIBRARIES})
+ set(LIBRARIES ${LIBRARIES} ${MAGICK_LIBRARIES})
+ include_directories(${Magick++_INCLUDE_DIRS})
+ include_directories(${MagickWand_INCLUDE_DIRS})
+ include_directories(${MagickCore_INCLUDE_DIRS})
endif(MAGICK)
# libtiff
@@ -994,20 +976,8 @@ endif(GLPK)
# -DSHAPELIB=ON|OFF
# -DSHAPELIBDIR=DIR
if(SHAPELIB)
- set(CMAKE_PREFIX_PATH ${SHAPELIBDIR})
- find_package(SHAPELIB QUIET)
- set(USE_SHAPELIB ${SHAPELIB_FOUND})
- if(SHAPELIB_FOUND)
- set(LIBRARIES ${LIBRARIES} ${SHAPELIB_LIBRARIES})
- include_directories(${SHAPELIB_INCLUDE_DIR})
- else(SHAPELIB_FOUND)
- message(FATAL_ERROR "SHAPELIB (http://shapelib.maptools.org/) is required but was not found.\n"
- "Use -DSHAPELIBDIR=DIR to specify the SHAPELIB-devel directory tree.\n"
- "Use -DSHAPELIB=OFF to not use it.\n"
- "shapelib is often in package libshp-devel.\n"
- "(suitable Debian/Ubuntu package: libshp-dev)\n"
- "(suitable Fedora/CentOS package: shapelib-devel)\n")
- endif(SHAPELIB_FOUND)
+ find_package(PkgConfig REQUIRED)
+ pkg_check_modules(shapelib REQUIRED shapelib)
endif(SHAPELIB)
# EXPAT for IDLffXMLSAX and IDLffXMLDOM
# -DEXPAT=ON|OFF
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 968ead9d..b0623de4 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -200,9 +200,9 @@ add_subdirectory(plplotdriver)
#whereami
add_library(whereami STATIC ${CMAKE_SOURCE_DIR}/src/whereami/src/whereami.c)
-add_subdirectory(antlr)
+find_library(ANTLR_LIBRARY NAMES antlr)
-include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/src/antlr ${CMAKE_SOURCE_DIR}/src/plplotdriver ${CMAKE_SOURCE_DIR}/src/whereami/src ${CMAKE_BINARY_DIR})
+include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/src/plplotdriver ${CMAKE_SOURCE_DIR}/src/whereami/src ${CMAKE_BINARY_DIR})
link_directories(${LINK_DIRECTORIES})
if(PYTHON_MODULE) #GDL.so
@@ -220,8 +220,7 @@ if(USE_OPENMP)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
endif(USE_OPENMP)
-add_dependencies(gdl antlr whereami) # be sure that antlr is built before gdl
-target_link_libraries(gdl antlr whereami) # link antlr against gdl
+target_link_libraries(gdl ${ANTLR_LIBRARY} whereami) # link antlr against gdl
if (MINGW)
target_link_libraries(gdl ws2_32)
endif (MINGW)