diff --git a/CMakeLists.txt b/CMakeLists.txt index 13dafb774807146995614862a1e01b73a523401a..e2b7fd955617772cbc59431be0764bcf396dfaba 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,23 +9,33 @@ # ### cmake_minimum_required (VERSION 3.0) -project (LIBHQR C) +project (HQR C) + +# Check if compiled independtly or within another project +if ( ${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_CURENT_SOURCE_DIR}) + set( BUILD_SUBPROJECT OFF ) +else() + set( BUILD_SUBPROJECT ON ) +endif() + list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake_modules") -include(GenPkgConfig) +include(GenHQRPkgConfig) # The current version number -set (LIBHQR_VERSION_MAJOR 0) -set (LIBHQR_VERSION_MINOR 1) -set (LIBHQR_VERSION_MICRO 0) +set (HQR_VERSION_MAJOR 0) +set (HQR_VERSION_MINOR 1) +set (HQR_VERSION_MICRO 0) -set( LIBHQR_VERSION "${LIBHQR_VERSION_MAJOR}.${LIBHQR_VERSION_MINOR}.${LIBHQR_VERSION_MICRO}" ) +set( HQR_VERSION "${HQR_VERSION_MAJOR}.${HQR_VERSION_MINOR}.${HQR_VERSION_MICRO}" ) ### Misc options -option(BUILD_SHARED_LIBS - "Build shared libraries" OFF) -if(NOT CMAKE_BUILD_TYPE) - set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING "Choose the type of build, options are None, Debug, Release, RelWithDebInfo and MinSizeRel." FORCE) -endif(NOT CMAKE_BUILD_TYPE) +if ( NOT BUILD_SUBPROJECT ) + option(BUILD_SHARED_LIBS + "Build shared libraries" OFF) + if(NOT CMAKE_BUILD_TYPE) + set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING "Choose the type of build, options are None, Debug, Release, RelWithDebInfo and MinSizeRel." FORCE) + endif(NOT CMAKE_BUILD_TYPE) +endif() set(hdrs include/common.h @@ -56,7 +66,7 @@ install(FILES install(TARGETS hqr DESTINATION lib) -generate_pkgconfig_file() +generate_hqr_pkgconfig_file() #-- Add a custom target to generate tags add_custom_target (tags diff --git a/cmake_modules/GenPkgConfig.cmake b/cmake_modules/GenHQRPkgConfig.cmake similarity index 89% rename from cmake_modules/GenPkgConfig.cmake rename to cmake_modules/GenHQRPkgConfig.cmake index ecb7163a0ad462e830f5904da560a8ccc86677eb..6335666ef7e5a2b4039f5767a10e76600456db0f 100644 --- a/cmake_modules/GenPkgConfig.cmake +++ b/cmake_modules/GenHQRPkgConfig.cmake @@ -78,23 +78,23 @@ ENDMACRO(CLEAN_LIB_LIST) # GENERATE_PKGCONFIG_FILE: generate files libhqr.pc # ### -MACRO(GENERATE_PKGCONFIG_FILE) +MACRO(GENERATE_HQR_PKGCONFIG_FILE) - SET(LIBHQR_PKGCONFIG_LIBS "-lhqr") - SET(LIBHQR_PKGCONFIG_LIBS_PRIVATE "-lm") - SET(LIBHQR_PKGCONFIG_REQUIRED "") - SET(LIBHQR_PKGCONFIG_REQUIRED_PRIVATE "") + SET(HQR_PKGCONFIG_LIBS "-lhqr") + SET(HQR_PKGCONFIG_LIBS_PRIVATE "-lm") + SET(HQR_PKGCONFIG_REQUIRED "") + SET(HQR_PKGCONFIG_REQUIRED_PRIVATE "") CLEAN_LIB_LIST(LIBHQR) - SET(_output_libhqr_file "${CMAKE_BINARY_DIR}/libhqr.pc") + SET(_output_libhqr_file "${CMAKE_BINARY_DIR}/hqr.pc") CONFIGURE_FILE( - "${CMAKE_CURRENT_SOURCE_DIR}/lib/pkgconfig/libhqr.pc.in" - "${_output_libhqr_file}" + "${CMAKE_CURRENT_SOURCE_DIR}/lib/pkgconfig/hqr.pc.in" + "${_output_hqr_file}" @ONLY ) INSTALL( - FILES ${_output_libhqr_file} + FILES ${_output_hqr_file} DESTINATION lib/pkgconfig ) ENDMACRO(GENERATE_PKGCONFIG_FILE)