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.83 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
  dtkLog.h
  dtkLogger.h
  dtkLogger_p.h
  dtkLogEngine.h
27 28
  dtkLogDestination.h
  dtkLogModel.h)
29 30

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

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

41
add_library(${PROJECT_NAME} SHARED
42
  ${${PROJECT_NAME}_SOURCES}
Julien Wintz's avatar
Julien Wintz committed
43
  ${${PROJECT_NAME}_HEADERS}
44
  )
Julien Wintz's avatar
Julien Wintz committed
45

46
target_link_libraries(${PROJECT_NAME} Qt5::Core)
Julien Wintz's avatar
Julien Wintz committed
47 48 49 50

## #################################################################
## Target properties
## #################################################################
51

52 53
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
54
set_target_properties(${PROJECT_NAME} PROPERTIES INSTALL_RPATH    "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
55

56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
## #################################################################
## 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")

74 75 76
## ###################################################################
## Install rules - files
## ###################################################################
77

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

82 83 84
## ###################################################################
## Install rules - targets
## ###################################################################
85 86

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

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