File: CMakeLists.txt

package info (click to toggle)
rdkit 202209.3-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 203,880 kB
  • sloc: cpp: 334,239; python: 80,247; ansic: 24,579; java: 7,667; sql: 2,123; yacc: 1,884; javascript: 1,358; lex: 1,260; makefile: 576; xml: 229; fortran: 183; cs: 181; sh: 101
file content (63 lines) | stat: -rw-r--r-- 2,424 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63

rdkit_library(MolDraw2DQt MolDraw2DQt.cpp DrawTextQt.cpp
  LINK_LIBRARIES
  MolDraw2D)
target_compile_definitions(MolDraw2DQt PRIVATE RDKIT_MOLDRAW2DQT_BUILD)
target_compile_definitions(MolDraw2DQt PUBLIC "-DRDK_BUILD_QT_SUPPORT")

add_library(QtDependencies INTERFACE)
if (RDK_USE_QT6)
  find_package(Qt6 COMPONENTS Core Widgets OpenGL REQUIRED)
  target_link_libraries(QtDependencies INTERFACE Qt6::Core Qt6::OpenGL Qt6::Widgets)
  set(RDK_QT_VERSION_STRING ${Qt6Core_VERSION})
else(RDK_USE_QT6)
  find_package(Qt5 COMPONENTS Core Widgets OpenGL REQUIRED)
  target_link_libraries(QtDependencies INTERFACE Qt5::Core Qt5::OpenGL Qt5::Widgets)
  set(RDK_QT_VERSION_STRING ${Qt5Core_VERSION})
  if (RDK_QT_VERSION_STRING STREQUAL "")
    # QT < 5.9 uses Qt5Core_VERSION_STRING
    set(RDK_QT_VERSION_STRING ${Qt5Core_VERSION_STRING})
  endif()
endif(RDK_USE_QT6)

message(STATUS "Building with Qt version ${RDK_QT_VERSION_STRING}")

target_link_libraries(MolDraw2DQt PUBLIC QtDependencies)
target_compile_definitions(MolDraw2DQt PRIVATE "-DRDK_QT_VERSION=\"${RDK_QT_VERSION_STRING}\"")

install(TARGETS QtDependencies EXPORT ${RDKit_EXPORTED_TARGETS} COMPONENT dev )

rdkit_headers(MolDraw2DQt.h DEST GraphMol/MolDraw2D/Qt)
if(RDK_INSTALL_STATIC_LIBS)
  target_link_libraries(MolDraw2DQt_static PUBLIC QtDependencies)
  target_compile_definitions(MolDraw2DQt_static PRIVATE "-DRDK_QT_VERSION=\"${RDK_QT_VERSION_STRING}\"")
  target_sources(MolDraw2DQt_static PRIVATE MolDraw2DQt.cpp DrawTextQt.cpp)
endif()


if(RDK_BUILD_FREETYPE_SUPPORT)
  target_compile_definitions(MolDraw2DQt PUBLIC "-DRDK_BUILD_FREETYPE_SUPPORT")
  target_sources(MolDraw2DQt PRIVATE DrawTextFTQt.cpp)
  if(RDK_INSTALL_STATIC_LIBS)
    target_compile_definitions(MolDraw2DQt_static PUBLIC "-DRDK_BUILD_FREETYPE_SUPPORT")
    target_sources(MolDraw2DQt_static PRIVATE DrawTextFTQt.cpp)
  endif()
  # I think Emscripten with Qt is nonsense, so
  find_package(Freetype REQUIRED)
  target_link_libraries(MolDraw2DQt PUBLIC Freetype::Freetype)
  if(RDK_INSTALL_STATIC_LIBS)
    target_link_libraries(MolDraw2DQt_static PUBLIC Freetype::Freetype)
  endif()
endif(RDK_BUILD_FREETYPE_SUPPORT)

if(RDK_BUILD_QT_SUPPORT)
  rdkit_catch_test(moldraw2DTestQt catch_qt.cpp LINK_LIBRARIES MolDraw2DQt)
endif(RDK_BUILD_QT_SUPPORT)

if(RDK_BUILD_QT_DEMO)
  add_subdirectory(QTDemo)
endif(RDK_BUILD_QT_DEMO)

if(RDK_BUILD_PYTHON_WRAPPERS)
add_subdirectory(Wrap)
endif()