From 5645c5ea31a5071291cf93a4999294ef01c139c5 Mon Sep 17 00:00:00 2001 From: Andrey Astafyev Date: Tue, 22 Jun 2021 17:35:13 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D1=80=D0=B8=D0=BC=D0=B5=D1=80=D1=8B=20?= =?UTF-8?q?=D1=81=D0=BA=D1=80=D0=B8=D0=BF=D1=82=D0=BE=D0=B2=20=D0=B4=D0=BB?= =?UTF-8?q?=D1=8F=20=D0=BF=D0=BE=D0=B8=D1=81=D0=BA=D0=B0=20=D1=87=D0=B5?= =?UTF-8?q?=D1=80=D0=B5=D0=B7=20find=5Fpackage?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cmake/FindMyxlib.cmake | 21 +++++++++++++++++++++ cmake/FindMyxlibThirdparty.cmake | 14 ++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 cmake/FindMyxlib.cmake create mode 100644 cmake/FindMyxlibThirdparty.cmake diff --git a/cmake/FindMyxlib.cmake b/cmake/FindMyxlib.cmake new file mode 100644 index 0000000..9827bc4 --- /dev/null +++ b/cmake/FindMyxlib.cmake @@ -0,0 +1,21 @@ +set(MYXLIB_PREFIX "" CACHE PATH "The path to the previx of an myxlib installation") + +find_path(MYXLIB_INCLUDE_DIRS NAMES myx/core/config.hpp PATHS ${MYXLIB_PREFIX}/include) +find_library(MYXLIB_QT_LIBRARY NAMES myx-qt PATHS ${MYXLIB_PREFIX}/lib) +find_library(MYXLIB_FILESYSTEM_LIBRARY NAMES myx-filesystem PATHS ${MYXLIB_PREFIX}/lib) + +if(MYXLIB_INCLUDE_DIRS AND MYXLIB_QT_LIBRARY AND MYXLIB_FILESYSTEM_LIBRARY) + get_filename_component(MYXLIB_LIBRARY_DIR ${MYXLIB_QT_LIBRARY} DIRECTORY CACHE) + set(MYXLIB_FOUND TRUE) +endif() + +if(MYXLIB_FOUND) + if(NOT MYXLIB_FIND_QUIETLY) + MESSAGE(STATUS "Found myxlib") + endif() + set(HAVE_MYXLIB 1) +elseif(MYXLIB_FOUND) + if(MYXLIB_FIND_REQUIRED) + message(FATAL_ERROR "Could not find myxlib") + endif() +endif() diff --git a/cmake/FindMyxlibThirdparty.cmake b/cmake/FindMyxlibThirdparty.cmake new file mode 100644 index 0000000..c9e6664 --- /dev/null +++ b/cmake/FindMyxlibThirdparty.cmake @@ -0,0 +1,14 @@ +ExternalProject_Add( + myxlib + SOURCE_DIR ${CMAKE_SOURCE_DIR}/thirdparty/myxlib + INSTALL_DIR ${CMAKE_BINARY_DIR} + DOWNLOAD_COMMAND "" + CONFIGURE_COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}" -DCMLIB_MAIN_DIR=${CMLIB_MAIN_DIR} ${CMLIB_EXT_PROJ_DEFAULT_ARGS} + BUILD_COMMAND true + ) + +set(MYXLIB_PREFIX ${CMAKE_BINARY_DIR} CACHE FILEPATH "" FORCE) +set(MYXLIB_INCLUDE_DIRS ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_INCLUDEDIR} CACHE PATH "" FORCE) +set(MYXLIB_LIBRARY_DIR ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR} CACHE PATH "" FORCE) +set(MYXLIB_QT_LIBRARY ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}/libmyx-qt.a CACHE FILEPATH "" FORCE) +set(MYXLIB_FILESYSTEM_LIBRARY ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}/libmyx-filesystem.a CACHE FILEPATH "" FORCE)