aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEthan Sommer <e5ten.arch@gmail.com>2020-06-05 16:44:53 -0400
committerEthan Sommer <e5ten.arch@gmail.com>2020-06-05 17:18:44 -0400
commit0c279d81e722e8e7c285dae22666675787bd30e9 (patch)
treefce87003a479c8823c711ce089cef337dd26c8be
parentccdf495f7b3b979954d7bc7041ddd2216eb1026d (diff)
cmake: specify c99
Set standard to c99, require it, disable language extensions. Define _POSIX_C_SOURCE to 200809L so time.h declares struct timespec. Add -Wpedantic to find use of language extensions. snd_card_plugin.c: remove one unnecessary ';' to make -Wpedantic work
-rw-r--r--CMakeLists.txt9
-rw-r--r--src/snd_card_plugin.c2
2 files changed, 8 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9be12b6..f6aea98 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -6,6 +6,10 @@ execute_process(COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/scripts/version.sh -s print
project("TinyALSA" VERSION ${TINYALSA_VERSION} LANGUAGES C)
+set(CMAKE_C_STANDARD 99)
+set(CMAKE_C_STANDARD_REQUIRED ON)
+set(CMAKE_C_EXTENSIONS OFF)
+
# Options
option(BUILD_SHARED_LIBS "Build shared libraries" ON)
option(TINYALSA_USES_PLUGINS "Whether or not to build with plugin support" OFF)
@@ -38,7 +42,8 @@ target_include_directories("tinyalsa" PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
$<INSTALL_INTERFACE:include>)
target_compile_definitions("tinyalsa" PRIVATE
- $<$<BOOL:${TINYALSA_USES_PLUGINS}>:TINYALSA_USES_PLUGINS>)
+ $<$<BOOL:${TINYALSA_USES_PLUGINS}>:TINYALSA_USES_PLUGINS>
+ PUBLIC _POSIX_C_SOURCE=200809L)
target_link_libraries("tinyalsa" PUBLIC ${CMAKE_DL_LIBS})
# Examples
@@ -68,7 +73,7 @@ target_link_libraries("tinywavinfo" PRIVATE m)
# Add C warning flags
include(CheckCCompilerFlag)
-foreach(FLAG IN ITEMS -Wall -Wextra -Werror -Wfatal-errors)
+foreach(FLAG IN ITEMS -Wall -Wextra -Wpedantic -Werror -Wfatal-errors)
string(TOUPPER "HAVE${FLAG}" HAVE_VAR)
string(REPLACE "-" "_" HAVE_VAR "${HAVE_VAR}")
check_c_compiler_flag("${FLAG}" "${HAVE_VAR}")
diff --git a/src/snd_card_plugin.c b/src/snd_card_plugin.c
index 17912a2..c6d4baf 100644
--- a/src/snd_card_plugin.c
+++ b/src/snd_card_plugin.c
@@ -81,7 +81,7 @@ enum snd_node_type snd_utils_get_node_type(struct snd_node *node)
node->ops->get_int(node->dev_node, "type", &val);
return val;
-};
+}
static int snd_utils_resolve_symbols(struct snd_node *node)
{