Compare commits

...

10 Commits

Author SHA1 Message Date
d8c537801a Обобщение 2021-06-24 10:20:21 +03:00
6b9db876fd Правки 2021-06-24 09:21:52 +03:00
28bfad1960 Правка 2021-06-23 08:28:12 +03:00
82fd36e58b Preproc 2021-06-23 07:34:59 +03:00
ba94a2f8b7 Ionobase 2021-06-23 02:11:10 +03:00
253bcbedb2 Форматирование 2021-06-23 01:30:10 +03:00
4487851535 Preprocmath 2021-06-23 01:17:57 +03:00
aa9e44b01f MPFRCppThirdparty 2021-06-22 23:37:26 +03:00
495c7f36ff Включение модуля 2021-06-22 23:23:28 +03:00
306cfff07a myxlib 2021-06-22 17:39:47 +03:00
9 changed files with 291 additions and 0 deletions

29
FindIonobase.cmake Normal file
View File

@@ -0,0 +1,29 @@
if(NOT LIBIONOBASE_PREFIX STREQUAL CMAKE_BINARY_DIR)
set(LIBIONOBASE_PREFIX "" CACHE PATH "The path to the previx of an libionobase installation")
find_path(
LIBIONOBASE_INCLUDE_DIRS
NAMES preprocmath/params.hpp
PATHS ${LIBIONOBASE_PREFIX}/include)
find_library(
LIBIONOBASE_LIBRARY
NAMES preprocmath
PATHS ${LIBIONOBASE_PREFIX}/lib)
if(LIBIONOBASE_INCLUDE_DIRS AND LIBIONOBASE_LIBRARY)
get_filename_component(LIBIONOBASE_LIBRARY_DIR ${LIBIONOBASE_LIBRARY}
DIRECTORY CACHE)
set(LIBIONOBASE_FOUND TRUE)
endif()
if(LIBIONOBASE_FOUND)
if(NOT LIBIONOBASE_FIND_QUIETLY)
message(STATUS "Found libionobase")
endif()
set(HAVE_LIBIONOBASE 1)
elseif(LIBIONOBASE_FOUND)
if(LIBIONOBASE_FIND_REQUIRED)
message(FATAL_ERROR "Could not find libionobase")
endif()
endif()
endif()

View File

@@ -0,0 +1,39 @@
# Подключение внешних проектов
include(ExternalProject)
if(${IonobaseThirdparty_FIND_COMPONENTS} STREQUAL "headers")
ExternalProject_Add(
libionobase
SOURCE_DIR ${CMAKE_SOURCE_DIR}/thirdparty/libionobase
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}
<SOURCE_DIR>
BUILD_COMMAND true
INSTALL_COMMAND make ionobase-install-headers)
else()
ExternalProject_Add(
libionobase
SOURCE_DIR ${CMAKE_SOURCE_DIR}/thirdparty/libionobase
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}
<SOURCE_DIR>)
endif()
set(LIBIONOBASE_PREFIX
${CMAKE_BINARY_DIR}
CACHE FILEPATH "" FORCE)
set(LIBIONOBASE_INCLUDE_DIRS
${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_INCLUDEDIR}
CACHE PATH "" FORCE)
set(LIBIONOBASE_LIBRARY_DIR
${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}
CACHE PATH "" FORCE)
set(LIBIONOBASE_LIBRARY
${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}/libionobase.a
CACHE FILEPATH "" FORCE)

View File

@@ -0,0 +1,16 @@
# Подключение внешних проектов
include(ExternalProject)
if(MPFR_FOUND)
ExternalProject_Add(
mpfrcpp
SOURCE_DIR ${CMAKE_SOURCE_DIR}/thirdparty/mpreal
INSTALL_DIR ${CMAKE_BINARY_DIR}/include
DOWNLOAD_COMMAND ""
CONFIGURE_COMMAND ""
BUILD_COMMAND true
INSTALL_COMMAND ${CMAKE_COMMAND} -E copy <SOURCE_DIR>/mpreal.h <INSTALL_DIR>)
endif()
set(MPFRCPP_PREFIX ${CMAKE_BINARY_DIR} CACHE FILEPATH "" FORCE)
set(MPFRCPP_INCLUDE_DIRS ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_INCLUDEDIR} CACHE PATH "" FORCE)

37
FindMyxlib.cmake Normal file
View File

@@ -0,0 +1,37 @@
if(NOT MYXLIB_PREFIX STREQUAL CMAKE_BINARY_DIR)
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()
endif()

View File

@@ -0,0 +1,40 @@
# Подключение внешних проектов
include(ExternalProject)
# cmake-format: off
list(APPEND _ext_project_args
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}
<SOURCE_DIR>)
if(MyxlibThirdparty_FIND_COMPONENTS STREQUAL "headers")
list(APPEND _ext_project_args
BUILD_COMMAND true
INSTALL_COMMAND ${CMAKE_MAKE_PROGRAM} myxlib-install-headers)
endif()
ExternalProject_Add(${_ext_project_args})
unset(_ext_project_args)
set(MYXLIB_IS_EXTERNAL_PROJECT ON CACHE BOOL "" FORCE)
# cmake-format: on
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)

29
FindPreproc.cmake Normal file
View File

@@ -0,0 +1,29 @@
if(NOT LIBPREPROC_IS_EXTERNAL_PROJECT)
set(LIBPREPROC_PREFIX "" CACHE PATH "The path to the prefix of an libpreproc installation")
find_path(
LIBPREPROC_INCLUDE_DIRS
NAMES preproc/mark.hpp
PATHS ${LIBPREPROC_PREFIX}/include)
find_library(
LIBPREPROC_LIBRARY
NAMES preproc
PATHS ${LIBPREPROC_PREFIX}/lib)
if(LIBPREPROC_INCLUDE_DIRS AND LIBPREPROC_LIBRARY)
get_filename_component(LIBPREPROC_LIBRARY_DIR ${LIBPREPROC_LIBRARY}
DIRECTORY CACHE)
set(LIBPREPROC_FOUND TRUE)
endif()
if(LIBPREPROC_FOUND)
if(NOT LIBPREPROC_FIND_QUIETLY)
message(STATUS "Found libpreproc")
endif()
set(HAVE_LIBPREPROC 1)
elseif(LIBPREPROC_FOUND)
if(LIBPREPROC_FIND_REQUIRED)
message(FATAL_ERROR "Could not find libpreproc")
endif()
endif()
endif()

View File

@@ -0,0 +1,37 @@
# Подключение внешних проектов
include(ExternalProject)
# cmake-format: off
list(APPEND _ext_project_args
libpreproc
DEPENDS libpreprocmath
SOURCE_DIR ${CMAKE_SOURCE_DIR}/thirdparty/libpreproc
INSTALL_DIR ${CMAKE_BINARY_DIR}
DOWNLOAD_COMMAND ""
CONFIGURE_COMMAND ${CMAKE_COMMAND} -G "${CMAKE_GENERATOR}"
-DLIBPREPROCMATH_PREFIX=${CMAKE_BINARY_DIR}
-DCMLIB_MAIN_DIR=${CMLIB_MAIN_DIR}
${CMLIB_EXT_PROJ_DEFAULT_ARGS} <SOURCE_DIR>)
if(PreprocThirdparty_FIND_COMPONENTS STREQUAL "headers")
list(APPEND _ext_project_args
BUILD_COMMAND true
INSTALL_COMMAND ${CMAKE_MAKE_PROGRAM} preproc-install-headers)
endif()
ExternalProject_Add(${_ext_project_args})
unset(_ext_project_args)
set(LIBPREPROC_IS_EXTERNAL_PROJECT ON CACHE BOOL "" FORCE)
# cmake-format: on
set(LIBPREPROC_PREFIX
${CMAKE_BINARY_DIR}
CACHE FILEPATH "" FORCE)
set(LIBPREPROC_INCLUDE_DIRS
${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_INCLUDEDIR}
CACHE PATH "" FORCE)
set(LIBPREPROC_LIBRARY_DIR
${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}
CACHE PATH "" FORCE)
set(LIBPREPROC_LIBRARY
${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}/libpreproc.a
CACHE FILEPATH "" FORCE)

29
FindPreprocmath.cmake Normal file
View File

@@ -0,0 +1,29 @@
if(NOT LIBPREPROCMATH_IS_EXTERNAL_PROJECT)
set(LIBPREPROCMATH_PREFIX "" CACHE PATH "The path to the prefix of an libpreprocmath installation")
find_path(
LIBPREPROCMATH_INCLUDE_DIRS
NAMES preprocmath/params.hpp
PATHS ${LIBPREPROCMATH_PREFIX}/include)
find_library(
LIBPREPROCMATH_LIBRARY
NAMES preprocmath
PATHS ${LIBPREPROCMATH_PREFIX}/lib)
if(LIBPREPROCMATH_INCLUDE_DIRS AND LIBPREPROCMATH_LIBRARY)
get_filename_component(LIBPREPROCMATH_LIBRARY_DIR ${LIBPREPROCMATH_LIBRARY}
DIRECTORY CACHE)
set(LIBPREPROCMATH_FOUND TRUE)
endif()
if(LIBPREPROCMATH_FOUND)
if(NOT LIBPREPROCMATH_FIND_QUIETLY)
message(STATUS "Found libpreprocmath")
endif()
set(HAVE_LIBPREPROCMATH 1)
elseif(LIBPREPROCMATH_FOUND)
if(LIBPREPROCMATH_FIND_REQUIRED)
message(FATAL_ERROR "Could not find libpreprocmath")
endif()
endif()
endif()

View File

@@ -0,0 +1,35 @@
# Подключение внешних проектов
include(ExternalProject)
# cmake-format: off
list(APPEND _ext_project_args
libpreprocmath
SOURCE_DIR ${CMAKE_SOURCE_DIR}/thirdparty/libpreprocmath
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} <SOURCE_DIR>)
if(PreprocmathThirdparty_FIND_COMPONENTS STREQUAL "headers")
list(APPEND _ext_project_args
BUILD_COMMAND true
INSTALL_COMMAND ${CMAKE_MAKE_PROGRAM} preprocmath-install-headers)
endif()
ExternalProject_Add(${_ext_project_args})
unset(_ext_project_args)
set(LIBPREPROCMATH_IS_EXTERNAL_PROJECT ON CACHE BOOL "" FORCE)
# cmake-format: on
set(LIBPREPROCMATH_PREFIX
${CMAKE_BINARY_DIR}
CACHE FILEPATH "" FORCE)
set(LIBPREPROCMATH_INCLUDE_DIRS
${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_INCLUDEDIR}
CACHE PATH "" FORCE)
set(LIBPREPROCMATH_LIBRARY_DIR
${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}
CACHE PATH "" FORCE)
set(LIBPREPROCMATH_LIBRARY
${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}/libpreprocmath.a
CACHE FILEPATH "" FORCE)