Fix. Issue: #856. Refactoring msvc/CMake code. Thanks to Daniel for this patch.

v0.27.3
Robin Mills 13 years ago
parent 83c25ef274
commit 4863c239c2

@ -72,25 +72,15 @@ if( MSVC )
# link dependent libraries # link dependent libraries
if ( NOT EXPAT_LIBRARY ) if ( NOT EXPAT_LIBRARY )
if (OUT_OF_SOURCE) set(EXPAT_LIBRARY ${CMAKE_SOURCE_DIR}/../${E}/$(ConfigurationName)/expat)
set(EXPAT_LIBRARY ../../../${E}/$(ConfigurationName)/expat) set(EXPAT_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/../${E}/lib)
set(EXPAT_INCLUDE_DIR ../${E}/lib)
else()
set(EXPAT_LIBRARY ../../${E}/$(ConfigurationName)/expat)
set(EXPAT_INCLUDE_DIR ../${E}/lib)
endif()
include_directories( ${EXPAT_INCLUDE_DIR} msvc64\\include src\\include) include_directories( ${EXPAT_INCLUDE_DIR} msvc64\\include src\\include)
endif() endif()
FIND_PACKAGE(ZLIB QUIET) FIND_PACKAGE(ZLIB QUIET)
if ( NOT ZLIB_FOUND ) if ( NOT ZLIB_FOUND )
if (OUT_OF_SOURCE) set(ZLIB_LIBRARY ${CMAKE_SOURCE_DIR}/../${Z}/$(ConfigurationName)/zlib)
set(ZLIB_LIBRARY ../../../${Z}/$(ConfigurationName)/zlib ) set(ZLIB_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/../${Z})
set(ZLIB_INCLUDE_DIR ../${Z})
else()
set(ZLIB_LIBRARY ../../${Z}/$(ConfigurationName)/zlib)
set(ZLIB_INCLUDE_DIR ../${Z})
endif()
endif() endif()
include_directories(${ZLIB_INCLUDE_DIR}) include_directories(${ZLIB_INCLUDE_DIR})

@ -14,6 +14,8 @@ if (MSVC)
# link_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../zlib-1.2.7/$(ConfigurationName)) # link_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../zlib-1.2.7/$(ConfigurationName))
endif() endif()
endif() endif()
include_directories("${CMAKE_SOURCE_DIR}/include")
SET( SAMPLES addmoddel.cpp SET( SAMPLES addmoddel.cpp
convert-test.cpp convert-test.cpp

@ -256,29 +256,20 @@ ENDIF()
## ##
# copy zlib and expat dlls to output directory (TODO: rewrite for NMake) # copy zlib and expat dlls to output directory (TODO: rewrite for NMake)
IF ( MSVC AND EXIV2_ENABLE_SHARED ) IF ( MSVC AND EXIV2_ENABLE_SHARED )
if (OUT_OF_SOURCE) get_filename_component(EXPAT_LIBRARY_DIR ${EXPAT_LIBRARY} PATH)
ADD_CUSTOM_COMMAND( string(REGEX REPLACE "/" "\\\\" EXPAT_LIBRARY_DIR ${EXPAT_LIBRARY_DIR})
TARGET exiv2lib get_filename_component(ZLIB_LIBRARY_DIR ${ZLIB_LIBRARY} PATH)
POST_BUILD string(REGEX REPLACE "/" "\\\\" ZLIB_LIBRARY_DIR ${ZLIB_LIBRARY_DIR})
COMMAND copy /y $(SolutionDir)..\\..\\${E}\\$(ConfigurationName)\\*.dll $(SolutionDir)\\bin\\${P_DIR}\\${T_DIR}\\$(ConfigurationName) ADD_CUSTOM_COMMAND(
) TARGET exiv2lib
ADD_CUSTOM_COMMAND( POST_BUILD
TARGET exiv2lib COMMAND copy /y ${EXPAT_LIBRARY_DIR}\\*.dll $(SolutionDir)\\bin\\${P_DIR}\\${T_DIR}\\$(ConfigurationName)
POST_BUILD )
COMMAND copy /y $(SolutionDir)..\\..\\${Z}\\$(ConfigurationName)\\*.dll $(SolutionDir)\\bin\\${P_DIR}\\${T_DIR}\\$(ConfigurationName) ADD_CUSTOM_COMMAND(
) TARGET exiv2lib
else() POST_BUILD
ADD_CUSTOM_COMMAND( COMMAND copy /y ${ZLIB_LIBRARY_DIR}\\*.dll $(SolutionDir)\\bin\\${P_DIR}\\${T_DIR}\\$(ConfigurationName)
TARGET exiv2lib )
POST_BUILD
COMMAND copy /y $(SolutionDir)..\\${E}\\$(ConfigurationName)\\*.dll $(SolutionDir)\\bin\\${P_DIR}\\${T_DIR}\\$(ConfigurationName)
)
ADD_CUSTOM_COMMAND(
TARGET exiv2lib
POST_BUILD
COMMAND copy /y $(SolutionDir)..\\${Z}\\$(ConfigurationName)\\*.dll $(SolutionDir)\\bin\\${P_DIR}\\${T_DIR}\\$(ConfigurationName)
)
endif()
ENDIF() ENDIF()
INSTALL( TARGETS exiv2lib ${INSTALL_TARGET_STANDARD_ARGS} ) INSTALL( TARGETS exiv2lib ${INSTALL_TARGET_STANDARD_ARGS} )

Loading…
Cancel
Save