diff options
| author | Alexander Saprykin <xelfium@gmail.com> | 2018-05-26 13:27:14 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-05-26 13:27:14 +0200 |
| commit | 4ce5f064282c3a8d8d710aa82af7aa346b0c6dd5 (patch) | |
| tree | d95c9490352eb73f078d34a33bc4bb44ac9fa48b /ports/libconfig | |
| parent | fb689bd13dd6ba563a885d71fff1dd2b32a615db (diff) | |
| parent | 2ac7527b40b1dbeb7856b9f763362c1e139e2ca9 (diff) | |
| download | vcpkg-4ce5f064282c3a8d8d710aa82af7aa346b0c6dd5.tar.gz vcpkg-4ce5f064282c3a8d8d710aa82af7aa346b0c6dd5.zip | |
Merge pull request #1 from Microsoft/master
Update vcpkg from upstream
Diffstat (limited to 'ports/libconfig')
| -rw-r--r-- | ports/libconfig/CMakeLists.txt | 52 | ||||
| -rw-r--r-- | ports/libconfig/CONTROL | 3 | ||||
| -rw-r--r-- | ports/libconfig/portfile.cmake | 38 |
3 files changed, 93 insertions, 0 deletions
diff --git a/ports/libconfig/CMakeLists.txt b/ports/libconfig/CMakeLists.txt new file mode 100644 index 000000000..fe70cb9dd --- /dev/null +++ b/ports/libconfig/CMakeLists.txt @@ -0,0 +1,52 @@ +cmake_minimum_required(VERSION 3.5.1) +project(libconfig C CXX) + +if(MSVC) + add_compile_options(/W3 /wd4005 /wd4996 /wd4018 -D_CRT_SECURE_NO_WARNINGS) +endif() + +set(C_SOURCES + lib/grammar.c + lib/libconfig.c + lib/scanctx.c + lib/scanner.c + lib/strbuf.c + lib/strvec.c + lib/util.c + lib/wincompat.c +) + +set(CPP_SOURCES + lib/libconfigcpp.cc +) + +find_path(STDINT_H stdint.h) + +include_directories(lib ${STDINT_H}) + +add_definitions(-DYY_NO_UNISTD_H -DYY_USE_CONST) + +add_library(libconfig ${C_SOURCES}) +add_library(libconfig++ ${CPP_SOURCES}) + +if(BUILD_SHARED_LIBS) + target_compile_definitions(libconfig PRIVATE -DLIBCONFIG_EXPORTS) + target_compile_definitions(libconfig++ PRIVATE -DLIBCONFIGXX_EXPORTS) +else() + target_compile_definitions(libconfig PUBLIC -DLIBCONFIG_STATIC) + target_compile_definitions(libconfig++ PUBLIC -DLIBCONFIGXX_STATIC) +endif() + +target_link_libraries(libconfig shlwapi) +target_link_libraries(libconfig++ PRIVATE libconfig) + +install( + TARGETS libconfig libconfig++ + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib +) + +if(NOT DISABLE_INSTALL_HEADERS) + install(FILES lib/libconfig.h++ lib/libconfig.h DESTINATION include) +endif() diff --git a/ports/libconfig/CONTROL b/ports/libconfig/CONTROL new file mode 100644 index 000000000..fceb37bd3 --- /dev/null +++ b/ports/libconfig/CONTROL @@ -0,0 +1,3 @@ +Source: libconfig +Version: 1.7.2 +Description: C/C++ library for processing configuration files diff --git a/ports/libconfig/portfile.cmake b/ports/libconfig/portfile.cmake new file mode 100644 index 000000000..9456636a9 --- /dev/null +++ b/ports/libconfig/portfile.cmake @@ -0,0 +1,38 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO hyperrealm/libconfig + REF v1.7.2 + SHA512 9df57355c2d08381b4a0a6366f0db3633fbe8f73c2bb8c370c040b0bae96ce89ee4ac6c17a5a247fed855d890fa383e5b70cb5573fc9cfc62194d5b94e161cee + HEAD_REF master +) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) + + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + OPTIONS_DEBUG -DDISABLE_INSTALL_HEADERS=ON +) + +vcpkg_install_cmake() + +foreach(FILE ${CURRENT_PACKAGES_DIR}/include/libconfig.h++ ${CURRENT_PACKAGES_DIR}/include/libconfig.h) + file(READ ${FILE} _contents) + string(REPLACE "defined(LIBCONFIGXX_EXPORTS)" "0" _contents "${_contents}") + string(REPLACE "defined(LIBCONFIG_EXPORTS)" "0" _contents "${_contents}") + + if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + string(REPLACE "defined(LIBCONFIGXX_STATIC)" "0" _contents "${_contents}") + string(REPLACE "defined(LIBCONFIG_STATIC)" "0" _contents "${_contents}") + else() + string(REPLACE "defined(LIBCONFIGXX_STATIC)" "1" _contents "${_contents}") + string(REPLACE "defined(LIBCONFIG_STATIC)" "1" _contents "${_contents}") + endif() + file(WRITE ${FILE} "${_contents}") +endforeach() + +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libconfig RENAME copyright) + +vcpkg_copy_pdbs() |
