Browse Source

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
pull/149/head
Steven G. Johnson 6 years ago
committed by GitHub
parent
commit
5ae11afe8f
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 14
      CMakeLists.txt

14
CMakeLists.txt

@ -13,15 +13,14 @@ set(SO_MAJOR 2)
set(SO_MINOR 2) set(SO_MINOR 2)
set(SO_PATCH 0) set(SO_PATCH 0)
if (NOT MSVC)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2 -std=c99 -pedantic -Wall")
endif ()
add_library (utf8proc add_library (utf8proc
utf8proc.c utf8proc.c
utf8proc.h 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) if (BUILD_SHARED_LIBS)
# Building shared library # Building shared library
else() else()
@ -34,6 +33,13 @@ endif()
target_compile_definitions(utf8proc PRIVATE "UTF8PROC_EXPORTS") 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 set_target_properties (utf8proc PROPERTIES
POSITION_INDEPENDENT_CODE ON POSITION_INDEPENDENT_CODE ON
VERSION "${SO_MAJOR}.${SO_MINOR}.${SO_PATCH}" VERSION "${SO_MAJOR}.${SO_MINOR}.${SO_PATCH}"

Loading…
Cancel
Save