Skip to content
Snippets Groups Projects
Commit 3b51dff3 authored by Rashad Kanavath's avatar Rashad Kanavath
Browse files

BUG: add dependency if not system. else no rule to make target error

parent 08340228
No related branches found
No related tags found
No related merge requests found
Showing
with 103 additions and 100 deletions
......@@ -14,10 +14,8 @@ else()
message(STATUS " Using cURL SuperBuild version")
# declare dependencies
set(${proj}_DEPENDENCIES ZLIB)
if(NOT USE_SYSTEM_OPENSSL)
list(APPEND ${proj}_DEPENDENCIES OPENSSL)
endif()
ADDTO_DEPENDENCIES_IF_NOT_SYSTEM(${proj} ZLIB OPENSSL)
INCLUDE_SUPERBUILD_DEPENDENCIES(${${proj}_DEPENDENCIES})
# set proj back to its original value
set(proj CURL)
......
......@@ -14,7 +14,8 @@ else()
message(STATUS " Using GDAL SuperBuild version")
# declare dependencies
set(${proj}_DEPENDENCIES TIFF GEOTIFF PNG JPEG OPENJPEG SQLITE GEOS ZLIB EXPAT LIBKML CURL)
ADDTO_DEPENDENCIES_IF_NOT_SYSTEM(${proj} TIFF GEOTIFF PNG JPEG OPENJPEG SQLITE GEOS ZLIB EXPAT LIBKML)
INCLUDE_SUPERBUILD_DEPENDENCIES(${${proj}_DEPENDENCIES})
# set proj back to its original value
set(proj GDAL)
......@@ -28,13 +29,9 @@ else()
ADD_SUPERBUILD_CONFIGURE_VAR(ZLIB_ROOT --with-libz)
ADD_SUPERBUILD_CONFIGURE_VAR(EXPAT_ROOT --with-expat)
ADD_SUPERBUILD_CONFIGURE_VAR(LIBKML_ROOT --with-libkml)
if(NOT USE_SYSTEM_CURL)
ADD_SUPERBUILD_CONFIGURE_VAR(CURL_ROOT --with-curl "/bin/curl-config")
endif()
if(NOT USE_SYSTEM_GEOS)
ADD_SUPERBUILD_CONFIGURE_VAR(GEOS_ROOT --with-geos "/bin/geos-config")
endif()
ADD_SUPERBUILD_CONFIGURE_VAR(CURL_ROOT --with-curl "/bin/curl-config")
ADD_SUPERBUILD_CONFIGURE_VAR(GEOS_ROOT --with-geos "/bin/geos-config")
#if(USE_SYSTEM_TIFF)
# if(NOT SYSTEM_TIFF_PREFIX STREQUAL "")
# list(APPEND GDAL_SB_CONFIG --with-libtiff=${SYSTEM_TIFF_PREFIX})
......
......@@ -14,7 +14,8 @@ else()
message(STATUS " Using GeoTIFF SuperBuild version")
# declare dependencies
set(${proj}_DEPENDENCIES TIFF PROJ JPEG ZLIB)
ADDTO_DEPENDENCIES_IF_NOT_SYSTEM(${proj} TIFF PROJ JPEG ZLIB)
INCLUDE_SUPERBUILD_DEPENDENCIES(${${proj}_DEPENDENCIES})
# set proj back to its original value
set(proj GEOTIFF)
......
......@@ -107,7 +107,8 @@ else()
endforeach()
# declare dependencies
set(${proj}_DEPENDENCIES TIFF EXPAT PNG ZLIB FFTW)
ADDTO_DEPENDENCIES_IF_NOT_SYSTEM(${proj} TIFF EXPAT PNG ZLIB FFTW)
INCLUDE_SUPERBUILD_DEPENDENCIES(${${proj}_DEPENDENCIES})
# set proj back to its original value
set(proj ITK)
......
......@@ -12,8 +12,11 @@ if(USE_SYSTEM_LIBKML)
else()
SETUP_SUPERBUILD(PROJECT ${proj})
message(STATUS " Using libKML SuperBuild version")
# declare dependencies
set(${proj}_DEPENDENCIES EXPAT ZLIB BOOST)
##set(${proj}_DEPENDENCIES EXPAT ZLIB BOOST)
ADDTO_DEPENDENCIES_IF_NOT_SYSTEM(${proj} EXPAT ZLIB BOOST)
INCLUDE_SUPERBUILD_DEPENDENCIES(${${proj}_DEPENDENCIES})
# set proj back to its original value
set(proj LIBKML)
......
......@@ -14,7 +14,8 @@ else()
message(STATUS " Using OpenCV SuperBuild version")
# declare dependencies
set(${proj}_DEPENDENCIES ZLIB TIFF PNG)
ADDTO_DEPENDENCIES_IF_NOT_SYSTEM(${proj} ZLIB TIFF PNG)
INCLUDE_SUPERBUILD_DEPENDENCIES(${${proj}_DEPENDENCIES})
# set proj back to its original value
set(proj OPENCV)
......
......@@ -15,7 +15,8 @@ else()
message(STATUS " Using OpenJPEG SuperBuild version")
# declare dependencies
set(${proj}_DEPENDENCIES TIFF ZLIB)
ADDTO_DEPENDENCIES_IF_NOT_SYSTEM(${proj} ZLIB TIFF)
INCLUDE_SUPERBUILD_DEPENDENCIES(${${proj}_DEPENDENCIES})
# set proj back to its original value
set(proj OPENJPEG)
......
......@@ -14,7 +14,8 @@ else()
message(STATUS " Using OpenSSL SuperBuild version")
# declare dependencies
set(${proj}_DEPENDENCIES ZLIB)
ADDTO_DEPENDENCIES_IF_NOT_SYSTEM(${proj} ZLIB)
INCLUDE_SUPERBUILD_DEPENDENCIES(${${proj}_DEPENDENCIES})
# set proj back to its original value
set(proj OPENSSL)
......
......@@ -20,7 +20,8 @@ else()
message(STATUS " Using OSSIM SuperBuild version")
# declare dependencies
set(${proj}_DEPENDENCIES TIFF GEOTIFF GEOS JPEG OPENTHREADS)
ADDTO_DEPENDENCIES_IF_NOT_SYSTEM(${proj} TIFF GEOTIFF GEOS JPEG OPENTHREADS)
INCLUDE_SUPERBUILD_DEPENDENCIES(${${proj}_DEPENDENCIES})
# set proj back to its original value
set(proj OSSIM)
......
......@@ -27,13 +27,7 @@ else()
)
endif()
set(${proj}_DEPENDENCIES
GDAL
OSSIM
ITK
TINYXML
BOOST
)
ADDTO_DEPENDENCIES_IF_NOT_SYSTEM(${proj} GDAL OSSIM ITK TINYXML BOOST)
if(OTB_USE_CURL)
list(APPEND ${proj}_DEPENDENCIES CURL)
......
set(proj PNG)
if(NOT __EXTERNAL_${proj}__)
set(__EXTERNAL_${proj}__ 1)
message(STATUS "Setup libpng...")
if(USE_SYSTEM_PNG)
find_package ( PNG )
add_custom_target(${proj})
message(STATUS " Using libpng system version")
else()
SETUP_SUPERBUILD(PROJECT ${proj})
message(STATUS " Using libpng SuperBuild version")
# declare dependencies
set(${proj}_DEPENDENCIES ZLIB)
INCLUDE_SUPERBUILD_DEPENDENCIES(${${proj}_DEPENDENCIES})
# set proj back to its original value
set(proj PNG)
ADD_SUPERBUILD_CMAKE_VAR(ZLIB_INCLUDE_DIR)
ADD_SUPERBUILD_CMAKE_VAR(ZLIB_LIBRARY)
ExternalProject_Add(${proj}
PREFIX ${proj}
URL "http://sourceforge.net/projects/libpng/files/libpng16/1.6.16/lpng1616.zip/download"
URL_MD5 c90c9587c9a5c735327fb3f6900f6b03
BINARY_DIR ${PNG_SB_BUILD_DIR}
INSTALL_DIR ${SB_INSTALL_PREFIX}
set(proj PNG)
if(NOT __EXTERNAL_${proj}__)
set(__EXTERNAL_${proj}__ 1)
message(STATUS "Setup libpng...")
if(USE_SYSTEM_PNG)
find_package ( PNG )
add_custom_target(${proj})
message(STATUS " Using libpng system version")
else()
SETUP_SUPERBUILD(PROJECT ${proj})
message(STATUS " Using libpng SuperBuild version")
# declare dependencies
ADDTO_DEPENDENCIES_IF_NOT_SYSTEM(${proj} ZLIB)
INCLUDE_SUPERBUILD_DEPENDENCIES(${${proj}_DEPENDENCIES})
# set proj back to its original value
set(proj PNG)
ADD_SUPERBUILD_CMAKE_VAR(ZLIB_INCLUDE_DIR)
ADD_SUPERBUILD_CMAKE_VAR(ZLIB_LIBRARY)
ExternalProject_Add(${proj}
PREFIX ${proj}
URL "http://sourceforge.net/projects/libpng/files/libpng16/1.6.16/lpng1616.zip/download"
URL_MD5 c90c9587c9a5c735327fb3f6900f6b03
BINARY_DIR ${PNG_SB_BUILD_DIR}
INSTALL_DIR ${SB_INSTALL_PREFIX}
DOWNLOAD_DIR ${DOWNLOAD_LOCATION}
DEPENDS ${${proj}_DEPENDENCIES}
CMAKE_CACHE_ARGS
-DCMAKE_BUILD_TYPE:STRING=Release
-DCMAKE_INSTALL_PREFIX:PATH=${SB_INSTALL_PREFIX}
-DSKIP_INSTALL_EXECUTABLES:BOOL=OFF
-DPNG_STATIC:BOOL=OFF
-DPNG_SHARED:BOOL=ON
-DPNG_TESTS:BOOL=OFF
-DCMAKE_PREFIX_PATH:STRING=${SB_INSTALL_PREFIX};${CMAKE_PREFIX_PATH}
${PNG_SB_CONFIG}
CMAKE_COMMAND ${SB_CMAKE_COMMAND}
)
#having -DPNGLIB_NAME:STRING=libpng in CMAKE_CACHE_ARGS doesnt work
#libpng library built in the name libpng16.lib and other libs (Qt4)
#reports libpng.lib is not found As Qt is strict on the name of libpng
#below we copy the libpng16.lib to libpng.lib.
#modifying CMakeLists.txt in libpng is another way but then whole
#CMakeLists.txt must be kept in superbuild repository.
if(MSVC)
ExternalProject_Add_Step(${proj} duplicate_pnglib
COMMAND ${CMAKE_COMMAND} -E copy
${SB_INSTALL_PREFIX}/lib/libpng16.lib ${SB_INSTALL_PREFIX}/lib/libpng.lib
DEPENDEES install
)
endif()
set(_SB_${proj}_INCLUDE_DIR ${SB_INSTALL_PREFIX}/include)
if(WIN32)
set(_SB_${proj}_LIBRARY ${SB_INSTALL_PREFIX}/lib/libpng.lib)
elseif(UNIX)
set(_SB_${proj}_LIBRARY ${SB_INSTALL_PREFIX}/lib/libpng${CMAKE_SHARED_LIBRARY_SUFFIX})
endif()
endif()
endif()
DEPENDS ${${proj}_DEPENDENCIES}
CMAKE_CACHE_ARGS
-DCMAKE_BUILD_TYPE:STRING=Release
-DCMAKE_INSTALL_PREFIX:PATH=${SB_INSTALL_PREFIX}
-DSKIP_INSTALL_EXECUTABLES:BOOL=OFF
-DPNG_STATIC:BOOL=OFF
-DPNG_SHARED:BOOL=ON
-DPNG_TESTS:BOOL=OFF
-DCMAKE_PREFIX_PATH:STRING=${SB_INSTALL_PREFIX};${CMAKE_PREFIX_PATH}
${PNG_SB_CONFIG}
CMAKE_COMMAND ${SB_CMAKE_COMMAND}
)
#having -DPNGLIB_NAME:STRING=libpng in CMAKE_CACHE_ARGS doesnt work
#libpng library built in the name libpng16.lib and other libs (Qt4)
#reports libpng.lib is not found As Qt is strict on the name of libpng
#below we copy the libpng16.lib to libpng.lib.
#modifying CMakeLists.txt in libpng is another way but then whole
#CMakeLists.txt must be kept in superbuild repository.
if(MSVC)
ExternalProject_Add_Step(${proj} duplicate_pnglib
COMMAND ${CMAKE_COMMAND} -E copy
${SB_INSTALL_PREFIX}/lib/libpng16.lib ${SB_INSTALL_PREFIX}/lib/libpng.lib
DEPENDEES install
)
endif()
set(_SB_${proj}_INCLUDE_DIR ${SB_INSTALL_PREFIX}/include)
if(WIN32)
set(_SB_${proj}_LIBRARY ${SB_INSTALL_PREFIX}/lib/libpng.lib)
elseif(UNIX)
set(_SB_${proj}_LIBRARY ${SB_INSTALL_PREFIX}/lib/libpng${CMAKE_SHARED_LIBRARY_SUFFIX})
endif()
endif()
endif()
......@@ -21,11 +21,11 @@ else()
endif()
# declare dependencies
set(${proj}_DEPENDENCIES ZLIB TIFF PNG SQLITE)
ADDTO_DEPENDENCIES_IF_NOT_SYSTEM(${proj} ZLIB TIFF PNG SQLITE)
INCLUDE_SUPERBUILD_DEPENDENCIES(${${proj}_DEPENDENCIES})
# set proj back to its original value
set(proj QT4)
#use system libs always for Qt4 as we build them from source or have already in system
set(QT4_SB_CONFIG)
......
......@@ -14,10 +14,8 @@ else()
message(STATUS " Using libtiff SuperBuild version")
# declare dependencies
set(${proj}_DEPENDENCIES ZLIB)
if(MSVC)
list(APPEND ${proj}_DEPENDENCIES JPEG)
endif()
ADDTO_DEPENDENCIES_IF_NOT_SYSTEM(${proj} ZLIB JPEG)
INCLUDE_SUPERBUILD_DEPENDENCIES(${${proj}_DEPENDENCIES})
# set proj back to its original value
set(proj TIFF)
......
......@@ -12,9 +12,7 @@ if(USE_SYSTEM_ZLIB)
else()
SETUP_SUPERBUILD(PROJECT ${proj})
message(STATUS " Using zlib SuperBuild version")
# declare dependencies
INCLUDE_SUPERBUILD_DEPENDENCIES(${${proj}_DEPENDENCIES})
# set proj back to its original value
set(proj ZLIB)
......
......@@ -64,6 +64,15 @@ macro(SETUP_SUPERBUILD)
set(_SB_${NEW_SB_PROJECT}_ROOT ${SB_INSTALL_PREFIX})
endmacro(SETUP_SUPERBUILD)
macro(ADDTO_DEPENDENCIES_IF_NOT_SYSTEM proj)
set(${proj}_DEPENDENCIES)
foreach(dep ${ARGN})
if(NOT USE_SYSTEM_${dep})
list(APPEND ${proj}_DEPENDENCIES ${dep})
endif()
endforeach()
endmacro(ADDTO_DEPENDENCIES_IF_NOT_SYSTEM)
# Macro to include dependencies
macro(INCLUDE_SUPERBUILD_DEPENDENCIES)
foreach(dep ${ARGV})
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment