Skip to content

Commit

Permalink
update cpp to cmaize
Browse files Browse the repository at this point in the history
  • Loading branch information
ryanmrichard committed Dec 7, 2023
1 parent b48a74e commit 09c2d85
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 14 deletions.
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ write_basic_package_version_file(

if(BUILD_TESTING)
message("Building tests")
include("${PROJECT_SOURCE_DIR}/cmake/get_cpp.cmake")
include("${PROJECT_SOURCE_DIR}/cmake/get_cmaize.cmake")
include("${PROJECT_SOURCE_DIR}/cmake/get_cmake_test.cmake")

python_venv_pip_install(${CMINX_VENV} "-e" ".[testing]")
Expand Down
28 changes: 15 additions & 13 deletions cmake/get_cpp.cmake → cmake/get_cmaize.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -13,38 +13,40 @@
# limitations under the License.

include_guard()
include(versions)

#[[
# This function encapsulates the process of getting CMakePP using CMake's
# This function encapsulates the process of getting CMaize using CMake's
# FetchContent module. We have encapsulated it in a function so we can set
# the options for its configure step without affecting the options for the
# parent project's configure step (namely we do not want to build CMakePP's
# parent project's configure step (namely we do not want to build CMaize's
# unit tests).
#]]
macro(get_cpp)
include(cpp/cpp OPTIONAL RESULT_VARIABLE cpp_found)
if(NOT cpp_found)
macro(get_cmaize)
include(cmaize/cmaize OPTIONAL RESULT_VARIABLE cmaize_found)
if(NOT cmaize_found)



# Store whether we are building tests or not, then turn off the tests
set(build_testing_old "${BUILD_TESTING}")
set(BUILD_TESTING OFF CACHE BOOL "" FORCE)
# Download CMakePP and bring it into scope
# Download CMaize and bring it into scope
include(FetchContent)
FetchContent_Declare(
cpp
GIT_REPOSITORY https://github.com/CMakePP/CMakePackagingProject
cmaize
GIT_REPOSITORY https://github.com/CMakePP/CMaize
GIT_TAG "${CMAIZE_VERSION}"
)
FetchContent_MakeAvailable(cpp)
FetchContent_MakeAvailable(cmaize)

# Restore the previous value
set(BUILD_TESTING "${build_testing_old}" CACHE BOOL "" FORCE)
endif()
endmacro()

# Call the function we just wrote to get CMakePP
get_cpp()
# Call the function we just wrote to get CMaize
get_cmaize()

# Include CMakePP
include(cpp/cpp)
# Include CMaize
include(cmaize/cmaize)
17 changes: 17 additions & 0 deletions cmake/versions.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Copyright 2023 CMakePP
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

include_guard()

set(CMAIZE_VERSION v0.2.1)

0 comments on commit 09c2d85

Please sign in to comment.