summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt24
1 files changed, 18 insertions, 6 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 313092a..77f8ada 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -34,18 +34,18 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
# OF THE POSSIBILITY OF SUCH DAMAGE.
#
-cmake_minimum_required(VERSION 3.3)
+cmake_minimum_required(VERSION 3.5.0)
project(uriparser
VERSION
- 0.9.7
+ 0.9.8
LANGUAGES
C
)
# See https://verbump.de/ for what these numbers do
set(URIPARSER_SO_CURRENT 1)
-set(URIPARSER_SO_REVISION 30)
+set(URIPARSER_SO_REVISION 31)
set(URIPARSER_SO_AGE 0)
include(CheckCCompilerFlag)
@@ -58,7 +58,12 @@ include(GNUInstallDirs)
#
# Configuration
#
-option(BUILD_SHARED_LIBS "Build shared libraries (rather than static ones)" ON)
+if(DEFINED BUILD_SHARED_LIBS)
+ set(_URIPARSER_SHARED_LIBS_DEFAULT ${BUILD_SHARED_LIBS})
+else()
+ set(_URIPARSER_SHARED_LIBS_DEFAULT ON)
+endif()
+option(URIPARSER_SHARED_LIBS "Build shared libraries (rather than static ones)" ${_URIPARSER_SHARED_LIBS_DEFAULT})
option(URIPARSER_BUILD_DOCS "Build API documentation (requires Doxygen, Graphviz, and (optional) Qt's qhelpgenerator)" ON)
option(URIPARSER_BUILD_TESTS "Build test suite (requires GTest >=1.8.0)" ON)
option(URIPARSER_BUILD_TOOLS "Build tools (e.g. CLI \"uriparse\")" ON)
@@ -83,6 +88,12 @@ if(URIPARSER_BUILD_TESTS)
enable_language(CXX)
endif()
+if(URIPARSER_SHARED_LIBS)
+ set(_URIPARSER_STATIC_OR_SHARED SHARED)
+else()
+ set(_URIPARSER_STATIC_OR_SHARED STATIC)
+endif()
+
macro(uriparser_apply_msvc_runtime_to ref)
string(REGEX REPLACE "/M[DT]d?" ${URIPARSER_MSVC_RUNTIME} ${ref} "${${ref}}")
endmacro()
@@ -151,6 +162,7 @@ set(LIBRARY_CODE_FILES
)
add_library(uriparser
+ ${_URIPARSER_STATIC_OR_SHARED}
${API_HEADER_FILES}
${LIBRARY_CODE_FILES}
)
@@ -175,7 +187,7 @@ set_property(
)
target_compile_definitions(uriparser PRIVATE URI_LIBRARY_BUILD)
-if (NOT BUILD_SHARED_LIBS)
+if (NOT URIPARSER_SHARED_LIBS)
target_compile_definitions(uriparser PUBLIC URI_STATIC_BUILD)
endif()
if(NOT URIPARSER_BUILD_CHAR)
@@ -464,7 +476,7 @@ message(STATUS "================================================================
message(STATUS "")
message(STATUS "Configuration")
message(STATUS " Build type ............. ${CMAKE_BUILD_TYPE}")
-message(STATUS " Shared libraries ....... ${BUILD_SHARED_LIBS}")
+message(STATUS " Shared libraries ....... ${URIPARSER_SHARED_LIBS}")
message(STATUS " Compiler flags")
message(STATUS " C .................... ${CMAKE_C_FLAGS}")
message(STATUS " C++ .................. ${CMAKE_CXX_FLAGS}")