Warning, /education/labplot/src/3rdparty/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 IF (APPLE AND ENABLE_TOUCHBAR) 0002 add_subdirectory(kdmactouchbar) 0003 ENDIF () 0004 0005 IF (ENABLE_LIBORIGIN AND NOT LIBORIGIN_FOUND) 0006 add_subdirectory(liborigin) 0007 ENDIF () 0008 0009 IF (BUILD_READSTAT) 0010 include(ExternalProject) 0011 0012 set(build_dir ${CMAKE_BINARY_DIR}/src/3rdparty) 0013 set(install_dir ${build_dir}/install) 0014 file(MAKE_DIRECTORY ${install_dir}/lib) 0015 file(MAKE_DIRECTORY ${install_dir}/include) 0016 0017 set(ext_src ${build_dir}/readstat/src/readstat) 0018 # TODO: find easy (and portable) way to get latest version 0019 # curl -s https://api.github.com/repos/WizardMac/ReadStat/releases/latest | grep 'browser_download_url.*.tar.gz' | cut -d\" -f4 0020 # curl -s https://api.github.com/repos/WizardMac/ReadStat/releases/latest | jq --raw-output '.assets[0] | .browser_download_url' 0021 # execute_process(COMMAND "curl -s https://api.github.com/repos/WizardMac/ReadStat/releases/latest | jq --raw-output '.assets[0] | .browser_download_url'" OUTPUT_VARIABLE ext_url) 0022 set(ext_version "1.1.9") 0023 set(ext_url https://github.com/WizardMac/ReadStat/releases/download/v${ext_version}/readstat-${ext_version}.tar.gz) 0024 #if(WIN32) # not used (own version on Windows) 0025 # set(ext_url http://sourceforge.net/projects/kst/files/3rdparty/zlib-develop-mingw-fixed.zip) 0026 # set(ext_configure cmake ${ext_src} ${generator} -DBUILD_SHARED_LIBS=0 ${rc_compiler} ${install_prefix} ${build_type}) 0027 # set(ext_install ${install_target}) 0028 # set(ext_insource OFF ) 0029 # set(zlib_library libzlibstatic.a) 0030 # set(ext_make ${kst_make_program}) 0031 #else() 0032 0033 # --prefix=${install_dir} does not work with spaces 0034 set(ext_configure ${ext_src}/configure --enable-static --disable-shared) 0035 set(ext_insource ON) 0036 #set(ext_make ${CMAKE_MAKE_PROGRAM} CXXFLAGS=-fPIC CFLAGS=-fPIC) 0037 0038 set(readstat_library libreadstat.a) 0039 #endif() 0040 ExternalProject_Add(3rdparty_readstat 0041 PREFIX ${build_dir}/readstat 0042 URL ${ext_url} 0043 SOURCE_DIR ${ext_src} 0044 CONFIGURE_COMMAND ${ext_configure} 0045 BUILD_IN_SOURCE ${ext_insource} 0046 #BUILD_COMMAND ${ext_make} 0047 # libtool install does not work with spaces 0048 #INSTALL_COMMAND ${CMAKE_MAKE_PROGRAM} install 0049 INSTALL_COMMAND cp -av .libs/${readstat_library} ${install_dir}/lib/ && cp -av src/readstat.h ${install_dir}/include/ 0050 BUILD_BYPRODUCTS ${install_dir}/lib/${readstat_library} 0051 ) 0052 ENDIF () 0053 0054 IF (BUILD_QXLSX) 0055 set(BUILD_SHARED_LIBS OFF) 0056 add_subdirectory(QXlsx) 0057 ENDIF () 0058 0059 # preview.sty 0060 install(FILES preview.sty DESTINATION ${KDE_INSTALL_DATADIR}/${PROJECT_NAME}/latex) 0061 0062 Include(FetchContent) 0063 0064 ### Vector BLF ############################### 0065 FIND_PACKAGE(PkgConfig REQUIRED) 0066 # git download is not allowed on all system (set to ON if needed) 0067 option(LOCAL_DBC_PARSER "Use local build of dbc parser" OFF) 0068 option(LOCAL_VECTOR_BLF "Use local build of Vector BLF" OFF) 0069 if (ENABLE_VECTOR_BLF) 0070 set(OPTION_RUN_DOXYGEN OFF CACHE BOOL "" FORCE) # disable running doxygen 0071 if (${LOCAL_DBC_PARSER}) 0072 FetchContent_Declare( 0073 dbc_parser_cpp 0074 GIT_REPOSITORY https://github.com/LinuxDevon/dbc_parser_cpp.git 0075 GIT_TAG 0f3b22b3fe124976a86a85fcd1bfdd55c20ca428 # At least this version is needed! 0076 ) 0077 # fix missing variable and keyword for fast_float 0078 IF (NOT MSVC_FOUND) 0079 add_definitions (-DFASTFLOAT_VISUAL_STUDIO=0) 0080 add_definitions (-D__forceinline=inline) 0081 ENDIF () 0082 # dbc is the root project name 0083 # https://gitlab.kitware.com/cmake/cmake/-/issues/19854 0084 set(CMAKE_PROJECT_dbc_INCLUDE "${CMAKE_CURRENT_SOURCE_DIR}/cmake/dbc_database_parser_disableTests.cmake") 0085 FetchContent_MakeAvailable(dbc_parser_cpp) 0086 # headerfiles of the projects are referring to <libdbc/someheader.h> and therefore 0087 # the path must be added 0088 target_include_directories(labplot2backendlib PUBLIC ${dbc_parser_cpp_SOURCE_DIR}/include) 0089 target_link_libraries(labplot2backendlib dbc) 0090 target_compile_definitions(labplot2backendlib PRIVATE HAVE_DBC_PARSER) 0091 target_compile_definitions(labplot2lib PUBLIC HAVE_DBC_PARSER) 0092 else () 0093 pkg_check_modules(dbc IMPORTED_TARGET GLOBAL dbc) 0094 if (dbc_FOUND) 0095 target_link_libraries(labplot2backendlib PkgConfig::dbc) 0096 target_compile_definitions(labplot2backendlib PRIVATE HAVE_DBC_PARSER) 0097 target_compile_definitions(labplot2lib PUBLIC HAVE_DBC_PARSER) 0098 endif() 0099 endif() 0100 0101 if (${LOCAL_VECTOR_BLF}) 0102 FetchContent_Declare( 0103 vector_blf 0104 #GIT_REPOSITORY https://github.com/Technica-Engineering/vector_blf.git 0105 #GIT_TAG 02f0a2fe1f7915da1e24025869b98f6d15de937b 0106 GIT_REPOSITORY https://github.com/Murmele/vector_blf.git 0107 GIT_TAG 2c1a8e649328f2e06ce4d45c6223628bc39fd178 0108 ) 0109 set(CMAKE_PROJECT_Vector_BLF_INCLUDE "${CMAKE_CURRENT_SOURCE_DIR}/cmake/vector_blf_config.cmake") 0110 FetchContent_MakeAvailable(vector_blf) 0111 # headerfiles of the projects are referring to <Vector/BLF/someheader.h> and therefore 0112 # the path must be added 0113 set(CMAKE_SYSTEM_INCLUDE_PATH ${CMAKE_SYSTEM_INCLUDE_PATH} 0114 ${vector_blf_SOURCE_DIR}/src 0115 ${vector_blf_BINARY_DIR}/src) # config.h is in there 0116 target_include_directories(Vector_BLF PUBLIC ${vector_blf_SOURCE_DIR}/src 0117 ${vector_blf_BINARY_DIR}/src) # config.h is in there 0118 target_link_libraries(labplot2backendlib Vector_BLF) 0119 target_compile_definitions(labplot2backendlib PRIVATE HAVE_VECTOR_BLF) 0120 target_compile_definitions(labplot2lib PUBLIC HAVE_VECTOR_BLF) 0121 add_definitions (-DHAVE_VECTOR_BLF) 0122 else() 0123 pkg_check_modules(Vector_BLF IMPORTED_TARGET GLOBAL Vector_BLF) 0124 if (Vector_BLF_FOUND) 0125 target_link_libraries(labplot2backendlib PkgConfig::Vector_BLF) 0126 target_compile_definitions(labplot2backendlib PRIVATE HAVE_VECTOR_BLF) 0127 target_compile_definitions(labplot2lib PUBLIC HAVE_VECTOR_BLF) 0128 add_definitions (-DHAVE_VECTOR_BLF) 0129 endif() 0130 endif() 0131 else() 0132 add_definitions (-DVECTOR_BLF_DISABLED) 0133 endif() 0134 0135 if (LOCAL_QT_ADVANCED_DOCK_DOWNLOAD) 0136 FetchContent_Declare( 0137 qt_advanced_dock 0138 GIT_REPOSITORY https://github.com/githubuser0xFFFF/Qt-Advanced-Docking-System.git 0139 GIT_TAG a940fc29c6d1fbcb5ee1e2fecf86f20bb86a7fb6 0140 ) 0141 FetchContent_MakeAvailable(qt_advanced_dock) 0142 elseif(LOCAL_QT_ADVANCED_DOCK_COPY) 0143 # https://cmake.org/cmake/help/latest/variable/CMAKE_PROJECT_INCLUDE.html 0144 set(CMAKE_PROJECT_QtADS_INCLUDE "${CMAKE_CURRENT_SOURCE_DIR}/cmake/QtADS_config.cmake") 0145 set(ADS_VERSION ${LABPLOT_VERSION}) 0146 add_subdirectory(Qt-Advanced-Docking-System) 0147 endif() 0148