mirror of
https://github.com/jkriege2/JKQtPlotter.git
synced 2024-12-25 10:01:38 +08:00
b0df7a1fd7
NEW/BREAKING: refactor CMake-Code, so static/dynamic switch is done via <code>BUILD_SHARED_LIBS</code>, which retires <code>JKQtPlotter_BUILD_STATIC_LIBS</code>, <code>JKQtPlotter_BUILD_SHARED_LIBS</code> and removes the capability to build static and shared libraries in one location (fixes issue #104) NEW: prepareed library for CMake's <a href="https://cmake.org/cmake/help/latest/module/FetchContent.html">FetchContent</a>-API NEW: the different sub-libraries JKQTPlotter, JKQTFastPlotter (DEPRECATED), JKQTMath, JKQTMathText can be activated/deactivated with CMake options JKQtPlotter_BUILD_LIB_JKQTPLOTTER, JKQtPlotter_BUILD_LIB_JKQTFASTPLOTTER, JKQtPlotter_BUILD_LIB_JKQTMATHTEXT, JKQtPlotter_BUILD_LIB_JKQTMATH
41 lines
1.7 KiB
CMake
41 lines
1.7 KiB
CMake
cmake_minimum_required(VERSION 3.23)
|
|
|
|
set(EXAMPLE_NAME jkqtplot_test)
|
|
set(EXENAME ${EXAMPLE_NAME})
|
|
|
|
message( STATUS ".. Building Example ${EXAMPLE_NAME}" )
|
|
|
|
|
|
# Set up source files
|
|
set(SOURCES jkqtplot_test.cpp testmain.cpp TestWidgetBarcharts.cpp TestWidgetContourPlots.cpp TestWidgetEmptyPlot.cpp TestWidgetFunctionPlots.cpp TestWidgetGeometry.cpp TestWidgetGraphs.cpp TestWidgetImages.cpp TestWidgetLogGraphs.cpp TestWidgetParamScatterPlots.cpp TestWidgetPeaksPlots.cpp TestWidgetRGBImages.cpp )
|
|
# EmfEngine/src/EmfEngine.cpp
|
|
# EmfEngine/src/EmfPaintDevice.cpp
|
|
# QTeXEngine/src/QTeXPaintDevice.h
|
|
# QTeXEngine/src/QTeXPaintEngine.h
|
|
#)
|
|
set(HEADERS testmain.h TestWidgetBarcharts.h TestWidgetContourPlots.h TestWidgetEmptyPlot.h TestWidgetFunctionPlots.h TestWidgetGeometry.h TestWidgetGraphs.h TestWidgetImages.h TestWidgetLogGraphs.h TestWidgetParamScatterPlots.h TestWidgetPeaksPlots.h TestWidgetRGBImages.h)
|
|
# jkqtpemfengineadapter.h
|
|
|
|
# EmfEngine/src/EmfEngine.h
|
|
# QTeXEngine/src/QTeXEngine.h
|
|
#)
|
|
set(RESOURCES jkqtplot_test.qrc )
|
|
set(UIS )
|
|
|
|
add_executable(${EXENAME} WIN32 ${SOURCES} ${HEADERS} ${RESOURCES} ${UIS})
|
|
target_include_directories(${EXENAME} PRIVATE ../../lib)
|
|
target_link_libraries(${EXENAME} ${jkqtplotter_namespace}JKQTPlotter${jkqtplotter_LIBNAME_VERSION_PART})
|
|
target_link_libraries(${EXENAME} JKQTPExampleToolsLib)
|
|
|
|
# precomiled headers to speed up compilation
|
|
if (JKQtPlotter_BUILD_WITH_PRECOMPILED_HEADERS)
|
|
target_precompile_headers(${EXENAME} REUSE_FROM jkqtptest_simpletest)
|
|
endif (JKQtPlotter_BUILD_WITH_PRECOMPILED_HEADERS)
|
|
|
|
|
|
# Installation
|
|
install(TARGETS ${EXENAME} RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
|
|
|
#Installation of Qt DLLs on Windows
|
|
jkqtplotter_deployqt(${EXENAME})
|