Attention une mise à jour du service Gitlab va être effectuée le mardi 30 novembre entre 17h30 et 18h00. Cette mise à jour va générer une interruption du service dont nous ne maîtrisons pas complètement la durée mais qui ne devrait pas excéder quelques minutes. Cette mise à jour intermédiaire en version 14.0.12 nous permettra de rapidement pouvoir mettre à votre disposition une version plus récente.

CMakeLists.txt 2.82 KB
Newer Older
1 2
## Version: $Id$
##
3
######################################################################
4 5 6 7 8
##
### Commentary:
##
######################################################################
##
9
### Change Log:
10
##
11
######################################################################
12 13
##
### Code:
14 15 16 17

project(dtkLog)

## #################################################################
Julien Wintz's avatar
Julien Wintz committed
18
## Sources
19 20 21
## #################################################################

set(${PROJECT_NAME}_HEADERS
NICLAUSSE Nicolas's avatar
NICLAUSSE Nicolas committed
22
  dtkLog
Julien Wintz's avatar
Julien Wintz committed
23 24 25 26 27
  dtkLog.h
  dtkLogger.h
  dtkLogger_p.h
  dtkLogEngine.h
  dtkLogDestination.h)
28 29

set(${PROJECT_NAME}_SOURCES
Julien Wintz's avatar
Julien Wintz committed
30 31 32 33
  dtkLog.cpp
  dtkLogger.cpp
  dtkLogEngine.cpp
  dtkLogDestination.cpp)
34 35 36 37 38

## #################################################################
## Build rules
## #################################################################

39
add_library(${PROJECT_NAME} SHARED
40
  ${${PROJECT_NAME}_SOURCES}
Julien Wintz's avatar
Julien Wintz committed
41 42 43 44 45 46 47 48
  ${${PROJECT_NAME}_HEADERS}
  ${${PROJECT_NAME}_SOURCES_MOC})

qt5_use_modules(${PROJECT_NAME} Core)

## #################################################################
## Target properties
## #################################################################
49

50 51
set_target_properties(${PROJECT_NAME} PROPERTIES MACOSX_RPATH 0)
set_target_properties(${PROJECT_NAME} PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
Julien Wintz's avatar
Julien Wintz committed
52
set_target_properties(${PROJECT_NAME} PROPERTIES INSTALL_RPATH    "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
53

54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
## #################################################################
## Export header file
## #################################################################

add_compiler_export_flags()

generate_export_header(${PROJECT_NAME}
  EXPORT_FILE_NAME "${PROJECT_NAME}Export.h")

add_custom_command(TARGET ${PROJECT_NAME} PRE_BUILD
  COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}"
  COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}Export")

set(${PROJECT_NAME}_HEADERS
  ${${PROJECT_NAME}_HEADERS}
 "${CMAKE_BINARY_DIR}/${PROJECT_NAME}Export"
 "${CMAKE_BINARY_DIR}/${PROJECT_NAME}Export.h")

72 73 74
## ###################################################################
## Install rules - files
## ###################################################################
75

76 77 78
install(FILES ${${PROJECT_NAME}_HEADERS}
  DESTINATION include/${PROJECT_NAME}
    COMPONENT log)
79

80 81 82
## ###################################################################
## Install rules - targets
## ###################################################################
83 84

install(TARGETS ${PROJECT_NAME}
NICLAUSSE Nicolas's avatar
NICLAUSSE Nicolas committed
85
    DESTINATION ${CMAKE_INSTALL_LIBDIR}
86 87
      COMPONENT log
         EXPORT dtkDepends)
88 89 90

######################################################################
### CMakeLists.txt ends here