summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorSteven G. Johnson <stevenj@mit.edu>2019-03-30 13:37:34 -0400
committerGitHub <noreply@github.com>2019-03-30 13:37:34 -0400
commit5ae11afe8f0d5cbffdac742b0b1164a31af99b83 (patch)
tree356aa4b09ed2ab47ca9b61a6066ec313ea8347eb /CMakeLists.txt
parent089a3af7eee09a7b0613b01a9d3dd739936988e0 (diff)
downloadlibutf8proc-5ae11afe8f0d5cbffdac742b0b1164a31af99b83.tar.gz
libutf8proc-5ae11afe8f0d5cbffdac742b0b1164a31af99b83.tar.bz2
rebased cmake updates (#147)
* Use a target property instead of CMAKE_C_FLAGS It is a global property, which is not great when importing utf8proc in other CMake projects. * Use target properties instead of add_definitions It modifies builds settings globally, which is not great when using the library as part of a bigger CMake build * Expose header search path with target_include_directories This makes it possible to use utf8proc in a larger CMake based project with add_subdirectory(utf8proc) target_link_libraries(my_app utf8proc) * more rebase fixes
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt14
1 files changed, 10 insertions, 4 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e0d3f3f..d2af376 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -13,15 +13,14 @@ set(SO_MAJOR 2)
set(SO_MINOR 2)
set(SO_PATCH 0)
-if (NOT MSVC)
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2 -std=c99 -pedantic -Wall")
-endif ()
-
add_library (utf8proc
utf8proc.c
utf8proc.h
)
+# expose header path, for when this is part of a larger cmake project
+target_include_directories(utf8proc PUBLIC ../utf8proc)
+
if (BUILD_SHARED_LIBS)
# Building shared library
else()
@@ -34,6 +33,13 @@ endif()
target_compile_definitions(utf8proc PRIVATE "UTF8PROC_EXPORTS")
+if (NOT MSVC)
+ set_target_properties(
+ utf8proc PROPERTIES
+ COMPILE_FLAGS "-O2 -std=c99 -pedantic -Wall"
+ )
+endif ()
+
set_target_properties (utf8proc PROPERTIES
POSITION_INDEPENDENT_CODE ON
VERSION "${SO_MAJOR}.${SO_MINOR}.${SO_PATCH}"