diff --git a/.github/.licenserc.yaml b/.github/.licenserc.yaml index 84e66d17..329589ef 100644 --- a/.github/.licenserc.yaml +++ b/.github/.licenserc.yaml @@ -27,6 +27,7 @@ header: - tests/ - LICENSE - MANIFEST.in + - CITATION.cff - setup.cfg - .zenodo.json diff --git a/CITATION.cff b/CITATION.cff new file mode 100644 index 00000000..6b6fd7dd --- /dev/null +++ b/CITATION.cff @@ -0,0 +1,34 @@ +cff-version: "1.2.0" +authors: +- family-names: Butler + given-names: Branden +- family-names: Richard + given-names: Ryan M. + orcid: "https://orcid.org/0000-0003-4235-5179" +contact: +- family-names: Richard + given-names: Ryan M. + orcid: "https://orcid.org/0000-0003-4235-5179" +doi: 10.5281/zenodo.7116601 +message: If you use this software, please cite our article in the + Journal of Open Source Software. +preferred-citation: + authors: + - family-names: Butler + given-names: Branden + - family-names: Richard + given-names: Ryan M. + orcid: "https://orcid.org/0000-0003-4235-5179" + date-published: 2022-09-23 + doi: 10.21105/joss.04680 + issn: 2475-9066 + issue: 77 + journal: Journal of Open Source Software + publisher: + name: Open Journals + start: 4680 + title: "CMinx: A CMake Documentation Generator" + type: article + url: "https://joss.theoj.org/papers/10.21105/joss.04680" + volume: 7 +title: "CMinx: A CMake Documentation Generator" diff --git a/CMakeLists.txt b/CMakeLists.txt index 9beb915e..6ae07567 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -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]") diff --git a/cmake/get_cpp.cmake b/cmake/get_cmaize.cmake similarity index 69% rename from cmake/get_cpp.cmake rename to cmake/get_cmaize.cmake index 6a4ca0d4..9a7f8fc1 100644 --- a/cmake/get_cpp.cmake +++ b/cmake/get_cmaize.cmake @@ -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) diff --git a/cmake/versions.cmake b/cmake/versions.cmake new file mode 100644 index 00000000..e331db1d --- /dev/null +++ b/cmake/versions.cmake @@ -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)