summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authoriphydf <iphydf@users.noreply.github.com>2018-01-22 09:37:31 +0000
committeriphydf <iphydf@users.noreply.github.com>2018-01-22 21:05:30 +0000
commit8f1bbcf83e23286ebdfd17b83d886fc8f0a3eb2a (patch)
tree8b73a35a6104159f5055f1e0b42a63004758bc8f /cmake
parente6c04ef0287a69c453f129778ef35932e0dff4b2 (diff)
Use <stdlib.h> for alloca on FreeBSD.
https://www.freebsd.org/cgi/man.cgi?alloca If stdlib.h does not define alloca, and we're using GCC (or Clang), we define the macro ourselves in terms of a GCC builtin.
Diffstat (limited to 'cmake')
-rw-r--r--cmake/ModulePackage.cmake24
1 files changed, 0 insertions, 24 deletions
diff --git a/cmake/ModulePackage.cmake b/cmake/ModulePackage.cmake
index 8867fc45..245e41eb 100644
--- a/cmake/ModulePackage.cmake
+++ b/cmake/ModulePackage.cmake
@@ -1,6 +1,5 @@
1option(ENABLE_SHARED "Build shared (dynamic) libraries for all modules" ON) 1option(ENABLE_SHARED "Build shared (dynamic) libraries for all modules" ON)
2option(ENABLE_STATIC "Build static libraries for all modules" ON) 2option(ENABLE_STATIC "Build static libraries for all modules" ON)
3option(COMPILE_AS_CXX "Compile all C code as C++ code" OFF)
4 3
5if(NOT ENABLE_SHARED AND NOT ENABLE_STATIC) 4if(NOT ENABLE_SHARED AND NOT ENABLE_STATIC)
6 message(WARNING 5 message(WARNING
@@ -12,28 +11,6 @@ endif()
12 11
13find_package(PkgConfig) 12find_package(PkgConfig)
14 13
15if(COMPILE_AS_CXX)
16 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__STDC_FORMAT_MACROS=1")
17 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__STDC_LIMIT_MACROS=1")
18endif()
19
20macro(set_source_language)
21 if(COMPILE_AS_CXX)
22 foreach(srcfile ${ARGN})
23 get_filename_component(srcext ${srcfile} EXT)
24 if(${srcext} STREQUAL ".c")
25 set_source_files_properties(${srcfile} PROPERTIES LANGUAGE CXX)
26 endif()
27 endforeach()
28 endif()
29endmacro()
30
31function(add_binary exec)
32 set_source_language(${ARGN})
33
34 add_executable(${exec} ${ARGN})
35endfunction()
36
37function(pkg_use_module mod pkg) 14function(pkg_use_module mod pkg)
38 if(PKG_CONFIG_FOUND) 15 if(PKG_CONFIG_FOUND)
39 pkg_search_module(${mod} ${pkg}) 16 pkg_search_module(${mod} ${pkg})
@@ -58,7 +35,6 @@ macro(add_submodule super lib)
58endmacro() 35endmacro()
59 36
60function(add_module lib) 37function(add_module lib)
61 set_source_language(${ARGN})
62 set(${lib}_SOURCES ${ARGN} PARENT_SCOPE) 38 set(${lib}_SOURCES ${ARGN} PARENT_SCOPE)
63 39
64 if(ENABLE_SHARED) 40 if(ENABLE_SHARED)