nix-archive-1(type directoryentry(namelibnode(type directoryentry(namecmakenode(type directoryentry(nametinycmmcnode(type directoryentry(nametinycmmcConfig.cmakenode(typeregularcontentsę ####### Expanded from @PACKAGE_INIT@ by configure_package_config_file() ####### ####### Any changes to this file will be overwritten by the next CMake run #### ####### The input file was tinycmmcConfig.cmake.in ######## get_filename_component(PACKAGE_PREFIX_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../" ABSOLUTE) macro(set_and_check _var _file) set(${_var} "${_file}") if(NOT EXISTS "${_file}") message(FATAL_ERROR "File or directory ${_file} referenced by variable ${_var} does not exist !") endif() endmacro() macro(check_required_components _NAME) foreach(comp ${${_NAME}_FIND_COMPONENTS}) if(NOT ${_NAME}_${comp}_FOUND) if(${_NAME}_FIND_REQUIRED_${comp}) set(${_NAME}_FOUND FALSE) endif() endif() endforeach() endmacro() #################################################################################### set(TINYCMMC_MODULE_PATH "/gnu/store/6aqsc0jpacdqx76dybwjj2f6fi2ajvy3-tinycmmc-0.1.0/share/tinycmmc/cmake/modules/") ))entry(nametinycmmcConfigVersion.cmakenode(typeregularcontents¹# This is a basic version file for the Config-mode of find_package(). # It is used by write_basic_package_version_file() as input file for configure_file() # to create a version-file which can be installed along a config.cmake file. # # The created file sets PACKAGE_VERSION_EXACT if the current version string and # the requested version string are exactly the same and it sets # PACKAGE_VERSION_COMPATIBLE if the current version is >= requested version. # The variable CVF_VERSION must be set before calling configure_file(). set(PACKAGE_VERSION "0.1.0") if (PACKAGE_FIND_VERSION_RANGE) # Package version must be in the requested version range if ((PACKAGE_FIND_VERSION_RANGE_MIN STREQUAL "INCLUDE" AND PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION_MIN) OR ((PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "INCLUDE" AND PACKAGE_VERSION VERSION_GREATER PACKAGE_FIND_VERSION_MAX) OR (PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "EXCLUDE" AND PACKAGE_VERSION VERSION_GREATER_EQUAL PACKAGE_FIND_VERSION_MAX))) set(PACKAGE_VERSION_COMPATIBLE FALSE) else() set(PACKAGE_VERSION_COMPATIBLE TRUE) endif() else() if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION) set(PACKAGE_VERSION_COMPATIBLE FALSE) else() set(PACKAGE_VERSION_COMPATIBLE TRUE) if(PACKAGE_FIND_VERSION STREQUAL PACKAGE_VERSION) set(PACKAGE_VERSION_EXACT TRUE) endif() endif() endif() # if the installed project requested no architecture check, don't perform the check if("FALSE") return() endif() # if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it: if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "4" STREQUAL "") return() endif() # check that the installed version has the same 32/64bit-ness as the one which is currently searching: if(NOT CMAKE_SIZEOF_VOID_P STREQUAL "4") math(EXPR installedBits "4 * 8") set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)") set(PACKAGE_VERSION_UNSUITABLE TRUE) endif() ))))))))entry(namesharenode(type directoryentry(nametinycmmcnode(type directoryentry(namecmakenode(type directoryentry(namemodulesnode(type directoryentry(nameClangTidy.cmakenode(typeregularcontents# Copyright (C) 2020 Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. option(CLANG_TIDY "Enable clang-tidy" OFF) option(CLANG_TIDY_FIX "Apply clang-tidy fixes to source code" OFF) if(CMAKE_VERSION VERSION_GREATER 3.6) if(CLANG_TIDY) find_program( CLANG_TIDY_EXE NAMES "clang-tidy" DOC "Path to clang-tidy executable" ) if(NOT CLANG_TIDY_EXE) message(FATAL_ERROR "clang-tidy not found.") else() message(STATUS "clang-tidy found: ${CLANG_TIDY_EXE}") if(CLANG_TIDY_FIX) set(CMAKE_CXX_CLANG_TIDY "${CLANG_TIDY_EXE}" "-fix") else() set(CMAKE_CXX_CLANG_TIDY "${CLANG_TIDY_EXE}") endif() endif() endif() endif() # EOF # ))entry(nameExportAndInstallLibrary.cmakenode(typeregularcontentsL# Old file for backward compatibility only, see # tinycmmc/ExportAndInstallLibrary.cmake for the new versions install(TARGETS "${PROJECT_NAME}" EXPORT "${PROJECT_NAME}" ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME}") add_library(${PROJECT_NAME}::${PROJECT_NAME} ALIAS ${PROJECT_NAME}) string(TOLOWER "${PROJECT_NAME}" PROJECT_NAME_LOWERCASE) include(CMakePackageConfigHelpers) configure_package_config_file("${PROJECT_NAME_LOWERCASE}-config.cmake.in" "${PROJECT_NAME_LOWERCASE}-config.cmake" INSTALL_DESTINATION "${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME}") write_basic_package_version_file("${PROJECT_NAME_LOWERCASE}-config-version.cmake" VERSION "${PROJECT_VERSION}" COMPATIBILITY SameMinorVersion) export(EXPORT "${PROJECT_NAME}" NAMESPACE "${PROJECT_NAME}::" FILE "${PROJECT_NAME_LOWERCASE}-targets.cmake") install(EXPORT "${PROJECT_NAME}" FILE "${PROJECT_NAME_LOWERCASE}-targets.cmake" NAMESPACE "${PROJECT_NAME}::" DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}") install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME_LOWERCASE}-config-version.cmake" "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME_LOWERCASE}-config.cmake" DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}") # EOF # ))entry(nameFindMPG123.cmakenode(typeregularcontents_# Copyright (C) 2021 Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. find_package(PkgConfig QUIET) if(PKG_CONFIG_FOUND) pkg_search_module(PC_MPG123 libmpg123) endif() find_path(MPG123_INCLUDE_DIRECTORY mpg123.h PATHS ${MPG123_DIR} ${PC_MPG123_INCLUDE_DIRS} PATH_SUFFIXES "include" ) find_library(MPG123_LIBRARY NAMES mpg123 mpg123-0 libmpg123 libmpg123-0 PATHS ${MPG123_DIR} ${PC_MPG123_LIBRARY_DIRS} PATH_SUFFIXES "lib" ) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(MPG123 REQUIRED_VARS MPG123_INCLUDE_DIRECTORY MPG123_LIBRARY ) add_library(MPG123::mpg123 UNKNOWN IMPORTED) set_target_properties(MPG123::mpg123 PROPERTIES IMPORTED_LOCATION "${MPG123_LIBRARY}" INTERFACE_INCLUDE_DIRECTORIES "${MPG123_INCLUDE_DIRECTORY};${PC_MPG123_INCLUDE_DIRS}" INTERFACE_LINK_LIBRARIES "${PC_MPG123_LINK_LIBRARIES}" INTERFACE_LINK_OPTIONS "${PC_MPG123_LINK_OPTIONS}" INTERFACE_COMPILE_DEFINITIONS "${PC_MPG123_COMPILE_DEFINITIONS}" INTERFACE_COMPILE_OPTIONS "${PC_MPG123_COMPILE_OPTIONS}" ) # EOF # ))entry(name FindMad.cmakenode(typeregularcontents·# Copyright (C) 2020 Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. pkg_search_module(MAD mad IMPORTED_TARGET) if(NOT MAD_FOUND) find_library(MAD_LIBRARIES NAMES "mad" REQUIRED) find_path(MAD_INCLUDE_DIRS NAMES "mad.h" PATH_SUFFIXES "/" "mad/") if (NOT MAD_INCLUDE_DIRS) message(FATAL_ERROR "mad not found") endif() add_library(PkgConfig::MAD INTERFACE IMPORTED) target_link_libraries(PkgConfig::MAD INTERFACE ${MAD_LIBRARIES}) target_include_directories(PkgConfig::MAD INTERFACE ${MAD_INCLUDE_DIRS}) message(STATUS "Found Mad: ${MAD_LIBRARIES} ${MAD_INCLUDE_DIRS}") endif() # CMake can't do aliases on imported target, so some hackery # add_library(Mad::Mad ALIAS PkgConfig::MAD) add_library(Mad::Mad INTERFACE IMPORTED) foreach(name INTERFACE_LINK_LIBRARIES INTERFACE_INCLUDE_DIRECTORIES INTERFACE_COMPILE_DEFINITIONS INTERFACE_COMPILE_OPTIONS) get_property(value TARGET PkgConfig::MAD PROPERTY ${name} ) set_property(TARGET Mad::Mad PROPERTY ${name} ${value}) endforeach() find_package_handle_standard_args(Mad REQUIRED_VARS MAD_LIBRARIES MAD_INCLUDE_DIRS VERSION_VAR MAD_VERSION) # EOF # ))entry(nameFindModPlug.cmakenode(typeregularcontents]# Copyright (C) 2021 Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. find_package(PkgConfig QUIET) if(PKG_CONFIG_FOUND) pkg_search_module(PC_MODPLUG libmodplug) endif() find_path(MODPLUG_INCLUDE_DIRECTORY libmodplug/modplug.h PATHS ${MODPLUG_DIR} ${PC_MODPLUG_INCLUDE_DIRS} PATH_SUFFIXES "include" ) find_library(MODPLUG_LIBRARY modplug PATHS ${MODPLUG_DIR} ${PC_MODPLUG_LIBRARY_DIRS} PATH_SUFFIXES "lib" ) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(ModPlug REQUIRED_VARS MODPLUG_INCLUDE_DIRECTORY MODPLUG_LIBRARY ) add_library(ModPlug::modplug UNKNOWN IMPORTED) set_target_properties(ModPlug::modplug PROPERTIES IMPORTED_LOCATION "${MODPLUG_LIBRARY}" INTERFACE_INCLUDE_DIRECTORIES "${MODPLUG_INCLUDE_DIRECTORY};${PC_MODPLUG_INCLUDE_DIRS}" INTERFACE_LINK_LIBRARIES "${PC_MODPLUG_LINK_LIBRARIES}" INTERFACE_LINK_OPTIONS "${PC_MODPLUG_LINK_OPTIONS}" INTERFACE_COMPILE_DEFINITIONS "${PC_MODPLUG_COMPILE_DEFINITIONS}" INTERFACE_COMPILE_OPTIONS "${PC_MODPLUG_COMPILE_OPTIONS}" ) # EOF # ))entry(name FindOgg.cmakenode(typeregularcontentsõ# Copyright (C) 2021 Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. find_package(PkgConfig QUIET) if(PKG_CONFIG_FOUND) pkg_search_module(PC_OGG ogg) endif() find_path(OGG_INCLUDE_DIRECTORY "ogg/ogg.h" PATHS ${OGG_DIR} ${PC_OGG_INCLUDE_DIRS} PATH_SUFFIXES "include" ) find_library(OGG_LIBRARY ogg PATHS ${OGG_DIR} ${PC_OGG_LIBRARY_DIRS} PATH_SUFFIXES "lib" ) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Ogg REQUIRED_VARS OGG_INCLUDE_DIRECTORY OGG_LIBRARY ) add_library(Ogg::ogg UNKNOWN IMPORTED) set_target_properties(Ogg::ogg PROPERTIES IMPORTED_LOCATION "${OGG_LIBRARY}" INTERFACE_INCLUDE_DIRECTORIES "${OGG_INCLUDE_DIRECTORY};${PC_OGG_INCLUDE_DIRS}" INTERFACE_LINK_LIBRARIES "${PC_OGG_LINK_LIBRARIES}" INTERFACE_LINK_OPTIONS "${PC_OGG_LINK_OPTIONS}" INTERFACE_COMPILE_DEFINITIONS "${PC_OGG_COMPILE_DEFINITIONS}" INTERFACE_COMPILE_OPTIONS "${PC_OGG_COMPILE_OPTIONS}" ) # EOF # ))entry(nameFindOpus.cmakenode(typeregularcontents# Copyright (C) 2021 Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. find_package(PkgConfig QUIET) if(PKG_CONFIG_FOUND) pkg_search_module(PC_OPUS opus) endif() find_path(OPUS_INCLUDE_DIRECTORY opus.h PATHS ${OPUS_DIR} ${PC_OPUS_INCLUDE_DIRS} PATH_SUFFIXES "include/opus" "opus" ) find_library(OPUS_LIBRARY opus PATHS ${OPUS_DIR} ${PC_OPUS_LIBRARY_DIRS} PATH_SUFFIXES "lib" ) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Opus REQUIRED_VARS OPUS_INCLUDE_DIRECTORY OPUS_LIBRARY ) add_library(Opus::opus UNKNOWN IMPORTED) set_target_properties(Opus::opus PROPERTIES IMPORTED_LOCATION "${OPUS_LIBRARY}" INTERFACE_INCLUDE_DIRECTORIES "${OPUS_INCLUDE_DIRECTORY};${PC_OPUS_INCLUDE_DIRS}" INTERFACE_LINK_LIBRARIES "${PC_OPUS_LINK_LIBRARIES}" INTERFACE_LINK_OPTIONS "${PC_OPUS_LINK_OPTIONS}" INTERFACE_COMPILE_DEFINITIONS "${PC_OPUS_COMPILE_DEFINITIONS}" INTERFACE_COMPILE_OPTIONS "${PC_OPUS_COMPILE_OPTIONS}" ) # EOF # ))entry(nameFindOpusfile.cmakenode(typeregularcontentss# Copyright (C) 2021 Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. find_package(PkgConfig QUIET) if(PKG_CONFIG_FOUND) pkg_search_module(PC_OPUSFILE opusfile) endif() find_path(OPUSFILE_INCLUDE_DIRECTORY opusfile.h PATHS ${OPUSFILE_DIR} ${PC_OPUSFILE_INCLUDE_DIRS} PATH_SUFFIXES "include/opus" "opus" ) find_library(OPUSFILE_LIBRARY opusfile PATHS ${OPUSFILE_DIR} ${PC_OPUSFILE_LIBRARY_DIRS} PATH_SUFFIXES "lib" ) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Opusfile REQUIRED_VARS OPUSFILE_INCLUDE_DIRECTORY OPUSFILE_LIBRARY ) add_library(Opusfile::opusfile UNKNOWN IMPORTED) set_target_properties(Opusfile::opusfile PROPERTIES IMPORTED_LOCATION "${OPUSFILE_LIBRARY}" INTERFACE_INCLUDE_DIRECTORIES "${OPUSFILE_INCLUDE_DIRECTORY};${PC_OPUSFILE_INCLUDE_DIRS}" INTERFACE_LINK_LIBRARIES "${PC_OPUSFILE_LINK_LIBRARIES}" INTERFACE_LINK_OPTIONS "${PC_OPUSFILE_LINK_OPTIONS}" INTERFACE_COMPILE_DEFINITIONS "${PC_OPUSFILE_COMPILE_DEFINITIONS}" INTERFACE_COMPILE_OPTIONS "${PC_OPUSFILE_COMPILE_OPTIONS}" ) # EOF # ))entry(nameFindSquirrel.cmakenode(typeregularcontentsB # Copyright (C) 2020 Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. pkg_search_module(SQUIRREL squirrel3 IMPORTED_TARGET) if(NOT SQUIRREL_FOUND) find_library(SQUIRREL_LIBRARIES NAMES "squirrel" "squirrel3" REQUIRED) find_library(SQSTDLIB_LIBRARIES NAMES "sqstdlib" "sqstdlib3" REQUIRED) find_path(SQUIRREL_INCLUDE_DIRS NAMES "squirrel.h" PATH_SUFFIXES "/" "squirrel/" "squirrel3/") if (NOT SQUIRREL_INCLUDE_DIRS) message(FATAL_ERROR "squirrel not found") endif() # merge sqstdlib and squirrel, since pkg-config doesn't tell them appart set(SQUIRREL_LIBRARIES ${SQUIRREL_LIBRARIES} ${SQSTDLIB_LIBRARIES}) add_library(PkgConfig::SQUIRREL INTERFACE IMPORTED) target_link_libraries(PkgConfig::SQUIRREL INTERFACE ${SQUIRREL_LIBRARIES}) target_include_directories(PkgConfig::SQUIRREL INTERFACE ${SQUIRREL_INCLUDE_DIRS}) message(STATUS "Found Squirrel: ${SQUIRREL_LIBRARIES} ${SQUIRREL_INCLUDE_DIRS}") endif() # CMake can't do aliases on imported target, so some hackery # add_library(Squirrel::Squirrel ALIAS PkgConfig::SQUIRREL) add_library(Squirrel::Squirrel INTERFACE IMPORTED) foreach(name INTERFACE_LINK_LIBRARIES INTERFACE_INCLUDE_DIRECTORIES INTERFACE_COMPILE_DEFINITIONS INTERFACE_COMPILE_OPTIONS) get_property(value TARGET PkgConfig::SQUIRREL PROPERTY ${name} ) set_property(TARGET Squirrel::Squirrel PROPERTY ${name} ${value}) endforeach() find_package_handle_standard_args(Squirrel REQUIRED_VARS SQUIRREL_LIBRARIES SQUIRREL_INCLUDE_DIRS VERSION_VAR SQUIRREL_VERSION) # EOF # ))entry(nameFindVorbisfile.cmakenode(typeregularcontentsž# Copyright (C) 2021 Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. find_package(PkgConfig QUIET) if(PKG_CONFIG_FOUND) pkg_search_module(PC_VORBISFILE vorbisfile) endif() find_path(VORBISFILE_INCLUDE_DIRECTORY vorbis/vorbisfile.h PATHS ${VORBISFILE_DIR} ${PC_VORBISFILE_INCLUDE_DIRS} PATH_SUFFIXES "include" ) find_library(VORBISFILE_LIBRARY vorbisfile PATHS ${VORBISFILE_DIR} ${PC_VORBISFILE_LIBRARY_DIRS} PATH_SUFFIXES "lib" ) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(Vorbisfile REQUIRED_VARS VORBISFILE_INCLUDE_DIRECTORY VORBISFILE_LIBRARY ) add_library(Vorbisfile::vorbisfile UNKNOWN IMPORTED) set_target_properties(Vorbisfile::vorbisfile PROPERTIES IMPORTED_LOCATION "${VORBISFILE_LIBRARY}" INTERFACE_INCLUDE_DIRECTORIES "${VORBISFILE_INCLUDE_DIRECTORY};${PC_VORBISFILE_INCLUDE_DIRS}" INTERFACE_LINK_LIBRARIES "${PC_VORBISFILE_LINK_LIBRARIES}" INTERFACE_LINK_OPTIONS "${PC_VORBISFILE_LINK_OPTIONS}" INTERFACE_COMPILE_DEFINITIONS "${PC_VORBISFILE_COMPILE_DEFINITIONS}" INTERFACE_COMPILE_OPTIONS "${PC_VORBISFILE_COMPILE_OPTIONS}" ) # EOF # ))entry(nameGetGitRevisionDescription.cmakenode(typeregularcontentsc# - Returns a version string from Git # # These functions force a re-configure on each git commit so that you can # trust the values of the variables in your build system. # # get_git_head_revision( [ ...]) # # Returns the refspec and sha hash of the current head revision # # git_describe( [ ...]) # # Returns the results of git describe on the source tree, and adjusting # the output so that it tests false if an error occurs. # # git_get_exact_tag( [ ...]) # # Returns the results of git describe --exact-match on the source tree, # and adjusting the output so that it tests false if there was no exact # matching tag. # # git_local_changes() # # Returns either "CLEAN" or "DIRTY" with respect to uncommitted changes. # Uses the return code of "git diff-index --quiet HEAD --". # Does not regard untracked files. # # Requires CMake 2.6 or newer (uses the 'function' command) # # Original Author: # 2009-2010 Ryan Pavlik # http://academic.cleardefinition.com # Iowa State University HCI Graduate Program/VRAC # # Copyright Iowa State University 2009-2010. # Distributed under the Boost Software License, Version 1.0. # (See accompanying file LICENSE_1_0.txt or copy at # http://www.boost.org/LICENSE_1_0.txt) if(__get_git_revision_description) return() endif() set(__get_git_revision_description YES) # We must run the following at "include" time, not at function call time, # to find the path to this module rather than the path to a calling list file get_filename_component(_gitdescmoddir ${CMAKE_CURRENT_LIST_FILE} PATH) function(get_git_head_revision _refspecvar _hashvar) set(GIT_PARENT_DIR "${CMAKE_CURRENT_SOURCE_DIR}") set(GIT_DIR "${GIT_PARENT_DIR}/.git") while(NOT EXISTS "${GIT_DIR}") # .git dir not found, search parent directories set(GIT_PREVIOUS_PARENT "${GIT_PARENT_DIR}") get_filename_component(GIT_PARENT_DIR ${GIT_PARENT_DIR} PATH) if(GIT_PARENT_DIR STREQUAL GIT_PREVIOUS_PARENT) # We have reached the root directory, we are not in git set(${_refspecvar} "GITDIR-NOTFOUND" PARENT_SCOPE) set(${_hashvar} "GITDIR-NOTFOUND" PARENT_SCOPE) return() endif() set(GIT_DIR "${GIT_PARENT_DIR}/.git") endwhile() # check if this is a submodule if(NOT IS_DIRECTORY ${GIT_DIR}) file(READ ${GIT_DIR} submodule) string(REGEX REPLACE "gitdir: (.*)\n$" "\\1" GIT_DIR_RELATIVE ${submodule}) get_filename_component(SUBMODULE_DIR ${GIT_DIR} PATH) get_filename_component(GIT_DIR ${SUBMODULE_DIR}/${GIT_DIR_RELATIVE} ABSOLUTE) endif() set(GIT_DATA "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/git-data") if(NOT EXISTS "${GIT_DATA}") file(MAKE_DIRECTORY "${GIT_DATA}") endif() if(NOT EXISTS "${GIT_DIR}/HEAD") return() endif() set(HEAD_FILE "${GIT_DATA}/HEAD") configure_file("${GIT_DIR}/HEAD" "${HEAD_FILE}" COPYONLY) configure_file("${_gitdescmoddir}/GetGitRevisionDescription.cmake.in" "${GIT_DATA}/grabRef.cmake" @ONLY) include("${GIT_DATA}/grabRef.cmake") set(${_refspecvar} "${HEAD_REF}" PARENT_SCOPE) set(${_hashvar} "${HEAD_HASH}" PARENT_SCOPE) endfunction() function(git_describe _var) if(NOT GIT_FOUND) find_package(Git QUIET) endif() get_git_head_revision(refspec hash) if(NOT GIT_FOUND) set(${_var} "GIT-NOTFOUND" PARENT_SCOPE) return() endif() if(NOT hash) set(${_var} "HEAD-HASH-NOTFOUND" PARENT_SCOPE) return() endif() # TODO sanitize #if((${ARGN}" MATCHES "&&") OR # (ARGN MATCHES "||") OR # (ARGN MATCHES "\\;")) # message("Please report the following error to the project!") # message(FATAL_ERROR "Looks like someone's doing something nefarious with git_describe! Passed arguments ${ARGN}") #endif() #message(STATUS "Arguments to execute_process: ${ARGN}") execute_process(COMMAND "${GIT_EXECUTABLE}" describe ${hash} ${ARGN} WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" RESULT_VARIABLE res OUTPUT_VARIABLE out ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) if(NOT res EQUAL 0) set(out "${out}-${res}-NOTFOUND") endif() set(${_var} "${out}" PARENT_SCOPE) endfunction() function(git_get_exact_tag _var) git_describe(out --exact-match ${ARGN}) set(${_var} "${out}" PARENT_SCOPE) endfunction() function(git_local_changes _var) if(NOT GIT_FOUND) find_package(Git QUIET) endif() get_git_head_revision(refspec hash) if(NOT GIT_FOUND) set(${_var} "GIT-NOTFOUND" PARENT_SCOPE) return() endif() if(NOT hash) set(${_var} "HEAD-HASH-NOTFOUND" PARENT_SCOPE) return() endif() execute_process(COMMAND "${GIT_EXECUTABLE}" diff-index --quiet HEAD -- WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" RESULT_VARIABLE res OUTPUT_VARIABLE out ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE) if(res EQUAL 0) set(${_var} "CLEAN" PARENT_SCOPE) else() set(${_var} "DIRTY" PARENT_SCOPE) endif() endfunction() ))entry(name"GetGitRevisionDescription.cmake.innode(typeregularcontents# # Internal file for GetGitRevisionDescription.cmake # # Requires CMake 2.6 or newer (uses the 'function' command) # # Original Author: # 2009-2010 Ryan Pavlik # http://academic.cleardefinition.com # Iowa State University HCI Graduate Program/VRAC # # Copyright Iowa State University 2009-2010. # Distributed under the Boost Software License, Version 1.0. # (See accompanying file LICENSE_1_0.txt or copy at # http://www.boost.org/LICENSE_1_0.txt) set(HEAD_HASH) file(READ "@HEAD_FILE@" HEAD_CONTENTS LIMIT 1024) string(STRIP "${HEAD_CONTENTS}" HEAD_CONTENTS) if(HEAD_CONTENTS MATCHES "ref") # named branch string(REPLACE "ref: " "" HEAD_REF "${HEAD_CONTENTS}") if(EXISTS "@GIT_DIR@/${HEAD_REF}") configure_file("@GIT_DIR@/${HEAD_REF}" "@GIT_DATA@/head-ref" COPYONLY) else() configure_file("@GIT_DIR@/packed-refs" "@GIT_DATA@/packed-refs" COPYONLY) file(READ "@GIT_DATA@/packed-refs" PACKED_REFS) if(${PACKED_REFS} MATCHES "([0-9a-z]*) ${HEAD_REF}") set(HEAD_HASH "${CMAKE_MATCH_1}") endif() endif() else() # detached HEAD configure_file("@GIT_DIR@/HEAD" "@GIT_DATA@/head-ref" COPYONLY) endif() if(NOT HEAD_HASH) file(READ "@GIT_DATA@/head-ref" HEAD_HASH LIMIT 1024) string(STRIP "${HEAD_HASH}" HEAD_HASH) endif() ))entry(nameGetProjectVersion.cmakenode(typeregularcontents # Copyright Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. # Requires the following files from # https://github.com/rpavlik/cmake-modules: # * GetGitRevisionDescription.cmake # * GetGitRevisionDescription.cmake.in include(GetGitRevisionDescription) function(get_project_version _outputvar) if(EXISTS "${CMAKE_SOURCE_DIR}/.git") git_describe(GIT_REPO_VERSION "--tags" "--match" "v[0-9]*.[0-9]*.[0-9]*") string(REGEX REPLACE "^v([0-9].*)" "\\1" CLEANED_GIT_REPO_VERSION "${GIT_REPO_VERSION}") if(CLEANED_GIT_REPO_VERSION) set(${_outputvar} "${CLEANED_GIT_REPO_VERSION}" PARENT_SCOPE) else() set(${_outputvar} "${GIT_REPO_VERSION}" PARENT_SCOPE) endif() elseif(EXISTS "${CMAKE_SOURCE_DIR}/VERSION") file(STRINGS "${CMAKE_SOURCE_DIR}/VERSION" PROJECT_VERSION) if(PROJECT_VERSION MATCHES "^\\$") # gitattribute $Format$ was not expanded set(${_outputvar} "unknown-version" PARENT_SCOPE) else() # strip leading 'v', in case VERSION is generated from "git describe" string(REGEX REPLACE "^v(.*)" "\\1" PROJECT_VERSION "${PROJECT_VERSION}") set(${_outputvar} "${PROJECT_VERSION}" PARENT_SCOPE) endif() else() # optain version from directory get_filename_component(BASENAME "${CMAKE_SOURCE_DIR}" NAME) string(REGEX REPLACE "^${PROJECT_NAME}[-_]v?(.*)" "\\1" DIRECTORY_VERSION "${BASENAME}") if(NOT "${DIRECTORY_VERSION}" STREQUAL "${BASENAME}") set(${_outputvar} "${DIRECTORY_VERSION}" PARENT_SCOPE) else() set(${_outputvar} "unknown-version" PARENT_SCOPE) endif() endif() endfunction() get_project_version(PROJECT_VERSION) message(STATUS "Project Name: ${PROJECT_NAME}") message(STATUS "Project Version: ${PROJECT_VERSION}") # EOF # ))entry(nameInstallWithWrapper.cmakenode(typeregularcontentsē# Copyright (C) 2020 Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. function(install_with_wrapper) cmake_parse_arguments(ARGS "" "OPTION;DATADIR;DESTINATION" "TARGETS" ${ARGN}) if(NOT ARGS_OPTION) set(ARGS_OPTION "--datadir") endif() if(NOT ARGS_DATADIR) set(ARGS_DATADIR "${CMAKE_INSTALL_FULL_DATADIR}/${PROJECT_NAME}") endif() if(NOT ARGS_LIBEXECDIR) set(ARGS_LIBEXECDIR "${CMAKE_INSTALL_FULL_LIBEXECDIR}/${PROJECT_NAME}") endif() if(NOT ARGS_DESTINATION) set(ARGS_DESTINATION "${CMAKE_INSTALL_FULL_BINDIR}") endif() foreach(TARGET ${ARGS_TARGETS}) install(TARGETS ${TARGET} RUNTIME DESTINATION "${ARGS_LIBEXECDIR}") get_target_property(TARGET_EXENAME ${TARGET} OUTPUT_NAME) if(NOT TARGET_EXENAME) set(TARGET_EXENAME "${TARGET}") endif() file(WRITE "${CMAKE_BINARY_DIR}/${TARGET_EXENAME}-wrapper.sh" "#!/bin/sh\n" "exec \"${ARGS_LIBEXECDIR}/${TARGET_EXENAME}\"" " ${ARGS_OPTION} \"${ARGS_DATADIR}\" \"$@\"\n") install(PROGRAMS "${CMAKE_BINARY_DIR}/${TARGET_EXENAME}-wrapper.sh" RENAME ${TARGET_EXENAME} DESTINATION "${ARGS_DESTINATION}") endforeach() endfunction() # EOF # ))entry(nameMaximumWarnings.cmakenode(typeregularcontents’ # Copyright (C) 2019 Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. # Fill the variable ${WARNINGS_CXX_FLAGS} with about as much warnings # flags as seem sensible for C++. Add WARNINGS and WERROR options to enable the flags # Old file for backward compatibility only, see # tinycmmc/MaximumWarnings.cmake for the new versions option(WARNINGS "Switch on extra warnings" OFF) option(WERROR "Turn warnings into errors" OFF) if(WERROR) list(APPEND WARNINGS_CXX_FLAGS -Werror) endif() if(WARNINGS) list(APPEND WARNINGS_CXX_FLAGS -Wall -Wextra) if(CMAKE_COMPILER_IS_GNUCXX) list(APPEND WARNINGS_CXX_FLAGS -Wcast-align -Wcast-qual -Wconversion -Wctor-dtor-privacy -Wdisabled-optimization -Wdouble-promotion -Weffc++ -Wformat=2 -Winit-self -Winvalid-pch -Wlogical-op -Wmissing-format-attribute -Wmissing-noreturn -Wno-suggest-attribute=noreturn -Wno-unused-parameter -Wnon-virtual-dtor -Wold-style-cast -Woverloaded-virtual -Wpacked -Wredundant-decls -Wshadow -Wsign-promo -Wstrict-null-sentinel -Wsuggest-override -Wunreachable-code -Wzero-as-null-pointer-constant -pedantic # Missing include dirs cause no harm and are sometimes tricky to # avoid mulitplatform buildss # -Wmissing-include-dirs # Creates impossible to solve conflicts when combined with # -Wconversion when doing both and 32/64bit builds # -Wuseless-cast ) if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 8) list(APPEND WARNINGS_CXX_FLAGS -Wint-in-bool-context) endif() elseif(CMAKE_CXX_COMPILER_ID MATCHES "Clang") list(APPEND WARNINGS_CXX_FLAGS -Weverything # flags that we deliberately ignore -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-float-equal -Wno-padded -Wno-weak-vtables -Wno-disabled-macro-expansion -Wno-documentation -Wno-reserved-id-macro -Wno-sign-conversion -Wno-return-std-move-in-c++11 -Wno-gnu-zero-variadic-macro-arguments -Wno-poison-system-directories # warnings that should probably be fixed in code -Wno-documentation-unknown-command -Wno-inconsistent-missing-destructor-override -Wno-deprecated-dynamic-exception-spec -Wno-deprecated -Wno-switch-enum -Wno-covered-switch-default -Wno-exit-time-destructors -Wno-global-constructors -Wno-duplicate-enum -Wno-unused-parameter -Wno-old-style-cast -Wno-unreachable-code-break -Wno-double-promotion -Wno-unused-private-field -Wno-unused-exception-parameter ) endif() endif() # EOF # ))entry(nameTinyCMMC.cmakenode(typeregularcontents# Copyright (C) 2022 Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. include(GNUInstallDirs) include(GetProjectVersion) include(InstallWithWrapper) include(ClangTidy) include(tinycmmc/MaximumWarnings) include(tinycmmc/FindDependency) include(tinycmmc/ExportAndInstallLibrary) WarningsWerrorOptions() set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF) if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/tests) option(BUILD_TESTS "Build test cases" OFF) endif() if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/extra) option(BUILD_EXTRA "Build extra stuff" OFF) endif() # EOF # ))entry(nametinycmmcnode(type directoryentry(nameExportAndInstallLibrary.cmakenode(typeregularcontentsP# Copyright (C) 2022 Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. macro(tinycmmc_export_and_install_library _NAME) install(TARGETS "${_NAME}" EXPORT "${_NAME}" ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${_NAME}") add_library(${_NAME}::${_NAME} ALIAS ${_NAME}) string(TOLOWER "${_NAME}" ${_NAME}_LOWERCASE) include(CMakePackageConfigHelpers) configure_package_config_file("${${_NAME}_LOWERCASE}-config.cmake.in" "${${_NAME}_LOWERCASE}-config.cmake" INSTALL_DESTINATION "${CMAKE_INSTALL_LIBDIR}/${_NAME}") write_basic_package_version_file("${${_NAME}_LOWERCASE}-config-version.cmake" VERSION "${PROJECT_VERSION}" COMPATIBILITY SameMinorVersion) export(EXPORT "${_NAME}" NAMESPACE "${_NAME}::" FILE "${${_NAME}_LOWERCASE}-targets.cmake") install(EXPORT "${_NAME}" FILE "${${_NAME}_LOWERCASE}-targets.cmake" NAMESPACE "${_NAME}::" DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${_NAME}") install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${${_NAME}_LOWERCASE}-config-version.cmake" "${CMAKE_CURRENT_BINARY_DIR}/${${_NAME}_LOWERCASE}-config.cmake" DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${_NAME}") endmacro() # EOF # ))entry(nameFindDependency.cmakenode(typeregularcontentsA# Copyright (C) 2022 Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. macro(tinycmmc_find_dependency _NAME) find_package(${_NAME} QUIET) if(${${_NAME}_FOUND}) message(STATUS "Found ${_NAME}: ${${_NAME}_DIR}") else() message(STATUS "Package ${_NAME} not found, trying external/${_NAME}") if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/external/${_NAME}/CMakeLists.txt") message(FATAL_ERROR "The git submodule \"external/${_NAME}\" could not be found. " "To retrieve it, run:\n" " git submodule update --init --recursive\n") else() set(BUILD_TESTS OFF) add_subdirectory(external/${_NAME} EXCLUDE_FROM_ALL) message(STATUS "Found ${_NAME}: external/${_NAME}") endif() endif() endmacro() # EOF # ))entry(nameMaximumWarnings.cmakenode(typeregularcontentsī# Copyright (C) 2019 Ingo Ruhnke # # This software is provided 'as-is', without any express or implied # warranty. In no event will the authors be held liable for any damages # arising from the use of this software. # # Permission is granted to anyone to use this software for any purpose, # including commercial applications, and to alter it and redistribute it # freely, subject to the following restrictions: # # 1. The origin of this software must not be misrepresented; you must not # claim that you wrote the original software. If you use this software # in a product, an acknowledgment in the product documentation would be # appreciated but is not required. # 2. Altered source versions must be plainly marked as such, and must not be # misrepresented as being the original software. # 3. This notice may not be removed or altered from any source distribution. # Fill the variable ${TINYCMMC_WARNINGS_CXX_FLAGS} with about as much warnings # flags as seem sensible for C++. Add WARNINGS and WERROR options to enable the flags set(TINYCMMC_WERROR_CXX_FLAGS -Werror) set(TINYCMMC_MAXIMUM_WARNINGS_CXX_FLAGS -Wall -Wextra) if(CMAKE_COMPILER_IS_GNUCXX) list(APPEND TINYCMMC_MAXIMUM_WARNINGS_CXX_FLAGS -Wcast-align -Wcast-qual -Wconversion -Wctor-dtor-privacy -Wdisabled-optimization -Wdouble-promotion -Weffc++ -Wformat=2 -Winit-self -Winvalid-pch -Wlogical-op -Wmissing-format-attribute -Wmissing-noreturn -Wno-suggest-attribute=noreturn -Wno-unused-parameter -Wnon-virtual-dtor -Wold-style-cast -Woverloaded-virtual -Wpacked -Wredundant-decls -Wshadow -Wsign-promo -Wstrict-null-sentinel -Wsuggest-override -Wunreachable-code -Wzero-as-null-pointer-constant -pedantic # Missing include dirs cause no harm and are sometimes tricky to # avoid mulitplatform buildss # -Wmissing-include-dirs # Creates impossible to solve conflicts when combined with # -Wconversion when doing both and 32/64bit builds # -Wuseless-cast ) if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 8) list(APPEND TINYCMMC_MAXIMUM_WARNINGS_CXX_FLAGS -Wint-in-bool-context) endif() elseif(CMAKE_CXX_COMPILER_ID MATCHES "Clang") list(APPEND TINYCMMC_MAXIMUM_WARNINGS_CXX_FLAGS -Weverything # flags that we deliberately ignore -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-float-equal -Wno-padded -Wno-weak-vtables -Wno-disabled-macro-expansion -Wno-documentation -Wno-reserved-id-macro -Wno-sign-conversion -Wno-return-std-move-in-c++11 -Wno-gnu-zero-variadic-macro-arguments -Wno-poison-system-directories # warnings that should probably be fixed in code -Wno-documentation-unknown-command -Wno-inconsistent-missing-destructor-override -Wno-deprecated-dynamic-exception-spec -Wno-deprecated -Wno-switch-enum -Wno-covered-switch-default -Wno-exit-time-destructors -Wno-global-constructors -Wno-duplicate-enum -Wno-unused-parameter -Wno-old-style-cast -Wno-unreachable-code-break -Wno-double-promotion -Wno-unused-private-field -Wno-unused-exception-parameter ) endif() macro(WarningsWerrorOptions) option(WARNINGS "Switch on extra warnings" OFF) option(WERROR "Turn warnings into errors" OFF) if(WERROR) list(APPEND TINYCMMC_WARNINGS_CXX_FLAGS ${TINYCMMC_WERROR_CXX_FLAGS}) message(STATUS "WERROR enabled") else() message(STATUS "WERROR disabled") endif() if(WARNINGS) list(APPEND TINYCMMC_WARNINGS_CXX_FLAGS ${TINYCMMC_MAXIMUM_WARNINGS_CXX_FLAGS}) message(STATUS "WARNINGS enabled: ${TINYCMMC_MAXIMUM_WARNINGS_CXX_FLAGS}") else() message(STATUS "WARNINGS disabled") endif() endmacro() # EOF # )))))))))))))