Modernize the cmake scripts directory by replacing it with my CMakeTools repo full of common CMake options
This commit is contained in:
parent
05a40aa41a
commit
1a6e8679d8
3
.gitmodules
vendored
Normal file
3
.gitmodules
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
[submodule "CMake"]
|
||||
path = CMake
|
||||
url = https://gitea.beniquez.me/sdaveb/CMakeTools.git
|
1
CMake
Submodule
1
CMake
Submodule
@ -0,0 +1 @@
|
||||
Subproject commit 36b2066dd89c7c42da064d6ede7bcba12d73156b
|
@ -2,24 +2,14 @@ cmake_minimum_required(VERSION 3.26)
|
||||
|
||||
SET(IOCore_CMAKE_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
|
||||
# Additional paths to search for custom and third-party CMake modules
|
||||
list(PREPEND CMAKE_MODULE_PATH ${IOCore_CMAKE_SOURCE_DIR}/cmake)
|
||||
list(PREPEND CMAKE_MODULE_PATH ${IOCore_CMAKE_SOURCE_DIR}/CMake)
|
||||
|
||||
include(BuildProperties)
|
||||
|
||||
prevent_in_source_build()
|
||||
disable_deprecated_features()
|
||||
|
||||
# When this package is included as a subproject, there's no need to
|
||||
# build and run the unit-tests.
|
||||
# Sets -DBUILD_TESTING to false by default if this is a third-party lib build
|
||||
# This check must appear beforezR project()
|
||||
|
||||
disable_tests_if_subproject()
|
||||
include(DefaultConfig)
|
||||
|
||||
project(IOCore
|
||||
VERSION 0.2.23
|
||||
VERSION 0.2.24
|
||||
LANGUAGES C CXX
|
||||
# HOMEPAGE_URL <URL>
|
||||
DESCRIPTION "A framework for application management, file IO, etc"
|
||||
|
@ -1,15 +0,0 @@
|
||||
|
||||
add_executable(app main.cpp)
|
||||
|
||||
#target_include_directories(app PRIVATE
|
||||
# ${CMAKE_SOURCE_DIR}/src/
|
||||
#)
|
||||
|
||||
target_link_libraries(app PRIVATE
|
||||
library
|
||||
)
|
||||
|
||||
# Manually adds a predefined target as a dependency
|
||||
#add_dependencies(app copy-assets)
|
||||
|
||||
# vim: ts=2 sw=2 noet foldmethod=indent :
|
11
app/main.cpp
11
app/main.cpp
@ -1,11 +0,0 @@
|
||||
|
||||
#include <iostream>
|
||||
|
||||
int main(int argc, char* argv[], char* envp[])
|
||||
{
|
||||
std::cout << "main(): hello world<br/>" << std::endl;
|
||||
return 0;
|
||||
}
|
||||
|
||||
// clang-format off
|
||||
// vim: set foldmethod=marker foldmarker=#region,#endregion textwidth=80 ts=8 sts=0 sw=8 noexpandtab ft=cpp.doxygen :
|
@ -9,17 +9,12 @@ set_target_properties(IOCore PROPERTIES
|
||||
POSITION_INDEPENDENT_CODE ON
|
||||
)
|
||||
|
||||
set(IOCore_PUBLIC_INCLUDE_DIR ${IOCore_ARTIFACT_DIR}/include)
|
||||
file(MAKE_DIRECTORY ${IOCore_PUBLIC_INCLUDE_DIR})
|
||||
|
||||
add_custom_target(IOCore_include_files COMMAND ${CMAKE_COMMAND} -E copy_directory ${IOCore_CMAKE_SOURCE_DIR}/include ${IOCore_PUBLIC_INCLUDE_DIR}/IOCore
|
||||
DEPENDS ${IOCore_CMAKE_SOURCE_DIR}/include
|
||||
COMMENT "Copying include files to ${IOCore_PUBLIC_INCLUDE_DIR}"
|
||||
package_library_headers(IOCore
|
||||
${IOCore_CMAKE_SOURCE_DIR}/include
|
||||
)
|
||||
add_dependencies(IOCore IOCore_include_files)
|
||||
|
||||
target_include_directories(IOCore PRIVATE ${IOCore_CMAKE_SOURCE_DIR}/include)
|
||||
target_include_directories(IOCore INTERFACE ${IOCore_PUBLIC_INCLUDE_DIR})
|
||||
target_include_directories(IOCore INTERFACE ${IOCore_INCLUDE_OUTPUT_DIR})
|
||||
|
||||
# Add additional link options for boost::stacktrace
|
||||
if (USE_BOOST_STACKTRACE)
|
||||
@ -47,8 +42,8 @@ target_link_libraries(IOCoreShared PRIVATE IOCore)
|
||||
target_link_libraries(IOCoreStatic PUBLIC fmt::fmt-header-only)
|
||||
target_link_libraries(IOCoreShared PUBLIC fmt::fmt-header-only)
|
||||
|
||||
target_include_directories(IOCoreStatic INTERFACE ${IOCore_PUBLIC_INCLUDE_DIR})
|
||||
target_include_directories(IOCoreShared INTERFACE ${IOCore_PUBLIC_INCLUDE_DIR})
|
||||
target_include_directories(IOCoreStatic INTERFACE ${IOCore_INCLUDE_OUTPUT_DIR})
|
||||
target_include_directories(IOCoreShared INTERFACE ${IOCore_INCLUDE_OUTPUT_DIR})
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user