summaryrefslogtreecommitdiff
path: root/libdigidoc/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'libdigidoc/CMakeLists.txt')
-rw-r--r--libdigidoc/CMakeLists.txt60
1 files changed, 32 insertions, 28 deletions
diff --git a/libdigidoc/CMakeLists.txt b/libdigidoc/CMakeLists.txt
index eceebfe..87323e4 100644
--- a/libdigidoc/CMakeLists.txt
+++ b/libdigidoc/CMakeLists.txt
@@ -31,21 +31,18 @@ set( PUBLIC_HEADER
)
if( WIN32 )
- add_definitions( -DWITH_SOAPDEFS_H )
+ add_definitions(
+ -DWITH_SOAPDEFS_H
+ -D_CRT_NONSTDC_NO_DEPRECATE
+ -D_CRT_SECURE_NO_DEPRECATE
+ -D_CRT_SECURE_NO_WARNINGS
+ -D_SCL_SECURE_NO_WARNINGS
+ )
list( APPEND libdigidoc_SRCS DigiDocGlobals.c DigiDocCSP.c DigiCrypt.c DlgUnit.c DlgUnitS.c )
set( EXT_LIBRARIES Crypt32 Comctl32 )
endif()
-if( MSVC )
- add_definitions(
- -D_CRT_NONSTDC_NO_DEPRECATE
- -D_CRT_SECURE_NO_DEPRECATE
- -D_CRT_SECURE_NO_WARNINGS
- -D_SCL_SECURE_NO_WARNINGS
- )
-endif()
-
-add_library( digidoc SHARED
+add_library( digidoc ${BUILD_TYPE}
${PUBLIC_HEADER}
${CMAKE_CURRENT_BINARY_DIR}/${DIGIDOC_CONF_NAME}
${libdigidoc_SRCS}
@@ -75,11 +72,11 @@ add_library( digidoc SHARED
)
target_link_libraries( digidoc
- ${CMAKE_DL_LIBS}
- ${LIBXML2_LIBRARIES}
- ${OPENSSL_LIBRARIES}
- ${ZLIB_LIBRARIES}
- ${EXT_LIBRARIES}
+ ${CMAKE_DL_LIBS}
+ ${LIBXML2_LIBRARIES}
+ ${OPENSSL_LIBRARIES}
+ ${ZLIB_LIBRARIES}
+ ${EXT_LIBRARIES}
)
set_target_properties( digidoc PROPERTIES
@@ -93,8 +90,10 @@ set_target_properties( digidoc PROPERTIES
MACOSX_RPATH YES
)
-add_executable(cdigidoc cdigidoc.c cdigidoc.rc)
-target_link_libraries(cdigidoc digidoc)
+if( BUILD_TOOLS )
+ add_executable(cdigidoc cdigidoc.c cdigidoc.rc)
+ target_link_libraries(cdigidoc digidoc)
+endif()
install( TARGETS digidoc
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
@@ -106,7 +105,7 @@ install( TARGETS digidoc
)
if(WIN32)
- install( DIRECTORY ${PROJECT_BINARY_DIR}/libdigidoc/ DESTINATION ${CMAKE_INSTALL_LIBDIR} FILES_MATCHING PATTERN "*.pdb" )
+ install(FILES $<TARGET_PDB_FILE:digidoc> $<TARGET_PDB_FILE:cdigidoc> DESTINATION ${CMAKE_INSTALL_BINDIR} OPTIONAL)
endif()
if( FRAMEWORK )
@@ -119,14 +118,17 @@ if( FRAMEWORK )
add_custom_command( TARGET cdigidoc POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:cdigidoc> $<TARGET_FILE_DIR:digidoc>/Resources )
add_custom_target( codesign DEPENDS cdigidoc
- COMMAND codesign -f -s \"$$SIGNCERT\" $<TARGET_FILE_DIR:digidoc>/Resources/cdigidoc
- COMMAND codesign -f -s \"$$SIGNCERT\" $<TARGET_FILE_DIR:digidoc>/../..
+ COMMAND codesign -f -s ${SIGNCERT}
+ $<TARGET_FILE_DIR:digidoc>/Resources/cdigidoc
+ $<TARGET_FILE_DIR:digidoc>/../..
COMMAND touch $<TARGET_FILE:cdigidoc>
)
- add_custom_target( pkgbuild DEPENDS codesign
- COMMAND make install DESTDIR=install \; pkgbuild
- --root install
- --sign \"$$INSTCERT\"
+ if(INSTCERT)
+ set(PKGEXTRA --sign ${INSTCERT})
+ endif()
+ add_custom_target( pkgbuild DEPENDS cdigidoc
+ COMMAND make install DESTDIR=install
+ COMMAND pkgbuild --root install ${PKGEXTRA}
${CMAKE_BINARY_DIR}/libdigidoc_${VERSION}$ENV{VER_SUFFIX}.pkg
)
add_custom_target( zipdebug DEPENDS cdigidoc
@@ -135,12 +137,14 @@ if( FRAMEWORK )
COMMAND zip -r ${CMAKE_BINARY_DIR}/libdigidoc-dbg_${VERSION}$ENV{VER_SUFFIX}.zip libdigidoc.dSYM
)
else()
- install( TARGETS cdigidoc DESTINATION ${CMAKE_INSTALL_BINDIR} )
configure_file( libdigidoc.pc.cmake libdigidoc.pc @ONLY )
- configure_file( cdigidoc.1.cmake cdigidoc.1 )
install( FILES ${CMAKE_CURRENT_BINARY_DIR}/libdigidoc.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig )
- install( FILES ${CMAKE_CURRENT_BINARY_DIR}/cdigidoc.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1 )
install( FILES ${CERTS} DESTINATION ${CMAKE_INSTALL_FULL_DATADIR}/libdigidoc )
+ if( BUILD_TOOLS )
+ install( TARGETS cdigidoc DESTINATION ${CMAKE_INSTALL_BINDIR} )
+ configure_file( cdigidoc.1.cmake cdigidoc.1 )
+ install( FILES ${CMAKE_CURRENT_BINARY_DIR}/cdigidoc.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1 )
+ endif()
endif()
#install( FILES