From 839c76c814a01e3852f5da1c4e294e8668e13c4f Mon Sep 17 00:00:00 2001 From: Sander Vrijders Date: Tue, 23 Feb 2016 15:09:58 +0100 Subject: build: Require usage of C89 This requires the usage of the C89 standard for all source files. It also fixes a wrong check for the compiler flags (was checking this for CXX compiler instead of the C compiler). --- CMakeLists.txt | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 1ca05c95..c3495e6a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.1.0) set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake") #set(CMAKE_VERBOSE_MAKEFILE ON) -project(ouroboros) +project(ouroboros C) include(GitVersionGen) GIT_VERSION_GEN() @@ -27,13 +27,16 @@ message(STATUS "Package URL is: ${PACKAGE_URL}") message(STATUS "Package bug-report address: ${PACKAGE_BUGREPORT}") message(STATUS "Package install prefix: ${CMAKE_INSTALL_PREFIX}") +# Enable C89 standard +set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c89") + include(FindPkgConfig) include(CompilerUtils) -test_and_set_cxx_compiler_flag_global(-Wall) -test_and_set_cxx_compiler_flag_global(-Werror) -test_and_set_cxx_compiler_flag_global(-Wundef) -test_and_set_cxx_compiler_flag_global(-fmax-errors=1) +test_and_set_c_compiler_flag_global(-Wall) +test_and_set_c_compiler_flag_global(-Werror) +test_and_set_c_compiler_flag_global(-Wundef) +test_and_set_c_compiler_flag_global(-fmax-errors=1) configure_file( "${CMAKE_CURRENT_SOURCE_DIR}/ouroboros.pc.in" @@ -46,7 +49,7 @@ add_subdirectory(include) add_subdirectory(src) add_subdirectory(tests) -# We may have to move this to the subdirs +# FIXME: We may have to move this to the subdirs include(MacroAddCompileFlags) if (CMAKE_BUILD_TYPE MATCHES Debug) MACRO_ADD_COMPILE_FLAGS(ipcpd -DCONFIG_OUROBOROS_DEBUG) -- cgit v1.2.3 From 61670a5b3d37ee8bb611c5d08cc216f4b6d9570b Mon Sep 17 00:00:00 2001 From: Sander Vrijders Date: Tue, 23 Feb 2016 15:54:40 +0100 Subject: build: Fix check for C89 The flag for the C89 standard was added without checking if the compiler supports it. This has been fixed. Also, the feature summary has been (temporarily) disabled. --- CMakeLists.txt | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index c3495e6a..8da3ee54 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -27,12 +27,10 @@ message(STATUS "Package URL is: ${PACKAGE_URL}") message(STATUS "Package bug-report address: ${PACKAGE_BUGREPORT}") message(STATUS "Package install prefix: ${CMAKE_INSTALL_PREFIX}") -# Enable C89 standard -set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c89") - include(FindPkgConfig) include(CompilerUtils) +test_and_set_c_compiler_flag_global(-std=c89) test_and_set_c_compiler_flag_global(-Wall) test_and_set_c_compiler_flag_global(-Werror) test_and_set_c_compiler_flag_global(-Wundef) @@ -58,8 +56,8 @@ if (CMAKE_BUILD_TYPE MATCHES Debug) MACRO_ADD_COMPILE_FLAGS(irm -DCONFIG_OUROBOROS_DEBUG) endif (CMAKE_BUILD_TYPE MATCHES Debug) -include(FeatureSummary) -print_enabled_features() +#include(FeatureSummary) +#print_enabled_features() # Uninstall target configure_file( -- cgit v1.2.3