diff options
| author | LiGuilin <liguilin0522@qq.com> | 2016-10-08 08:34:12 +0800 |
|---|---|---|
| committer | LiGuilin <liguilin0522@qq.com> | 2016-10-08 08:34:12 +0800 |
| commit | c91da2b0c4c3d9218c0b4d1712d744bb35245a61 (patch) | |
| tree | e1ae0664a4f21f3948bde8c8f9f9e55dea0cb11f /ports | |
| parent | 280d88b34033ab728e02f725d8d8ff5f9250c6de (diff) | |
| parent | a0f621c0fca2c3de8bd5249f023979b800c543cf (diff) | |
| download | vcpkg-c91da2b0c4c3d9218c0b4d1712d744bb35245a61.tar.gz vcpkg-c91da2b0c4c3d9218c0b4d1712d744bb35245a61.zip | |
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'ports')
79 files changed, 2564 insertions, 325 deletions
diff --git a/ports/ace/CONTROL b/ports/ace/CONTROL new file mode 100644 index 000000000..352d2b74a --- /dev/null +++ b/ports/ace/CONTROL @@ -0,0 +1,3 @@ +Source: ace +Version: 6.4.0 +Description: The ADAPTIVE Communication Environment diff --git a/ports/ace/portfile.cmake b/ports/ace/portfile.cmake new file mode 100644 index 000000000..301354cae --- /dev/null +++ b/ports/ace/portfile.cmake @@ -0,0 +1,86 @@ +include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/ACE_wrappers/ace) +vcpkg_download_distfile(ARCHIVE + URL "http://download.dre.vanderbilt.edu/previous_versions/ACE-6.4.0.zip" + FILENAME "ACE-6.4.0.zip" + SHA512 3543291332b96cf06a966dedda617169e8db051cebbbc4f05cdc2c2c9e7908174f8ed67bc152bbcd57541279d3addb1138f1fc092468e856c2bb04ee6ad2b95a +) +vcpkg_extract_source_archive(${ARCHIVE}) + +if (TRIPLET_SYSTEM_ARCH MATCHES "arm") + message(FATAL_ERROR, "ARM is currently not supported.") + return() +elseif (TRIPLET_SYSTEM_ARCH MATCHES "x86") + set(MSBUILD_PLATFORM "Win32") +else () + set(MSBUILD_PLATFORM ${TRIPLET_SYSTEM_ARCH}) +endif() + +# Add ace/config.h file +# see http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/ACE-INSTALL.html#win32 +file(WRITE ${SOURCE_PATH}/config.h "#include \"ace/config-windows.h\"") +vcpkg_build_msbuild( + PROJECT_PATH ${SOURCE_PATH}/ace_vc14.sln + PLATFORM ${MSBUILD_PLATFORM} +) + +# ACE itself does not define an install target, so it is not clear which +# headers are public and which not. For the moment we install everything +# that is in the source path and ends in .h, .inl +function(install_ace_headers_subdirectory SOURCE_PATH RELATIVE_PATH) + file(GLOB HEADER_FILES ${SOURCE_PATH}/${RELATIVE_PATH}/*.h ${SOURCE_PATH}/${RELATIVE_PATH}/*.inl) + file(INSTALL ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include/ace/${RELATIVE_PATH}) +endfunction() + +# We manually install header found in the ace directory because in that case +# we are supposed to install also *cpp files, see ACE_wrappers\debian\libace-dev.install file +file(GLOB HEADER_FILES ${SOURCE_PATH}/*.h ${SOURCE_PATH}/*.inl ${SOURCE_PATH}/*.cpp) +file(INSTALL ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include/ace/) + +# Install headers in subdirectory +install_ace_headers_subdirectory(${SOURCE_PATH} "Compression") +install_ace_headers_subdirectory(${SOURCE_PATH} "Compression/rle") +install_ace_headers_subdirectory(${SOURCE_PATH} "ETCL") +install_ace_headers_subdirectory(${SOURCE_PATH} "Monitor_Control") +install_ace_headers_subdirectory(${SOURCE_PATH} "os_include") +install_ace_headers_subdirectory(${SOURCE_PATH} "os_include/arpa") +install_ace_headers_subdirectory(${SOURCE_PATH} "os_include/net") +install_ace_headers_subdirectory(${SOURCE_PATH} "os_include/netinet") +install_ace_headers_subdirectory(${SOURCE_PATH} "os_include/sys") + +# Install the libraries +function(install_ace_library SOURCE_PATH ACE_LIBRARY) + set(LIB_PATH ${SOURCE_PATH}/../lib/) + file(INSTALL + ${LIB_PATH}/${ACE_LIBRARY}d.dll + ${LIB_PATH}/${ACE_LIBRARY}d_dll.pdb + DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin + ) + + file(INSTALL + ${LIB_PATH}/${ACE_LIBRARY}.dll + ${LIB_PATH}/${ACE_LIBRARY}.pdb + DESTINATION ${CURRENT_PACKAGES_DIR}/bin + ) + + file(INSTALL + ${LIB_PATH}/${ACE_LIBRARY}d.lib + DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib + ) + + file(INSTALL + ${LIB_PATH}/${ACE_LIBRARY}.lib + DESTINATION ${CURRENT_PACKAGES_DIR}/lib + ) +endfunction() + +install_ace_library(${SOURCE_PATH} "ACE") +install_ace_library(${SOURCE_PATH} "ACE_Compression") +install_ace_library(${SOURCE_PATH} "ACE_ETCL") +install_ace_library(${SOURCE_PATH} "ACE_Monitor_Control") +install_ace_library(${SOURCE_PATH} "ACE_QoS") +install_ace_library(${SOURCE_PATH} "ACE_RLECompression") + +# Handle copyright +file(COPY ${SOURCE_PATH}/../COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/ace) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/ace/COPYING ${CURRENT_PACKAGES_DIR}/share/ace/copyright) diff --git a/ports/asio/CONTROL b/ports/asio/CONTROL new file mode 100644 index 000000000..466ef6cd0 --- /dev/null +++ b/ports/asio/CONTROL @@ -0,0 +1,3 @@ +Source: asio +Version: 1.10.6 +Description: Asio is a cross-platform C++ library for network and low-level I/O programming that provides developers with a consistent asynchronous model using a modern C++ approach. diff --git a/ports/asio/portfile.cmake b/ports/asio/portfile.cmake new file mode 100644 index 000000000..8c28b951b --- /dev/null +++ b/ports/asio/portfile.cmake @@ -0,0 +1,16 @@ +include(vcpkg_common_functions) +SET(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/asio-asio-1-10-6/asio/) +vcpkg_download_distfile(ARCHIVE + URLS "https://github.com/chriskohlhoff/asio/archive/asio-1-10-6.zip" + FILENAME "asio-1-10-6.zip" + SHA512 7e3fde7e88d305d19b88482b73c8b7a41751d65e81bd23dd8ef45eb4e3ef3a10629696b4d347e5a68f08d6fb2dede15a2f38c7ee8d18ac88be769215542da4c6 +) +vcpkg_extract_source_archive(${ARCHIVE}) + +# Handle copyright +file(COPY ${CURRENT_BUILDTREES_DIR}/src/asio-asio-1-10-6/asio/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/asio) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/asio/COPYING ${CURRENT_PACKAGES_DIR}/share/asio/copyright) + +# Copy the asio header files +file(INSTALL ${SOURCE_PATH}/include DESTINATION ${CURRENT_PACKAGES_DIR} FILES_MATCHING PATTERN "*.hpp" PATTERN "*.ipp") +vcpkg_copy_pdbs() diff --git a/ports/assimp/CONTROL b/ports/assimp/CONTROL new file mode 100644 index 000000000..2c4736563 --- /dev/null +++ b/ports/assimp/CONTROL @@ -0,0 +1,4 @@ +Source: assimp +Version: 3.3.1 +Description: The Open Asset import library +Build-Depends: zlib diff --git a/ports/assimp/portfile.cmake b/ports/assimp/portfile.cmake new file mode 100644 index 000000000..cb173702a --- /dev/null +++ b/ports/assimp/portfile.cmake @@ -0,0 +1,38 @@ +# Common Ambient Variables: +# VCPKG_ROOT_DIR = <C:\path\to\current\vcpkg> +# TARGET_TRIPLET is the current triplet (x86-windows, etc) +# PORT is the current port name (zlib, etc) +# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT} +# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET} +# + +include(${CMAKE_TRIPLET_FILE}) +include(vcpkg_common_functions) +vcpkg_download_distfile(ARCHIVE + URLS "https://github.com/assimp/assimp/archive/v3.3.1.zip" + FILENAME "assimp-3.3.1.zip" + SHA512 d8488702989629a80297b9aea1f91fd5f3d0736f91cc5d7991a41ade99a445e9897c752fbedb2829350fabb5439d4ea31d34bbedb771b3e66aef23cd40b02122 +) +vcpkg_extract_source_archive(${ARCHIVE}) + +vcpkg_configure_cmake( + SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/assimp-3.3.1 + OPTIONS -DASSIMP_BUILD_TESTS=False + -DASSIMP_BUILD_ASSIMP_VIEW=False + -DASSIMP_BUILD_ZLIB=False + -DASSIMP_BUILD_ASSIMP_TOOLS=False + # OPTIONS_RELEASE -DOPTIMIZE=1 + # OPTIONS_DEBUG -DDEBUGGABLE=1 +) + +vcpkg_install_cmake() + +file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share) +file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake/assimp-3.3 ${CURRENT_PACKAGES_DIR}/share/assimp) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/cmake) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +# Handle copyright +file(COPY ${CURRENT_BUILDTREES_DIR}/src/assimp-3.3.1/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/assimp) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/assimp/LICENSE ${CURRENT_PACKAGES_DIR}/share/assimp/copyright) diff --git a/ports/bond/CONTROL b/ports/bond/CONTROL new file mode 100644 index 000000000..70384f020 --- /dev/null +++ b/ports/bond/CONTROL @@ -0,0 +1,5 @@ +Source: bond +Maintainer: bond@microsoft.com +Version: 5.0.0-4-g53ea136 +Description: Bond is a cross-platform framework for working with schematized data. It supports cross-language de/serialization and powerful generic mechanisms for efficiently manipulating data. Bond is broadly used at Microsoft in high scale services. <https://github.com/Microsoft/bond> +Build-Depends: boost, rapidjson diff --git a/ports/bond/portfile.cmake b/ports/bond/portfile.cmake new file mode 100644 index 000000000..36a127738 --- /dev/null +++ b/ports/bond/portfile.cmake @@ -0,0 +1,58 @@ +include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/bond-53ea13692925bee4ba494ee9de3614f15c09d85d) +vcpkg_download_distfile(ARCHIVE + URLS "https://github.com/Microsoft/bond/archive/53ea13692925bee4ba494ee9de3614f15c09d85d.zip" + FILENAME "bond-5.0.0-4-g53ea136.zip" + SHA512 fe39dc211f6b99cba3f2284d78a524305dfb8dcd1f597639c45625df369f96c3321cb6782fef9eb34d34fab69c8da9015024eee34be6d0a76d730729517183da +) +vcpkg_extract_source_archive(${ARCHIVE}) + +# To build Bond, you'll either need to have the Haskell toolchain installed +# or set the environment variable BOND_GBC_PATH to point to a directory that +# contains a pre-compiled version of gbc.exe. +# +# You can get a pre-compiled version of gbc from the Bond.Compiler NuGet +# package <http://www.nuget.org/packages/Bond.Compiler/>. +# +# For instructions on installing the Haskell toolchain and getting it to +# work with Bond, see the Bond README +# <https://github.com/Microsoft/bond/blob/master/README.md#windows> + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + OPTIONS + -DBOND_LIBRARIES_ONLY=TRUE +) + +vcpkg_install_cmake() + +# Put the license file where vcpkg expects it +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/bond) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/bond/LICENSE ${CURRENT_PACKAGES_DIR}/share/bond/copyright) + +# vcpkg doesn't--as of version 0.0.30--like executables such as gbc.exe in +# the output. Just delete it for now. +file(REMOVE + ${CURRENT_PACKAGES_DIR}/bin/gbc.exe + ${CURRENT_PACKAGES_DIR}/debug/bin/gbc.exe) + +# There's no way to supress installation of the headers in the debug build, +# so we just delete them. +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +# Bond's install target installs to lib/bond, but vcpkg expects the lib +# files to end up in lib/, so move them up a directory. +file(RENAME + ${CURRENT_PACKAGES_DIR}/lib/bond/bond.lib + ${CURRENT_PACKAGES_DIR}/lib/bond.lib) +file(RENAME + ${CURRENT_PACKAGES_DIR}/lib/bond/bond_apply.lib + ${CURRENT_PACKAGES_DIR}/lib/bond_apply.lib) +file(RENAME + ${CURRENT_PACKAGES_DIR}/debug/lib/bond/bond.lib + ${CURRENT_PACKAGES_DIR}/debug/lib/bond.lib) +file(RENAME + ${CURRENT_PACKAGES_DIR}/debug/lib/bond/bond_apply.lib + ${CURRENT_PACKAGES_DIR}/debug/lib/bond_apply.lib) + +vcpkg_copy_pdbs() diff --git a/ports/boost/CONTROL b/ports/boost/CONTROL index afd6748af..fc0f3cef7 100644 --- a/ports/boost/CONTROL +++ b/ports/boost/CONTROL @@ -1,3 +1,3 @@ Source: boost -Version: 1.61 +Version: 1.62 Description: Peer-reviewed portable C++ source libraries diff --git a/ports/boost/portfile.cmake b/ports/boost/portfile.cmake index b133b4275..276bbcbcc 100644 --- a/ports/boost/portfile.cmake +++ b/ports/boost/portfile.cmake @@ -1,16 +1,18 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/boost_1_62_0) + vcpkg_download_distfile(ARCHIVE_FILE - URL "http://sourceforge.net/projects/boost/files/boost/1.61.0/boost_1_61_0.tar.bz2" - FILENAME "boost_1_61_0.tar.bz2" - MD5 6095876341956f65f9d35939ccea1a9f + URLS "https://sourceforge.net/projects/boost/files/boost/1.62.0/boost_1_62_0.tar.bz2" + FILENAME "boost_1_62_0.tar.bz2" + SHA512 5385ae3d5255a433a704169ad454d8dc2b0b5bcae3fb23defd6570df4ff7d845cf9fcbeebccdc1c5db0eec9f82ee3d90040de9507c8167467c635d3b215463be ) vcpkg_extract_source_archive(${ARCHIVE_FILE}) -if(NOT EXISTS ${CURRENT_BUILDTREES_DIR}/src/boost_1_61_0/b2.exe) +if(NOT EXISTS ${SOURCE_PATH}/b2.exe) message(STATUS "Bootstrapping") vcpkg_execute_required_process( - COMMAND "${CURRENT_BUILDTREES_DIR}/src/boost_1_61_0/bootstrap.bat" - WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/src/boost_1_61_0 + COMMAND "${SOURCE_PATH}/bootstrap.bat" + WORKING_DIRECTORY ${SOURCE_PATH} LOGNAME bootstrap ) endif() @@ -34,42 +36,45 @@ if(TRIPLET_SYSTEM_NAME MATCHES "WindowsStore") set(ENV{BOOST_BUILD_PATH} ${CMAKE_CURRENT_LIST_DIR}) endif() + +file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg) + message(STATUS "Building ${TARGET_TRIPLET}-rel") vcpkg_execute_required_process( - COMMAND "${CURRENT_BUILDTREES_DIR}/src/boost_1_61_0/b2.exe" + COMMAND "${SOURCE_PATH}/b2.exe" --stagedir=${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/stage --build-dir=${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel ${B2_OPTIONS} variant=release - WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/src/boost_1_61_0 + WORKING_DIRECTORY ${SOURCE_PATH} LOGNAME build-${TARGET_TRIPLET}-rel ) message(STATUS "Building ${TARGET_TRIPLET}-rel done") message(STATUS "Building ${TARGET_TRIPLET}-dbg") vcpkg_execute_required_process( - COMMAND "${CURRENT_BUILDTREES_DIR}/src/boost_1_61_0/b2.exe" + COMMAND "${SOURCE_PATH}/b2.exe" --stagedir=${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/stage --build-dir=${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg ${B2_OPTIONS} variant=debug - WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/src/boost_1_61_0 + WORKING_DIRECTORY ${SOURCE_PATH} LOGNAME build-${TARGET_TRIPLET}-dbg ) message(STATUS "Building ${TARGET_TRIPLET}-dbg done") message(STATUS "Packaging headers") file( - COPY ${CURRENT_BUILDTREES_DIR}/src/boost_1_61_0/boost + COPY ${SOURCE_PATH}/boost DESTINATION ${CURRENT_PACKAGES_DIR}/include PATTERN "config/user.hpp" EXCLUDE ) -file(COPY ${CURRENT_BUILDTREES_DIR}/src/boost_1_61_0/boost/config/user.hpp +file(COPY ${SOURCE_PATH}/boost/config/user.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include/boost/config/ ) file(APPEND ${CURRENT_PACKAGES_DIR}/include/boost/config/user.hpp "\n#define BOOST_ALL_DYN_LINK\n" ) -file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/boost_1_61_0/LICENSE_1_0.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/boost RENAME copyright) +file(INSTALL ${SOURCE_PATH}/LICENSE_1_0.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/boost RENAME copyright) message(STATUS "Packaging headers done") message(STATUS "Packaging ${TARGET_TRIPLET}-rel") diff --git a/ports/bullet3/CONTROL b/ports/bullet3/CONTROL new file mode 100644 index 000000000..fbbec8494 --- /dev/null +++ b/ports/bullet3/CONTROL @@ -0,0 +1,3 @@ +Source: bullet3 +Version: 2.83.7.98d4780 +Description: Bullet Physics is a professional collision detection, rigid body, and soft body dynamics library diff --git a/ports/bullet3/portfile.cmake b/ports/bullet3/portfile.cmake new file mode 100644 index 000000000..171b70bc6 --- /dev/null +++ b/ports/bullet3/portfile.cmake @@ -0,0 +1,36 @@ +include(${CMAKE_TRIPLET_FILE}) +include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/bullet3-98d47809b4273d97ea06c9b2137ada10af581bb9) +vcpkg_download_distfile(ARCHIVE + URLS "https://github.com/bulletphysics/bullet3/archive/98d47809b4273d97ea06c9b2137ada10af581bb9.zip" + FILENAME "bullet3-98d47809b4273d97ea06c9b2137ada10af581bb9.zip" + SHA512 eaa3aa5ff124c87f153a9faeabe00955aaa2d87ed5d2297a96e02531eb7fd1286f2b654bd45401690747ca4391dd7c18486f4cbac0da7e835d52874345b9811d +) +vcpkg_extract_source_archive(${ARCHIVE}) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + OPTIONS + -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=ON + -DUSE_MSVC_RUNTIME_LIBRARY_DLL=ON + -DBUILD_DEMOS=OFF + -DBUILD_CPU_DEMOS=OFF + -DBUILD_BULLET2_DEMOS=OFF + -DBUILD_BULLET3=OFF + -DBUILD_EXTRAS=OFF + -DBUILD_UNIT_TESTS=OFF + -DBUILD_SHARED_LIBS=ON + -DINSTALL_LIBS=ON +) + +vcpkg_build_cmake() +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/cmake) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/bullet3) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/bullet3/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/bullet3/copyright) + +vcpkg_copy_pdbs() diff --git a/ports/cocos2d/portfile.cmake b/ports/cocos2d/portfile.cmake index b39180b40..a4048090b 100644 --- a/ports/cocos2d/portfile.cmake +++ b/ports/cocos2d/portfile.cmake @@ -1,18 +1,19 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/cocos2d-x-cocos2d-x-3.10) vcpkg_download_distfile(ARCHIVE_FILE - URL "https://github.com/cocos2d/cocos2d-x/archive/cocos2d-x-3.10.tar.gz" + URLS "https://github.com/cocos2d/cocos2d-x/archive/cocos2d-x-3.10.tar.gz" FILENAME "cocos2d-x-3.10.tar.gz" MD5 7c67068675ad28374448e844b0e463ff ) vcpkg_download_distfile(DEPS_ARCHIVE_FILE - URL "https://github.com/cocos2d/cocos2d-x-3rd-party-libs-bin/archive/v3-deps-79.zip" + URLS "https://github.com/cocos2d/cocos2d-x-3rd-party-libs-bin/archive/v3-deps-79.zip" FILENAME "cocos2d-x-v3-deps-79.zip" MD5 5d88ff867205080b9ee8da532437e891 ) vcpkg_extract_source_archive(${ARCHIVE_FILE}) -if(NOT EXISTS ${CURRENT_BUILDTREES_DIR}/src/cocos2d-x-cocos2d-x-3.10/external/unzip) +if(NOT EXISTS ${SOURCE_PATH}/external/unzip) message(STATUS "Extracting dependencies ${DEPS_ARCHIVE_FILE}") file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/deps) vcpkg_execute_required_process( @@ -20,15 +21,15 @@ if(NOT EXISTS ${CURRENT_BUILDTREES_DIR}/src/cocos2d-x-cocos2d-x-3.10/external/un WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/deps LOGNAME extract-deps ) - file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/src/cocos2d-x-cocos2d-x-3.10/external) - file(RENAME ${CURRENT_BUILDTREES_DIR}/deps/cocos2d-x-3rd-party-libs-bin-3-deps-79 ${CURRENT_BUILDTREES_DIR}/src/cocos2d-x-cocos2d-x-3.10/external) + file(REMOVE_RECURSE ${SOURCE_PATH}/external) + file(RENAME ${CURRENT_BUILDTREES_DIR}/deps/cocos2d-x-3rd-party-libs-bin-3-deps-79 ${SOURCE_PATH}/external) endif() message(STATUS "Extracting dependencies done") -file(REMOVE ${CURRENT_BUILDTREES_DIR}/src/cocos2d-x-cocos2d-x-3.10/cmake/Modules/FindGLFW3.cmake) +file(REMOVE ${SOURCE_PATH}/cmake/Modules/FindGLFW3.cmake) vcpkg_configure_cmake( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/cocos2d-x-cocos2d-x-3.10 + SOURCE_PATH ${SOURCE_PATH} OPTIONS -DUSE_CHIPMUNK=OFF -DUSE_BOX2D=OFF @@ -39,9 +40,8 @@ vcpkg_configure_cmake( -DUSE_PREBUILT_LIBS=OFF ) -vcpkg_build_cmake() vcpkg_install_cmake() -file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/cocos2d-x-cocos2d-x-3.10/licenses/LICENSE_cocos2d-x.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/cocos2d-x RENAME copyright) +file(INSTALL ${SOURCE_PATH}/licenses/LICENSE_cocos2d-x.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/cocos2d-x RENAME copyright) vcpkg_copy_pdbs() diff --git a/ports/constexpr/CONTROL b/ports/constexpr/CONTROL new file mode 100644 index 000000000..e8cb4749f --- /dev/null +++ b/ports/constexpr/CONTROL @@ -0,0 +1,3 @@ +Source: constexpr +Version: 1.0 +Description: Small MIT License Library of general stdlib functions written as C++11 constexpr functions. diff --git a/ports/constexpr/portfile.cmake b/ports/constexpr/portfile.cmake new file mode 100644 index 000000000..137bf0e60 --- /dev/null +++ b/ports/constexpr/portfile.cmake @@ -0,0 +1,16 @@ +include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/constexpr-a98b1db39c909e0130d21d3910d4faf97035a625) +vcpkg_download_distfile(ARCHIVE + URLS "https://github.com/elbeno/constexpr/archive/a98b1db39c909e0130d21d3910d4faf97035a625.zip" + FILENAME "constexpr-a98b1db39c909e0130d21d3910d4faf97035a625.zip" + SHA512 847e09f9df30cb5fbd8aa280679ff359d73c9e9454ffe3090f66975a15665080629e9a664d057f039b17430d42b5e5f5f3f92831e73c15024060991090209c2e +) +vcpkg_extract_source_archive(${ARCHIVE}) + +# Put the licence file where vcpkg expects it +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/constexpr/LICENSE) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/constexpr/LICENSE ${CURRENT_PACKAGES_DIR}/share/constexpr/copyright) + +# Copy the constexpr header files +file(GLOB HEADER_FILES ${SOURCE_PATH}/src/include/*.h) +file(COPY ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include) diff --git a/ports/cpprestsdk/portfile.cmake b/ports/cpprestsdk/portfile.cmake index ba9ea77e3..11db7c379 100644 --- a/ports/cpprestsdk/portfile.cmake +++ b/ports/cpprestsdk/portfile.cmake @@ -41,7 +41,6 @@ vcpkg_configure_cmake( -DCASA_INSTALL_HEADERS=OFF ) -vcpkg_build_cmake() vcpkg_install_cmake() file(COPY ${CURRENT_BUILDTREES_DIR}/src/license.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/cpprestsdk) diff --git a/ports/curl/portfile.cmake b/ports/curl/portfile.cmake index fc1115741..4c1a7bf3a 100644 --- a/ports/curl/portfile.cmake +++ b/ports/curl/portfile.cmake @@ -1,13 +1,14 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/curl-7.48.0) vcpkg_download_distfile(ARCHIVE_FILE - URL "https://curl.haxx.se/download/curl-7.48.0.tar.bz2" + URLS "https://curl.haxx.se/download/curl-7.48.0.tar.bz2" FILENAME "curl-7.48.0.tar.bz2" - MD5 d42e0fc34a5cace5739631cc040974fe + SHA512 9bb554eaf4ccaced0fa9b38de4f381eab84b96c1aa07a45d83ddfd38a925044d0fe9fac517263f67f009d2294a31c33dedb2267defbab0cb14f96091bbed5f92 ) vcpkg_extract_source_archive(${ARCHIVE_FILE}) vcpkg_configure_cmake( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/curl-7.48.0 + SOURCE_PATH ${SOURCE_PATH} OPTIONS -DBUILD_CURL_TESTS=OFF -DBUILD_CURL_EXE=OFF @@ -16,9 +17,8 @@ vcpkg_configure_cmake( -DENABLE_DEBUG=ON ) -vcpkg_build_cmake() vcpkg_install_cmake() -file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/curl-7.48.0/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/curl RENAME copyright) +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/curl RENAME copyright) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) vcpkg_copy_pdbs()
\ No newline at end of file diff --git a/ports/doctest/CONTROL b/ports/doctest/CONTROL new file mode 100644 index 000000000..df41ef19f --- /dev/null +++ b/ports/doctest/CONTROL @@ -0,0 +1,3 @@ +Source: doctest +Version: 1.1.0 +Description: The lightest feature-rich C++ single-header testing framework for unit tests and TDD diff --git a/ports/doctest/portfile.cmake b/ports/doctest/portfile.cmake new file mode 100644 index 000000000..c392b2467 --- /dev/null +++ b/ports/doctest/portfile.cmake @@ -0,0 +1,14 @@ +include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/doctest-1.1.0) +vcpkg_download_distfile(ARCHIVE + URLS "https://github.com/onqtam/doctest/archive/1.1.0.zip" + FILENAME "doctest-1.1.0.zip" + SHA512 3cbdbb82d2dceff5a34aaed45222832c5767f21b64b271c41c2da7bae1f9e364a60758a8b6ce64285999afc30dd76de980e287663fa3119d0bcc1d2b45514e0b +) +vcpkg_extract_source_archive(${ARCHIVE}) + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/doctest RENAME copyright) + +# Copy header file +file(INSTALL ${SOURCE_PATH}/doctest/doctest.h DESTINATION ${CURRENT_PACKAGES_DIR}/include/doctest) diff --git a/ports/eigen3/portfile.cmake b/ports/eigen3/portfile.cmake index 54e9c0c5a..fd62466a5 100644 --- a/ports/eigen3/portfile.cmake +++ b/ports/eigen3/portfile.cmake @@ -1,19 +1,21 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/eigen-eigen-dc6cfdf9bcec) vcpkg_download_distfile(ARCHIVE - URL "http://bitbucket.org/eigen/eigen/get/3.2.9.tar.bz2" + URLS "http://bitbucket.org/eigen/eigen/get/3.2.9.tar.bz2" FILENAME "eigen-3.2.9.tar.bz2" - MD5 de11bfbfe2fd2dc4b32e8f416f58ee98 + SHA512 2734ce70e0b04dc5839715a3cc9b8f90e05b341cfca42a7d586df213a9a14fe5642c76ccf36c16d020ae167c0d6e4d5cc306f0b3bf1f519c58372b0736ca7e63 ) vcpkg_extract_source_archive(${ARCHIVE}) +file(GLOB_RECURSE GARBAGE ${SOURCE_PATH}/Eigen/CMakeLists.*) +if(GARBAGE) + file(REMOVE ${GARBAGE}) +endif() + # Put the licence file where vcpkg expects it -file(RENAME ${CURRENT_BUILDTREES_DIR}/src/eigen-eigen-dc6cfdf9bcec ${CURRENT_BUILDTREES_DIR}/src/eigen) -file(COPY ${CURRENT_BUILDTREES_DIR}/src/eigen/COPYING.README DESTINATION ${CURRENT_PACKAGES_DIR}/share/eigen3/COPYING.README) +file(COPY ${SOURCE_PATH}/COPYING.README DESTINATION ${CURRENT_PACKAGES_DIR}/share/eigen3/COPYING.README) file(RENAME ${CURRENT_PACKAGES_DIR}/share/eigen3/COPYING.README ${CURRENT_PACKAGES_DIR}/share/eigen3/copyright) -file(GLOB_RECURSE GARBAGE ${CURRENT_BUILDTREES_DIR}/src/eigen/Eigen/CMakeLists.*) -file(REMOVE ${GARBAGE}) - # Copy the eigen header files -file(COPY ${CURRENT_BUILDTREES_DIR}/src/eigen/Eigen/ DESTINATION ${CURRENT_PACKAGES_DIR}/include/Eigen/) +file(COPY ${SOURCE_PATH}/Eigen/ DESTINATION ${CURRENT_PACKAGES_DIR}/include/Eigen/) vcpkg_copy_pdbs() diff --git a/ports/expat/portfile.cmake b/ports/expat/portfile.cmake index 9a396774d..7f547d091 100644 --- a/ports/expat/portfile.cmake +++ b/ports/expat/portfile.cmake @@ -1,22 +1,22 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/expat-2.1.1) vcpkg_download_distfile(ARCHIVE_FILE - URL "http://downloads.sourceforge.net/project/expat/expat/2.1.1/expat-2.1.1.tar.bz2" + URLS "http://downloads.sourceforge.net/project/expat/expat/2.1.1/expat-2.1.1.tar.bz2" FILENAME "expat-2.1.1.tar.bz2" - MD5 7380a64a8e3a9d66a9887b01d0d7ea81 + SHA512 088e2ef3434f2affd4fc79fe46f0e9826b9b4c3931ddc780cd18892f1cd1e11365169c6807f45916a56bb6abcc627dcd17a23f970be0bf464f048f5be2713628 ) vcpkg_extract_source_archive(${ARCHIVE_FILE}) vcpkg_configure_cmake( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/expat-2.1.1 + SOURCE_PATH ${SOURCE_PATH} OPTIONS -DBUILD_examples=OFF -DBUILD_tests=OFF -DBUILD_tools=OFF ) -vcpkg_build_cmake() vcpkg_install_cmake() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig ${CURRENT_PACKAGES_DIR}/lib/pkgconfig) -file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/expat-2.1.1/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/expat RENAME copyright) +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/expat RENAME copyright) vcpkg_copy_pdbs()
\ No newline at end of file diff --git a/ports/fmt/CONTROL b/ports/fmt/CONTROL index 9dfbac160..a84adbfc3 100644 --- a/ports/fmt/CONTROL +++ b/ports/fmt/CONTROL @@ -1,3 +1,3 @@ Source: fmt -Version: 3.0.0 +Version: 3.0.0-1 Description: Formatting library for C++. It can be used as a safe alternative to printf or as a fast alternative to IOStreams. diff --git a/ports/fmt/portfile.cmake b/ports/fmt/portfile.cmake index 9cf5ed4be..4e1c69903 100644 --- a/ports/fmt/portfile.cmake +++ b/ports/fmt/portfile.cmake @@ -1,22 +1,22 @@ include(vcpkg_common_functions) - +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/fmt-3.0.0) vcpkg_download_distfile(ARCHIVE_FILE - URL "https://github.com/fmtlib/fmt/archive/3.0.0.tar.gz" + URLS "https://github.com/fmtlib/fmt/archive/3.0.0.tar.gz" FILENAME "fmt-3.0.0.tar.gz" - MD5 deeac02aa6d00d6d04502087fdf88b6f + SHA512 20c9b1ffe8b46cb5d22015122fc698a75ad854709d3de1a1316b6040d86f54bada4e6d7263f2f1fd94cb13ac37ee9447c162c6aec3f3af650455e8a8a9804871 ) vcpkg_extract_source_archive(${ARCHIVE_FILE}) vcpkg_configure_cmake( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/fmt-3.0.0 + SOURCE_PATH ${SOURCE_PATH} OPTIONS -DFMT_TEST=OFF + -DFMT_DOC=OFF ) -vcpkg_build_cmake() vcpkg_install_cmake() -file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/fmt-3.0.0/LICENSE.rst DESTINATION ${CURRENT_PACKAGES_DIR}/share/fmt RENAME copyright) +file(INSTALL ${SOURCE_PATH}/LICENSE.rst DESTINATION ${CURRENT_PACKAGES_DIR}/share/fmt RENAME copyright) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE ${CURRENT_PACKAGES_DIR}/include/fmt/format.cc) file(REMOVE ${CURRENT_PACKAGES_DIR}/include/fmt/ostream.cc) diff --git a/ports/freetype/portfile.cmake b/ports/freetype/portfile.cmake index 641d2e5f9..390030551 100644 --- a/ports/freetype/portfile.cmake +++ b/ports/freetype/portfile.cmake @@ -1,23 +1,23 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/freetype-2.6.3) vcpkg_download_distfile(ARCHIVE - URL "http://download.savannah.gnu.org/releases/freetype/freetype-2.6.3.tar.bz2" + URLS "http://download.savannah.gnu.org/releases/freetype/freetype-2.6.3.tar.bz2" FILENAME "freetype-2.6.3.tar.bz2" - MD5 0037b25a8c090bc8a1218e867b32beb1 + SHA512 e1f9018835fc88beeb4479537b59f866c52393ae18d24a1e0710a464cf948ab02b35c2c6043bc20c1db3a04871ee4eb0bb1d210550c0ea2780c8b1aea98fbf0d ) vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_apply_patches( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/freetype-2.6.3 + SOURCE_PATH ${SOURCE_PATH} PATCHES ${CMAKE_CURRENT_LIST_DIR}/0001-Support-Windows-DLLs-via-CMAKE_WINDOWS_EXPORT_ALL_SY.patch ) vcpkg_configure_cmake( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/freetype-2.6.3 + SOURCE_PATH ${SOURCE_PATH} OPTIONS -DBUILD_SHARED_LIBS=ON ) -vcpkg_build_cmake() vcpkg_install_cmake() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include) @@ -31,9 +31,9 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/cmake) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(COPY - ${CURRENT_BUILDTREES_DIR}/src/freetype-2.6.3/docs/LICENSE.TXT - ${CURRENT_BUILDTREES_DIR}/src/freetype-2.6.3/docs/FTL.TXT - ${CURRENT_BUILDTREES_DIR}/src/freetype-2.6.3/docs/GPLv2.TXT + ${SOURCE_PATH}/docs/LICENSE.TXT + ${SOURCE_PATH}/docs/FTL.TXT + ${SOURCE_PATH}/docs/GPLv2.TXT DESTINATION ${CURRENT_PACKAGES_DIR}/share/freetype ) file(RENAME ${CURRENT_PACKAGES_DIR}/share/freetype/LICENSE.TXT ${CURRENT_PACKAGES_DIR}/share/freetype/copyright) diff --git a/ports/gflags/0001-Fix-some-compilation-warnings-with-MSVC-2015.patch b/ports/gflags/0001-Fix-some-compilation-warnings-with-MSVC-2015.patch new file mode 100644 index 000000000..d099ea616 --- /dev/null +++ b/ports/gflags/0001-Fix-some-compilation-warnings-with-MSVC-2015.patch @@ -0,0 +1,51 @@ +From 5af642bdfe023a7c857d1d26593af586516bf696 Mon Sep 17 00:00:00 2001 +From: Sergey Sharybin <sergey.vfx@gmail.com> +Date: Thu, 31 Dec 2015 17:16:26 +0500 +Subject: [PATCH] Fix some compilation warnings with MSVC 2015 + +MSVC 2015 already defines vsnprintf() and va_copy(). +--- + src/windows_port.cc | 2 ++ + src/windows_port.h | 2 ++ + 2 files changed, 4 insertions(+) + +diff --git a/src/windows_port.cc b/src/windows_port.cc +index 1f40458..b5b7194 100644 +--- a/src/windows_port.cc ++++ b/src/windows_port.cc +@@ -44,6 +44,7 @@ + + // These call the windows _vsnprintf, but always NUL-terminate. + #if !defined(__MINGW32__) && !defined(__MINGW64__) /* mingw already defines */ ++#if !(defined(_MSC_VER) && _MSC_VER >= 1900) /* msvc 2015 already defines */ + + #ifdef _MSC_VER + # pragma warning(push) +@@ -68,4 +69,5 @@ int snprintf(char *str, size_t size, const char *format, ...) { + return r; + } + ++#endif /* if !(defined(_MSC_VER) && _MSC_VER >= 1900) */ + #endif /* #if !defined(__MINGW32__) && !defined(__MINGW64__) */ +diff --git a/src/windows_port.h b/src/windows_port.h +index c8ff24f..554b9c9 100644 +--- a/src/windows_port.h ++++ b/src/windows_port.h +@@ -63,12 +63,14 @@ + * name vsnprintf, since windows defines that (but not snprintf (!)). + */ + #if !defined(__MINGW32__) && !defined(__MINGW64__) /* mingw already defines */ ++#if !(defined(_MSC_VER) && _MSC_VER >= 1900) /* msvc 2015 already defines */ + extern GFLAGS_DLL_DECL int snprintf(char *str, size_t size, + const char *format, ...); + extern int GFLAGS_DLL_DECL safe_vsnprintf(char *str, size_t size, + const char *format, va_list ap); + #define vsnprintf(str, size, format, ap) safe_vsnprintf(str, size, format, ap) + #define va_copy(dst, src) (dst) = (src) ++#endif + #endif /* #if !defined(__MINGW32__) && !defined(__MINGW64__) */ + + #ifdef _MSC_VER +-- +2.10.0.windows.1 + diff --git a/ports/gflags/CONTROL b/ports/gflags/CONTROL new file mode 100644 index 000000000..03977243f --- /dev/null +++ b/ports/gflags/CONTROL @@ -0,0 +1,3 @@ +Source: gflags +Version: 2.1.2 +Description: A C++ library that implements commandline flags processing diff --git a/ports/gflags/portfile.cmake b/ports/gflags/portfile.cmake new file mode 100644 index 000000000..ca315ae31 --- /dev/null +++ b/ports/gflags/portfile.cmake @@ -0,0 +1,53 @@ +include(vcpkg_common_functions) +find_program(GIT git) + +set(GIT_URL "https://github.com/gflags/gflags.git") +set(GIT_TAG "v2.1.2") + +if(NOT EXISTS "${DOWNLOADS}/gflags.git") + message(STATUS "Cloning") + vcpkg_execute_required_process( + COMMAND ${GIT} clone --bare ${GIT_URL} ${DOWNLOADS}/gflags.git + WORKING_DIRECTORY ${DOWNLOADS} + LOGNAME clone + ) +endif() +message(STATUS "Cloning done") + +if(NOT EXISTS "${CURRENT_BUILDTREES_DIR}/src/.git") + message(STATUS "Adding worktree and patching") + file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}) + vcpkg_execute_required_process( + COMMAND ${GIT} worktree add -f --detach ${CURRENT_BUILDTREES_DIR}/src ${GIT_TAG} + WORKING_DIRECTORY ${DOWNLOADS}/gflags.git + LOGNAME worktree + ) + message(STATUS "Patching") + vcpkg_execute_required_process( + COMMAND ${GIT} apply ${CMAKE_CURRENT_LIST_DIR}/0001-Fix-some-compilation-warnings-with-MSVC-2015.patch --ignore-whitespace --whitespace=fix + WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/src + LOGNAME patch + ) +endif() +message(STATUS "Adding worktree and patching done") + +vcpkg_configure_cmake( + SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src + OPTIONS + -DBUILD_SHARED_LIBS=ON +) + +vcpkg_install_cmake() + +file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) +file(RENAME ${CURRENT_PACKAGES_DIR}/cmake ${CURRENT_PACKAGES_DIR}/share/gflags) +file(RENAME ${CURRENT_PACKAGES_DIR}/lib/gflags.dll ${CURRENT_PACKAGES_DIR}/bin/gflags.dll) +file(RENAME ${CURRENT_PACKAGES_DIR}/lib/gflags_nothreads.dll ${CURRENT_PACKAGES_DIR}/bin/gflags_nothreads.dll) +file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/gflags.dll ${CURRENT_PACKAGES_DIR}/debug/bin/gflags.dll) +file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/gflags_nothreads.dll ${CURRENT_PACKAGES_DIR}/debug/bin/gflags_nothreads.dll) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) + +file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/COPYING.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/gflags RENAME copyright) + +vcpkg_copy_pdbs() diff --git a/ports/glew/portfile.cmake b/ports/glew/portfile.cmake index 29d857be4..3b35830f6 100644 --- a/ports/glew/portfile.cmake +++ b/ports/glew/portfile.cmake @@ -1,14 +1,24 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/glew-1.13.0) vcpkg_download_distfile(ARCHIVE_FILE - URL "http://downloads.sourceforge.net/project/glew/glew/1.13.0/glew-1.13.0.tgz" + URLS "http://downloads.sourceforge.net/project/glew/glew/1.13.0/glew-1.13.0.tgz" FILENAME "glew-1.13.0.tgz" - MD5 7cbada3166d2aadfc4169c4283701066 + SHA512 8fc8d7c0d2cd9235ea51db9972f492701827bff40642fdb3cc54c10b0737dba8e6d8d0dcd8c5aa5bfaaae39c6198ba3d4292cd1662fbe1977eb9a5d187ba635f ) vcpkg_extract_source_archive(${ARCHIVE_FILE}) -if(NOT EXISTS ${CURRENT_BUILDTREES_DIR}/src/glew-1.13.0/build/vc12/glew_shared14.vcxproj) +IF (TRIPLET_SYSTEM_ARCH MATCHES "x86") + SET(BUILD_ARCH "Win32") +ELSEIF(TRIPLET_SYSTEM_ARCH MATCHES "arm") + MESSAGE(FATAL_ERROR, " ARM is currently not supported.") + RETURN() +ELSE() + SET(BUILD_ARCH ${TRIPLET_SYSTEM_ARCH}) +ENDIF() + +if(NOT EXISTS ${SOURCE_PATH}/build/vc12/glew_shared14.vcxproj) message(STATUS "Upgrading projects") - file(READ ${CURRENT_BUILDTREES_DIR}/src/glew-1.13.0/build/vc12/glew_shared.vcxproj PROJ) + file(READ ${SOURCE_PATH}/build/vc12/glew_shared.vcxproj PROJ) string(REPLACE "<PlatformToolset>v120</PlatformToolset>" "<PlatformToolset>v140</PlatformToolset>" @@ -17,45 +27,38 @@ if(NOT EXISTS ${CURRENT_BUILDTREES_DIR}/src/glew-1.13.0/build/vc12/glew_shared14 "opengl32.lib%" "opengl32.lib\;%" PROJ ${PROJ}) - file(WRITE ${CURRENT_BUILDTREES_DIR}/src/glew-1.13.0/build/vc12/glew_shared14.vcxproj ${PROJ}) + file(WRITE ${SOURCE_PATH}/build/vc12/glew_shared14.vcxproj ${PROJ}) endif() message(STATUS "Upgrading projects done") vcpkg_build_msbuild( - PROJECT_PATH ${CURRENT_BUILDTREES_DIR}/src/glew-1.13.0/build/vc12/glew_shared14.vcxproj + PROJECT_PATH ${SOURCE_PATH}/build/vc12/glew_shared14.vcxproj ) message(STATUS "Installing") -IF (TRIPLET_SYSTEM_ARCH MATCHES "x86") - SET(BUILD_ARCH "Win32") -ELSEIF(TRIPLET_SYSTEM_ARCH MATCHES "x64") - SET(BUILD_ARCH "x64") -ELSE() - MESSAGE(SEND_ERROR "Unknown TRIPLET_SYSTEM_ARCH") -ENDIF() file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/glew-1.13.0/bin/Debug/${BUILD_ARCH}/glew32d.dll - ${CURRENT_BUILDTREES_DIR}/src/glew-1.13.0/bin/Debug/${BUILD_ARCH}/glew32d.pdb + ${SOURCE_PATH}/bin/Debug/${BUILD_ARCH}/glew32d.dll + ${SOURCE_PATH}/bin/Debug/${BUILD_ARCH}/glew32d.pdb DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin ) file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/glew-1.13.0/bin/Release/${BUILD_ARCH}/glew32.dll - ${CURRENT_BUILDTREES_DIR}/src/glew-1.13.0/bin/Release/${BUILD_ARCH}/glew32.pdb + ${SOURCE_PATH}/bin/Release/${BUILD_ARCH}/glew32.dll + ${SOURCE_PATH}/bin/Release/${BUILD_ARCH}/glew32.pdb DESTINATION ${CURRENT_PACKAGES_DIR}/bin ) file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/glew-1.13.0/lib/Debug/${BUILD_ARCH}/glew32d.lib + ${SOURCE_PATH}/lib/Debug/${BUILD_ARCH}/glew32d.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib ) file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/glew-1.13.0/lib/Release/${BUILD_ARCH}/glew32.lib + ${SOURCE_PATH}/lib/Release/${BUILD_ARCH}/glew32.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib ) file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/glew-1.13.0/include/GL + ${SOURCE_PATH}/include/GL DESTINATION ${CURRENT_PACKAGES_DIR}/include ) -file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/glew-1.13.0/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/glew RENAME copyright) +file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/glew RENAME copyright) vcpkg_copy_pdbs() message(STATUS "Installing done") diff --git a/ports/glfw3/CONTROL b/ports/glfw3/CONTROL index 0015a9105..1e8c1ac73 100644 --- a/ports/glfw3/CONTROL +++ b/ports/glfw3/CONTROL @@ -1,3 +1,3 @@ Source: glfw3 -Version: 3.1.2 +Version: 3.2.1 Description: GLFW is a free, Open Source, multi-platform library for OpenGL, OpenGL ES and Vulkan application development. It provides a simple, platform-independent API for creating windows, contexts and surfaces, reading input, handling events, etc.
\ No newline at end of file diff --git a/ports/glfw3/portfile.cmake b/ports/glfw3/portfile.cmake index cbfa6134d..8c0a90601 100644 --- a/ports/glfw3/portfile.cmake +++ b/ports/glfw3/portfile.cmake @@ -1,26 +1,27 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/glfw-3.2.1) vcpkg_download_distfile(ARCHIVE - URL "https://github.com/glfw/glfw/releases/download/3.1.2/glfw-3.1.2.zip" - FILENAME "glfw-3.1.2.zip" - MD5 8023327bfe979b3fe735e449e2f54842 + URLS "https://github.com/glfw/glfw/releases/download/3.2.1/glfw-3.2.1.zip" + FILENAME "glfw-3.2.1.zip" + SHA512 73dd6d4a8d28a2b423f0fb25489659c1a845182b7ef09848d4f442cdc489528aea90f43ac84aeedb9d2301c4487f39782b647ee4959e67e83babb838372b980c ) vcpkg_extract_source_archive(${ARCHIVE}) if(NOT EXISTS ${CURRENT_BUILDTREES_DIR}/patch.stamp) - file(READ ${CURRENT_BUILDTREES_DIR}/src/glfw-3.1.2/src/glfw3Config.cmake.in CONFIG) + file(READ ${SOURCE_PATH}/src/glfw3Config.cmake.in CONFIG) string(REPLACE "\"@GLFW_LIB_NAME@\"" "NAMES @GLFW_LIB_NAME@ @GLFW_LIB_NAME@dll" CONFIG ${CONFIG} ) string(REPLACE "@PACKAGE_CMAKE_INSTALL_PREFIX@" "@PACKAGE_CMAKE_INSTALL_PREFIX@/../.." CONFIG ${CONFIG} ) - file(WRITE ${CURRENT_BUILDTREES_DIR}/src/glfw-3.1.2/src/glfw3Config.cmake.in ${CONFIG}) - file(APPEND ${CURRENT_BUILDTREES_DIR}/src/glfw-3.1.2/src/glfw3Config.cmake.in "set(GLFW3_LIBRARIES \${GLFW3_LIBRARY})\n") + file(WRITE ${SOURCE_PATH}/src/glfw3Config.cmake.in ${CONFIG}) + file(APPEND ${SOURCE_PATH}/src/glfw3Config.cmake.in "set(GLFW3_LIBRARIES \${GLFW3_LIBRARY})\n") file(WRITE ${CURRENT_BUILDTREES_DIR}/patch.stamp) endif() vcpkg_configure_cmake( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/glfw-3.1.2 + SOURCE_PATH ${SOURCE_PATH} OPTIONS -DBUILD_SHARED_LIBS=ON -DGLFW_BUILD_EXAMPLES=OFF @@ -31,7 +32,6 @@ vcpkg_configure_cmake( # OPTIONS_DEBUG -DDEBUGGABLE=1 ) -vcpkg_build_cmake() vcpkg_install_cmake() file(MAKE_DIRECTORY @@ -42,9 +42,9 @@ file(MAKE_DIRECTORY file(RENAME ${CURRENT_PACKAGES_DIR}/lib/glfw3.dll ${CURRENT_PACKAGES_DIR}/bin/glfw3.dll) file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/glfw3.dll ${CURRENT_PACKAGES_DIR}/debug/bin/glfw3.dll) -file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake/glfw ${CURRENT_PACKAGES_DIR}/share/glfw3) +file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake/glfw3 ${CURRENT_PACKAGES_DIR}/share/glfw3) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/cmake) -file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/cmake/glfw/glfwTargets-debug.cmake ${CURRENT_PACKAGES_DIR}/share/glfw3/glfwTargets-debug.cmake) +file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/cmake/glfw3/glfw3Targets-debug.cmake ${CURRENT_PACKAGES_DIR}/share/glfw3/glfw3Targets-debug.cmake) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) @@ -52,7 +52,7 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/glfw3.lib) file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/glfw3.lib) -file(COPY ${CURRENT_BUILDTREES_DIR}/src/glfw-3.1.2/COPYING.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/glfw3) +file(COPY ${SOURCE_PATH}/COPYING.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/glfw3) file(RENAME ${CURRENT_PACKAGES_DIR}/share/glfw3/COPYING.txt ${CURRENT_PACKAGES_DIR}/share/glfw3/copyright) vcpkg_copy_pdbs() diff --git a/ports/glm/CONTROL b/ports/glm/CONTROL index 1ec4874a9..3e1f91148 100644 --- a/ports/glm/CONTROL +++ b/ports/glm/CONTROL @@ -1,3 +1,3 @@ Source: glm -Version: 0.9.8.0 +Version: 0.9.8.1 Description: OpenGL Mathematics (GLM) https://glm.g-truc.net diff --git a/ports/glm/portfile.cmake b/ports/glm/portfile.cmake index 0d4d08a6d..6b749b2de 100644 --- a/ports/glm/portfile.cmake +++ b/ports/glm/portfile.cmake @@ -1,18 +1,19 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/glm) vcpkg_download_distfile(ARCHIVE - URL "https://github.com/g-truc/glm/releases/download/0.9.8.0/glm-0.9.8.0.zip" - FILENAME "glm-0.9.8.0.zip" - MD5 b24613c1f7e16f504d936ae3ac1f4917 + URLS "https://github.com/g-truc/glm/releases/download/0.9.8.1/glm-0.9.8.1.zip" + FILENAME "glm-0.9.8.1.zip" + SHA512 93223ea7a08d969331a6b93d598c0b59dfc09e86770661c444f81939bd175053d3f6b1211a4aa4e59d732df39b97fe491eb35d4ac2efb286a1cf68ed29bfa80a ) vcpkg_extract_source_archive(${ARCHIVE}) # Remove glm/CMakeLists.txt -file(REMOVE ${CURRENT_BUILDTREES_DIR}/src/glm/glm/CMakeLists.txt) +file(REMOVE ${SOURCE_PATH}/glm/CMakeLists.txt) # Put the license file where vcpkg expects it -file(COPY ${CURRENT_BUILDTREES_DIR}/src/glm/copying.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/glm/) +file(COPY ${SOURCE_PATH}/copying.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/glm/) file(RENAME ${CURRENT_PACKAGES_DIR}/share/glm/copying.txt ${CURRENT_PACKAGES_DIR}/share/glm/copyright) # Copy the glm header files -file(GLOB HEADER_FILES ${CURRENT_BUILDTREES_DIR}/src/glm/glm/*) +file(GLOB HEADER_FILES ${SOURCE_PATH}/glm/*) file(COPY ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include/glm) diff --git a/ports/grpc/CONTROL b/ports/grpc/CONTROL new file mode 100644 index 000000000..ece5b96ce --- /dev/null +++ b/ports/grpc/CONTROL @@ -0,0 +1,4 @@ +Source: grpc +Version: 1.1.0-dev-1674f65 +Build-Depends: zlib, openssl, protobuf +Description: An RPC library and framework
\ No newline at end of file diff --git a/ports/grpc/portfile.cmake b/ports/grpc/portfile.cmake new file mode 100644 index 000000000..53f262c7e --- /dev/null +++ b/ports/grpc/portfile.cmake @@ -0,0 +1,57 @@ +include(vcpkg_common_functions) +find_program(GIT git) + +set(GIT_URL "https://github.com/grpc/grpc.git") +set(GIT_REV "1674f650ad9411448a35b7c19c5dbdaf0ebd8916") + +if(NOT EXISTS "${DOWNLOADS}/grpc.git") + message(STATUS "Cloning") + vcpkg_execute_required_process( + COMMAND ${GIT} clone --bare ${GIT_URL} ${DOWNLOADS}/grpc.git + WORKING_DIRECTORY ${DOWNLOADS} + LOGNAME clone + ) +endif() +message(STATUS "Cloning done") + +if(NOT EXISTS "${CURRENT_BUILDTREES_DIR}/src/.git") + message(STATUS "Adding worktree") + vcpkg_execute_required_process( + COMMAND ${GIT} worktree add -f --detach ${CURRENT_BUILDTREES_DIR}/src ${GIT_REV} + WORKING_DIRECTORY ${DOWNLOADS}/grpc.git + LOGNAME worktree + ) + message(STATUS "Updating sumbodules") + vcpkg_execute_required_process( + COMMAND ${GIT} submodule update --init third_party/nanopb + WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/src + LOGNAME submodule + ) +endif() +message(STATUS "Adding worktree and updating sumbodules done") + +vcpkg_configure_cmake( + SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src + OPTIONS + -DgRPC_INSTALL=ON + -DgRPC_ZLIB_PROVIDER=package + -DgRPC_SSL_PROVIDER=package + -DgRPC_PROTOBUF_PROVIDER=package +) + +vcpkg_install_cmake() + +file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share/grpc) +file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake/gRPC/gRPCConfig.cmake ${CURRENT_PACKAGES_DIR}/share/grpc/gRPCConfig.cmake) +file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake/gRPC/gRPCConfigVersion.cmake ${CURRENT_PACKAGES_DIR}/share/grpc/gRPCConfigVersion.cmake) +file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake/gRPC/gRPCTargets.cmake ${CURRENT_PACKAGES_DIR}/share/grpc/gRPCTargets.cmake) +file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake/gRPC/gRPCTargets-release.cmake ${CURRENT_PACKAGES_DIR}/share/grpc/gRPCTargets-release.cmake) +file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/cmake/gRPC/gRPCTargets-debug.cmake ${CURRENT_PACKAGES_DIR}/share/grpc/gRPCTargets-debug.cmake) + +file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/grpc RENAME copyright) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/cmake) + +vcpkg_copy_pdbs() diff --git a/ports/gsl/portfile.cmake b/ports/gsl/portfile.cmake index 5cf05c985..e674cf2e4 100644 --- a/ports/gsl/portfile.cmake +++ b/ports/gsl/portfile.cmake @@ -1,13 +1,14 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/gsl-fd5ad87bf25cb5e87104ee58106dee9bc809cd93) vcpkg_download_distfile(ARCHIVE - URL "https://github.com/Microsoft/GSL/archive/fd5ad87bf25cb5e87104ee58106dee9bc809cd93.zip" + URLS "https://github.com/Microsoft/GSL/archive/fd5ad87bf25cb5e87104ee58106dee9bc809cd93.zip" FILENAME "gsl-fd5ad87bf.zip" - MD5 30935befb50eb3742131ad1056d2d498 + SHA512 81887be57e12bfc4e67353713478e1638bf1bffb8f523cf7241acf5415c2e3fe82ea0c0128380dcb2008afb5f53ac0d4893660626a8cd1eb501da536e6af5692 ) vcpkg_extract_source_archive(${ARCHIVE}) -file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/gsl-fd5ad87bf25cb5e87104ee58106dee9bc809cd93/gsl DESTINATION ${CURRENT_PACKAGES_DIR}/include FILES_MATCHING PATTERN "*") +file(INSTALL ${SOURCE_PATH}/gsl DESTINATION ${CURRENT_PACKAGES_DIR}/include FILES_MATCHING PATTERN "*") # Handle copyright -file(COPY ${CURRENT_BUILDTREES_DIR}/src/gsl-fd5ad87bf25cb5e87104ee58106dee9bc809cd93/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/gsl) +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/gsl) file(RENAME ${CURRENT_PACKAGES_DIR}/share/gsl/LICENSE ${CURRENT_PACKAGES_DIR}/share/gsl/copyright) diff --git a/ports/gtest/0001-Enable-C-11-features-for-VS2015-fix-appveyor-fail.patch b/ports/gtest/0001-Enable-C-11-features-for-VS2015-fix-appveyor-fail.patch new file mode 100644 index 000000000..274942482 --- /dev/null +++ b/ports/gtest/0001-Enable-C-11-features-for-VS2015-fix-appveyor-fail.patch @@ -0,0 +1,177 @@ +From 1695708beda0306f3b4dffd66f4be142425894a0 Mon Sep 17 00:00:00 2001 +From: Arkady Shapkin <arkady.shapkin@gmail.com> +Date: Wed, 2 Mar 2016 02:53:10 +0300 +Subject: [PATCH] Enable C++11 features for VS2015 (fix appveyor fail) + +--- + .gitignore | 13 ++++++++ + googlemock/test/gmock-matchers_test.cc | 5 +++ + googletest/include/gtest/internal/gtest-port.h | 10 ++++-- + googletest/test/gtest-printers_test.cc | 43 ++++++++++++++++++++++--- + googletest/test/gtest_catch_exceptions_test_.cc | 2 +- + 5 files changed, 64 insertions(+), 9 deletions(-) + +diff --git a/.gitignore b/.gitignore +index ce310bc..08a67cd 100644 +--- a/.gitignore ++++ b/.gitignore +@@ -1,2 +1,15 @@ + # Ignore CI build directory + build/ ++_build/ ++ ++# Visual Studio files ++*.sdf ++*.opensdf ++*.VC.opendb ++*.suo ++*.user ++_ReSharper.Caches/ ++Win32-Debug/ ++Win32-Release/ ++x64-Debug/ ++x64-Release/ +diff --git a/googlemock/test/gmock-matchers_test.cc b/googlemock/test/gmock-matchers_test.cc +index 9f62c3d..eaba362 100644 +--- a/googlemock/test/gmock-matchers_test.cc ++++ b/googlemock/test/gmock-matchers_test.cc +@@ -58,6 +58,11 @@ + # include <forward_list> // NOLINT + #endif + ++// Disable MSVC warning: "decorated name length exceeded, name was truncated". ++#ifdef _MSC_VER ++# pragma warning(disable:4503) ++#endif ++ + namespace testing { + + namespace internal { +diff --git a/googletest/include/gtest/internal/gtest-port.h b/googletest/include/gtest/internal/gtest-port.h +index 0094ed5..c07c455 100644 +--- a/googletest/include/gtest/internal/gtest-port.h ++++ b/googletest/include/gtest/internal/gtest-port.h +@@ -323,7 +323,7 @@ + // -std={c,gnu}++{0x,11} is passed. The C++11 standard specifies a + // value for __cplusplus, and recent versions of clang, gcc, and + // probably other compilers set that too in C++11 mode. +-# if __GXX_EXPERIMENTAL_CXX0X__ || __cplusplus >= 201103L ++# if __GXX_EXPERIMENTAL_CXX0X__ || __cplusplus >= 201103L || _MSC_VER >= 1900 + // Compiling in at least C++11 mode. + # define GTEST_LANG_CXX11 1 + # else +@@ -355,12 +355,16 @@ + #if GTEST_STDLIB_CXX11 + # define GTEST_HAS_STD_BEGIN_AND_END_ 1 + # define GTEST_HAS_STD_FORWARD_LIST_ 1 +-# define GTEST_HAS_STD_FUNCTION_ 1 ++# if !defined(_MSC_VER) || (_MSC_FULL_VER >= 190023824) // works only with VS2015U2 and better ++# define GTEST_HAS_STD_FUNCTION_ 1 ++# endif + # define GTEST_HAS_STD_INITIALIZER_LIST_ 1 + # define GTEST_HAS_STD_MOVE_ 1 + # define GTEST_HAS_STD_SHARED_PTR_ 1 + # define GTEST_HAS_STD_TYPE_TRAITS_ 1 + # define GTEST_HAS_STD_UNIQUE_PTR_ 1 ++# define GTEST_HAS_UNORDERED_MAP_ 1 ++# define GTEST_HAS_UNORDERED_SET_ 1 + #endif + + // C++11 specifies that <tuple> provides std::tuple. +@@ -616,7 +620,7 @@ struct _RTL_CRITICAL_SECTION; + // Determines if hash_map/hash_set are available. + // Only used for testing against those containers. + #if !defined(GTEST_HAS_HASH_MAP_) +-# if _MSC_VER ++# if defined(_MSC_VER) && (_MSC_VER < 1900) + # define GTEST_HAS_HASH_MAP_ 1 // Indicates that hash_map is available. + # define GTEST_HAS_HASH_SET_ 1 // Indicates that hash_set is available. + # endif // _MSC_VER +diff --git a/googletest/test/gtest-printers_test.cc b/googletest/test/gtest-printers_test.cc +index 3e97cc2..6320563 100644 +--- a/googletest/test/gtest-printers_test.cc ++++ b/googletest/test/gtest-printers_test.cc +@@ -51,10 +51,15 @@ + #include "gtest/gtest.h" + + // hash_map and hash_set are available under Visual C++, or on Linux. +-#if GTEST_HAS_HASH_MAP_ ++#if GTEST_HAS_UNORDERED_MAP_ ++# include <unordered_map> // NOLINT ++#elif GTEST_HAS_HASH_MAP_ + # include <hash_map> // NOLINT + #endif // GTEST_HAS_HASH_MAP_ +-#if GTEST_HAS_HASH_SET_ ++ ++#if GTEST_HAS_UNORDERED_SET_ ++# include <unordered_set> // NOLINT ++#elif GTEST_HAS_HASH_SET_ + # include <hash_set> // NOLINT + #endif // GTEST_HAS_HASH_SET_ + +@@ -217,18 +222,46 @@ using ::testing::internal::string; + // The hash_* classes are not part of the C++ standard. STLport + // defines them in namespace std. MSVC defines them in ::stdext. GCC + // defines them in ::. ++#if GTEST_HAS_UNORDERED_MAP_ ++ ++#define GTEST_HAS_HASH_MAP_ 1 ++template<class Key, class T> ++using hash_map = ::std::unordered_map<Key, T>; ++template<class Key, class T> ++using hash_multimap = ::std::unordered_multimap<Key, T>; ++ ++#elif GTEST_HAS_HASH_MAP_ ++ + #ifdef _STLP_HASH_MAP // We got <hash_map> from STLport. + using ::std::hash_map; +-using ::std::hash_set; + using ::std::hash_multimap; +-using ::std::hash_multiset; + #elif _MSC_VER + using ::stdext::hash_map; +-using ::stdext::hash_set; + using ::stdext::hash_multimap; ++#endif ++ ++#endif ++ ++#if GTEST_HAS_UNORDERED_SET_ ++ ++#define GTEST_HAS_HASH_SET_ 1 ++template<class Key> ++using hash_set = ::std::unordered_set<Key>; ++template<class Key> ++using hash_multiset = ::std::unordered_multiset<Key>; ++ ++#elif GTEST_HAS_HASH_SET_ ++ ++#ifdef _STLP_HASH_MAP // We got <hash_map> from STLport. ++using ::std::hash_set; ++using ::std::hash_multiset; ++#elif _MSC_VER ++using ::stdext::hash_set; + using ::stdext::hash_multiset; + #endif + ++#endif ++ + // Prints a value to a string using the universal value printer. This + // is a helper for testing UniversalPrinter<T>::Print() for various types. + template <typename T> +diff --git a/googletest/test/gtest_catch_exceptions_test_.cc b/googletest/test/gtest_catch_exceptions_test_.cc +index d0fc82c..c6d953c 100644 +--- a/googletest/test/gtest_catch_exceptions_test_.cc ++++ b/googletest/test/gtest_catch_exceptions_test_.cc +@@ -138,7 +138,7 @@ TEST_F(CxxExceptionInConstructorTest, ThrowsExceptionInConstructor) { + } + + // Exceptions in destructors are not supported in C++11. +-#if !defined(__GXX_EXPERIMENTAL_CXX0X__) && __cplusplus < 201103L ++#if !GTEST_LANG_CXX11 + class CxxExceptionInDestructorTest : public Test { + public: + static void TearDownTestCase() { +-- +2.10.0.windows.1 + diff --git a/ports/gtest/CONTROL b/ports/gtest/CONTROL new file mode 100644 index 000000000..07336b978 --- /dev/null +++ b/ports/gtest/CONTROL @@ -0,0 +1,3 @@ +Source: gtest +Version: 1.8 +Description: GoogleTest and GoogleMock testing frameworks.
\ No newline at end of file diff --git a/ports/gtest/portfile.cmake b/ports/gtest/portfile.cmake new file mode 100644 index 000000000..710736d0d --- /dev/null +++ b/ports/gtest/portfile.cmake @@ -0,0 +1,54 @@ +include(vcpkg_common_functions) + +find_program(GIT git) + +set(GIT_URL "https://github.com/google/googletest.git") +set(GIT_TAG "release-1.8.0") + +if(NOT EXISTS "${DOWNLOADS}/googletest.git") + message(STATUS "Cloning") + vcpkg_execute_required_process( + COMMAND ${GIT} clone --bare ${GIT_URL} ${DOWNLOADS}/googletest.git + WORKING_DIRECTORY ${DOWNLOADS} + LOGNAME clone + ) +endif() +message(STATUS "Cloning done") + +if(NOT EXISTS "${CURRENT_BUILDTREES_DIR}/src/.git") + message(STATUS "Adding worktree and patching") + vcpkg_execute_required_process( + COMMAND ${GIT} worktree add -f --detach ${CURRENT_BUILDTREES_DIR}/src ${GIT_TAG} + WORKING_DIRECTORY ${DOWNLOADS}/googletest.git + LOGNAME worktree + ) + message(STATUS "Patching") + vcpkg_execute_required_process( + COMMAND ${GIT} am ${CMAKE_CURRENT_LIST_DIR}/0001-Enable-C-11-features-for-VS2015-fix-appveyor-fail.patch --ignore-whitespace --whitespace=fix + WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/src + LOGNAME patch + ) +endif() +message(STATUS "Adding worktree and patching done") + +vcpkg_configure_cmake( + SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src + OPTIONS + -DBUILD_SHARED_LIBS=ON +) + +vcpkg_install_cmake() +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/googletest/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/gtest RENAME copyright) +file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin/) +file(RENAME ${CURRENT_PACKAGES_DIR}/lib/gtest.dll ${CURRENT_PACKAGES_DIR}/bin/gtest.dll) +file(RENAME ${CURRENT_PACKAGES_DIR}/lib/gtest_main.dll ${CURRENT_PACKAGES_DIR}/bin/gtest_main.dll) +file(RENAME ${CURRENT_PACKAGES_DIR}/lib/gmock.dll ${CURRENT_PACKAGES_DIR}/bin/gmock.dll) +file(RENAME ${CURRENT_PACKAGES_DIR}/lib/gmock_main.dll ${CURRENT_PACKAGES_DIR}/bin/gmock_main.dll) +file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin/) +file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/gtest.dll ${CURRENT_PACKAGES_DIR}/debug/bin/gtest.dll) +file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/gtest_main.dll ${CURRENT_PACKAGES_DIR}/debug/bin/gtest_main.dll) +file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/gmock.dll ${CURRENT_PACKAGES_DIR}/debug/bin/gmock.dll) +file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/gmock_main.dll ${CURRENT_PACKAGES_DIR}/debug/bin/gmock_main.dll) + +vcpkg_copy_pdbs() diff --git a/ports/libiconv/CMakeLists.txt b/ports/libiconv/CMakeLists.txt new file mode 100644 index 000000000..2afe89d1d --- /dev/null +++ b/ports/libiconv/CMakeLists.txt @@ -0,0 +1,128 @@ +## +## CMake support for libiconv +## based on the work here: https://github.com/vovythevov/libiconv-cmake +## + +cmake_minimum_required(VERSION 3.0.0) +project(Libiconv) + +# +# Options +# +set(BUILD_SHARED_LIBS ON CACHE BOOL "Build shared libraries, Always ON since this code is LGPL" FORCE) + +# Config file +configure_file( + ${Libiconv_SOURCE_DIR}/new_config.h.in + ${Libiconv_BINARY_DIR}/config.h +) +include_directories(${Libiconv_SOURCE_DIR} ${Libiconv_BINARY_DIR}) + +macro(header_injection_hack) + include(CMakeParseArguments) + set(options) + set(oneValueArgs LIBRARY_NAME INPUT OUTPUT) + set(multiValueArgs) + cmake_parse_arguments(hack + "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} + ) + string(TOUPPER ${hack_LIBRARY_NAME} hack_library_name_upper) + set(HAVE_VISIBILITY + "WIN32 + #if defined(${hack_LIBRARY_NAME}_EXPORTS) + #define ${hack_library_name_upper}_DLL_EXPORTED __declspec(dllexport) + #else + #define ${hack_library_name_upper}_DLL_EXPORTED __declspec(dllimport) + #endif + #elif true" + ) + configure_file( + ${hack_INPUT} + ${hack_OUTPUT} + ) +endmacro() +# +# Build libcharset +# +set(libname libcharset) +set(libcharset_source_dir ${Libiconv_SOURCE_DIR}/libcharset) + +if(WIN32) + add_definitions(-DLIBDIR) +endif() + +# Hack: to be able to configure the localcharset.h.build.in correctly, we +# inject code in the variable have visibility +header_injection_hack( + LIBRARY_NAME ${libname} + INPUT ${Libiconv_SOURCE_DIR}/libcharset/include/localcharset.h.build.in + OUTPUT ${Libiconv_BINARY_DIR}/localcharset.h + ) + +set(${libname}_sources + ${libcharset_source_dir}/lib/relocatable.c + ${libcharset_source_dir}/lib/relocatable.h + ${libcharset_source_dir}/lib/localcharset.c + ${Libiconv_BINARY_DIR}/localcharset.h +) + +add_library(${libname} ${${libname}_sources}) +list(APPEND Libiconv_TARGETS ${libname}) +list(APPEND Libiconv_headers ${Libiconv_BINARY_DIR}/localcharset.h) + +# +# Build libiconv +# +set(libname libiconv) + +# Hack: same hack than for libcharset +set(HAVE_WCHAR_T "HAVE_WCHAR_T") +set(USE_MBSTATE_T "USE_MBSTATE_T") +set(BROKEN_WCHAR_H "BROKEN_WCHAR_H") + +header_injection_hack( + LIBRARY_NAME ${libname} + INPUT ${Libiconv_SOURCE_DIR}/include/iconv.h.build.in + OUTPUT ${Libiconv_BINARY_DIR}/iconv.h + ) + +list(APPEND simple_header_config + uniwidth + unitypes + ) +foreach(header ${simple_header_config}) + configure_file( + ${Libiconv_SOURCE_DIR}/srclib/${header}.in.h + ${Libiconv_BINARY_DIR}/${header}.h + ) +endforeach() + +set(${libname}_sources + ${Libiconv_SOURCE_DIR}/lib/iconv.c + ${Libiconv_BINARY_DIR}/iconv.h +) + +add_library(${libname} ${${libname}_sources}) +target_link_libraries(${libname} libcharset) +list(APPEND Libiconv_TARGETS ${libname}) +list(APPEND Libiconv_headers ${Libiconv_BINARY_DIR}/iconv.h) + +# +# Export targets +# +install(TARGETS ${Libiconv_TARGETS} + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib +) + +install(FILES ${Libiconv_headers} DESTINATION include) + +set(Libiconv_TARGETS_FILE ${Libiconv_BINARY_DIR}/LibiconvTargets.cmake) +export(TARGETS ${Libiconv_TARGETS} FILE ${Libiconv_TARGETS_FILE}) + +configure_file( + ${Libiconv_SOURCE_DIR}/LibiconvConfig.cmake.in + ${Libiconv_BINARY_DIR}/LibiconvConfig.cmake + @ONLY +) diff --git a/ports/libiconv/CONTROL b/ports/libiconv/CONTROL new file mode 100644 index 000000000..c79f06bb8 --- /dev/null +++ b/ports/libiconv/CONTROL @@ -0,0 +1,3 @@ +Source: libiconv +Version: 1.14 +Description: GNU Unicode text conversion diff --git a/ports/libiconv/LibiconvConfig.cmake.in b/ports/libiconv/LibiconvConfig.cmake.in new file mode 100644 index 000000000..ec0df8f70 --- /dev/null +++ b/ports/libiconv/LibiconvConfig.cmake.in @@ -0,0 +1,12 @@ +# +# Use file for libiconv. Auto-generated, any change here might be overwritten +# without any warning. +# + +set(Libiconv_SOURCE_DIR "@Libiconv_SOURCE_DIR@") +set(Libiconv_BINARY_DIR "@Libiconv_BINARY_DIR@") +set(Libiconv_LIBRARIES "@Libiconv_TARGETS@") + +if(EXISTS "@Libiconv_TARGETS_FILE@" AND NOT TARGET libcharset) + include("@Libiconv_TARGETS_FILE@") +endif()
\ No newline at end of file diff --git a/ports/libiconv/new_config.h.in b/ports/libiconv/new_config.h.in new file mode 100644 index 000000000..01db0075d --- /dev/null +++ b/ports/libiconv/new_config.h.in @@ -0,0 +1,933 @@ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Define to the number of bits in type 'ptrdiff_t'. */ +#undef BITSIZEOF_PTRDIFF_T + +/* Define to the number of bits in type 'sig_atomic_t'. */ +#undef BITSIZEOF_SIG_ATOMIC_T + +/* Define to the number of bits in type 'size_t'. */ +#undef BITSIZEOF_SIZE_T + +/* Define to the number of bits in type 'wchar_t'. */ +#undef BITSIZEOF_WCHAR_T + +/* Define to the number of bits in type 'wint_t'. */ +#undef BITSIZEOF_WINT_T + +/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP + systems. This function is required for `alloca.c' support on those systems. + */ +#undef CRAY_STACKSEG_END + +/* Define to 1 if using `alloca.c'. */ +#undef C_ALLOCA + +/* Define to 1 if // is a file system root distinct from /. */ +#undef DOUBLE_SLASH_IS_DISTINCT_ROOT + +/* Define as good substitute value for EILSEQ. */ +//not undefined on Windows 32/64 +#ifndef _WIN32 +#undef EILSEQ +#endif + +/* Define to 1 to enable a few rarely used encodings. */ +#undef ENABLE_EXTRA + +/* Define to 1 if translation of program messages to the user's native + language is requested. */ +#undef ENABLE_NLS + +/* Define to 1 if the package shall run at any location in the file system. */ +#undef ENABLE_RELOCATABLE + +/* Define to 1 if realpath() can malloc memory, always gives an absolute path, + and handles trailing slash correctly. */ +#undef FUNC_REALPATH_WORKS + +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module canonicalize-lgpl shall be considered present. */ +#undef GNULIB_CANONICALIZE_LGPL + +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module sigpipe shall be considered present. */ +#undef GNULIB_SIGPIPE + +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module strerror shall be considered present. */ +#undef GNULIB_STRERROR + +/* Define to 1 when the gnulib module canonicalize_file_name should be tested. + */ +#undef GNULIB_TEST_CANONICALIZE_FILE_NAME + +/* Define to 1 when the gnulib module environ should be tested. */ +#undef GNULIB_TEST_ENVIRON + +/* Define to 1 when the gnulib module lstat should be tested. */ +#undef GNULIB_TEST_LSTAT + +/* Define to 1 when the gnulib module read should be tested. */ +#undef GNULIB_TEST_READ + +/* Define to 1 when the gnulib module readlink should be tested. */ +#undef GNULIB_TEST_READLINK + +/* Define to 1 when the gnulib module realpath should be tested. */ +#undef GNULIB_TEST_REALPATH + +/* Define to 1 when the gnulib module sigprocmask should be tested. */ +#undef GNULIB_TEST_SIGPROCMASK + +/* Define to 1 when the gnulib module stat should be tested. */ +#undef GNULIB_TEST_STAT + +/* Define to 1 when the gnulib module strerror should be tested. */ +#undef GNULIB_TEST_STRERROR + +/* Define to 1 if you have `alloca', as a function or macro. */ +#undef HAVE_ALLOCA + +/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix). + */ +#undef HAVE_ALLOCA_H + +/* Define to 1 if you have the `canonicalize_file_name' function. */ +#undef HAVE_CANONICALIZE_FILE_NAME + +/* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the + CoreFoundation framework. */ +#undef HAVE_CFLOCALECOPYCURRENT + +/* Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in + the CoreFoundation framework. */ +#undef HAVE_CFPREFERENCESCOPYAPPVALUE + +/* Define if the GNU dcgettext() function is already present or preinstalled. + */ +#undef HAVE_DCGETTEXT + +/* Define to 1 if you have the declaration of `clearerr_unlocked', and to 0 if + you don't. */ +#undef HAVE_DECL_CLEARERR_UNLOCKED + +/* Define to 1 if you have the declaration of `feof_unlocked', and to 0 if you + don't. */ +#undef HAVE_DECL_FEOF_UNLOCKED + +/* Define to 1 if you have the declaration of `ferror_unlocked', and to 0 if + you don't. */ +#undef HAVE_DECL_FERROR_UNLOCKED + +/* Define to 1 if you have the declaration of `fflush_unlocked', and to 0 if + you don't. */ +#undef HAVE_DECL_FFLUSH_UNLOCKED + +/* Define to 1 if you have the declaration of `fgets_unlocked', and to 0 if + you don't. */ +#undef HAVE_DECL_FGETS_UNLOCKED + +/* Define to 1 if you have the declaration of `fputc_unlocked', and to 0 if + you don't. */ +#undef HAVE_DECL_FPUTC_UNLOCKED + +/* Define to 1 if you have the declaration of `fputs_unlocked', and to 0 if + you don't. */ +#undef HAVE_DECL_FPUTS_UNLOCKED + +/* Define to 1 if you have the declaration of `fread_unlocked', and to 0 if + you don't. */ +#undef HAVE_DECL_FREAD_UNLOCKED + +/* Define to 1 if you have the declaration of `fwrite_unlocked', and to 0 if + you don't. */ +#undef HAVE_DECL_FWRITE_UNLOCKED + +/* Define to 1 if you have the declaration of `getchar_unlocked', and to 0 if + you don't. */ +#undef HAVE_DECL_GETCHAR_UNLOCKED + +/* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you + don't. */ +#undef HAVE_DECL_GETC_UNLOCKED + +/* Define to 1 if you have the declaration of `program_invocation_name', and + to 0 if you don't. */ +#undef HAVE_DECL_PROGRAM_INVOCATION_NAME + +/* Define to 1 if you have the declaration of `program_invocation_short_name', + and to 0 if you don't. */ +#undef HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME + +/* Define to 1 if you have the declaration of `putchar_unlocked', and to 0 if + you don't. */ +#undef HAVE_DECL_PUTCHAR_UNLOCKED + +/* Define to 1 if you have the declaration of `putc_unlocked', and to 0 if you + don't. */ +#undef HAVE_DECL_PUTC_UNLOCKED + +/* Define to 1 if you have the declaration of `setenv', and to 0 if you don't. + */ +#undef HAVE_DECL_SETENV + +/* Define to 1 if you have the declaration of `strerror_r', and to 0 if you + don't. */ +#undef HAVE_DECL_STRERROR_R + +/* Define to 1 if you have the <dlfcn.h> header file. */ +#undef HAVE_DLFCN_H + +/* Define if you have the declaration of environ. */ +#undef HAVE_ENVIRON_DECL + +/* Define to 1 if you have the `getcwd' function. */ +#undef HAVE_GETCWD + +/* Define to 1 if you have the `getc_unlocked' function. */ +#undef HAVE_GETC_UNLOCKED + +/* Define if the GNU gettext() function is already present or preinstalled. */ +#undef HAVE_GETTEXT + +/* Define if you have the iconv() function and it works. */ +#undef HAVE_ICONV + +/* Define to 1 if you have the <inttypes.h> header file. */ +#undef HAVE_INTTYPES_H + +/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */ +#undef HAVE_LANGINFO_CODESET + +/* Define to 1 if the system has the type `long long int'. */ +#undef HAVE_LONG_LONG_INT + +/* Define to 1 if you have the `lstat' function. */ +#undef HAVE_LSTAT + +/* Define to 1 if you have the <mach-o/dyld.h> header file. */ +#undef HAVE_MACH_O_DYLD_H + +/* Define to 1 if you have the `mbrtowc' function. */ +#undef HAVE_MBRTOWC + +/* Define to 1 if you have the `mbsinit' function. */ +#undef HAVE_MBSINIT + +/* Define to 1 if <wchar.h> declares mbstate_t. */ +#undef HAVE_MBSTATE_T + +/* Define to 1 if you have the `memmove' function. */ +#undef HAVE_MEMMOVE + +/* Define to 1 if you have the <memory.h> header file. */ +#undef HAVE_MEMORY_H + +/* Define to 1 if atoll is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_ATOLL + +/* Define to 1 if canonicalize_file_name is declared even after undefining + macros. */ +#undef HAVE_RAW_DECL_CANONICALIZE_FILE_NAME + +/* Define to 1 if chown is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_CHOWN + +/* Define to 1 if dprintf is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_DPRINTF + +/* Define to 1 if dup2 is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_DUP2 + +/* Define to 1 if dup3 is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_DUP3 + +/* Define to 1 if endusershell is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_ENDUSERSHELL + +/* Define to 1 if environ is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_ENVIRON + +/* Define to 1 if euidaccess is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_EUIDACCESS + +/* Define to 1 if faccessat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_FACCESSAT + +/* Define to 1 if fchdir is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_FCHDIR + +/* Define to 1 if fchmodat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_FCHMODAT + +/* Define to 1 if fchownat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_FCHOWNAT + +/* Define to 1 if fcntl is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_FCNTL + +/* Define to 1 if ffsl is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_FFSL + +/* Define to 1 if ffsll is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_FFSLL + +/* Define to 1 if fpurge is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_FPURGE + +/* Define to 1 if fseeko is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_FSEEKO + +/* Define to 1 if fstatat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_FSTATAT + +/* Define to 1 if fsync is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_FSYNC + +/* Define to 1 if ftello is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_FTELLO + +/* Define to 1 if ftruncate is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_FTRUNCATE + +/* Define to 1 if futimens is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_FUTIMENS + +/* Define to 1 if getcwd is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GETCWD + +/* Define to 1 if getdelim is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GETDELIM + +/* Define to 1 if getdomainname is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GETDOMAINNAME + +/* Define to 1 if getdtablesize is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GETDTABLESIZE + +/* Define to 1 if getgroups is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GETGROUPS + +/* Define to 1 if gethostname is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GETHOSTNAME + +/* Define to 1 if getline is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GETLINE + +/* Define to 1 if getloadavg is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GETLOADAVG + +/* Define to 1 if getlogin is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GETLOGIN + +/* Define to 1 if getlogin_r is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GETLOGIN_R + +/* Define to 1 if getpagesize is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GETPAGESIZE + +/* Define to 1 if getsubopt is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GETSUBOPT + +/* Define to 1 if getusershell is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GETUSERSHELL + +/* Define to 1 if grantpt is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GRANTPT + +/* Define to 1 if group_member is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_GROUP_MEMBER + +/* Define to 1 if initstat_r is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_INITSTAT_R + +/* Define to 1 if lchmod is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_LCHMOD + +/* Define to 1 if lchown is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_LCHOWN + +/* Define to 1 if link is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_LINK + +/* Define to 1 if linkat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_LINKAT + +/* Define to 1 if lseek is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_LSEEK + +/* Define to 1 if lstat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_LSTAT + +/* Define to 1 if memmem is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_MEMMEM + +/* Define to 1 if mempcpy is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_MEMPCPY + +/* Define to 1 if memrchr is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_MEMRCHR + +/* Define to 1 if mkdirat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_MKDIRAT + +/* Define to 1 if mkdtemp is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_MKDTEMP + +/* Define to 1 if mkfifo is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_MKFIFO + +/* Define to 1 if mkfifoat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_MKFIFOAT + +/* Define to 1 if mknod is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_MKNOD + +/* Define to 1 if mknodat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_MKNODAT + +/* Define to 1 if mkostemp is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_MKOSTEMP + +/* Define to 1 if mkostemps is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_MKOSTEMPS + +/* Define to 1 if mkstemp is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_MKSTEMP + +/* Define to 1 if mkstemps is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_MKSTEMPS + +/* Define to 1 if openat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_OPENAT + +/* Define to 1 if pipe is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_PIPE + +/* Define to 1 if pipe2 is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_PIPE2 + +/* Define to 1 if popen is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_POPEN + +/* Define to 1 if pread is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_PREAD + +/* Define to 1 if pthread_sigmask is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_PTHREAD_SIGMASK + +/* Define to 1 if ptsname is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_PTSNAME + +/* Define to 1 if pwrite is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_PWRITE + +/* Define to 1 if random_r is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_RANDOM_R + +/* Define to 1 if rawmemchr is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_RAWMEMCHR + +/* Define to 1 if readlink is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_READLINK + +/* Define to 1 if readlinkat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_READLINKAT + +/* Define to 1 if realpath is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_REALPATH + +/* Define to 1 if renameat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_RENAMEAT + +/* Define to 1 if rmdir is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_RMDIR + +/* Define to 1 if rpmatch is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_RPMATCH + +/* Define to 1 if setenv is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SETENV + +/* Define to 1 if setstate_r is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SETSTATE_R + +/* Define to 1 if setusershell is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SETUSERSHELL + +/* Define to 1 if sigaction is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SIGACTION + +/* Define to 1 if sigaddset is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SIGADDSET + +/* Define to 1 if sigdelset is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SIGDELSET + +/* Define to 1 if sigemptyset is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SIGEMPTYSET + +/* Define to 1 if sigfillset is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SIGFILLSET + +/* Define to 1 if sigismember is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SIGISMEMBER + +/* Define to 1 if sigpending is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SIGPENDING + +/* Define to 1 if sigprocmask is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SIGPROCMASK + +/* Define to 1 if sleep is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SLEEP + +/* Define to 1 if snprintf is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SNPRINTF + +/* Define to 1 if srandom_r is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SRANDOM_R + +/* Define to 1 if stat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STAT + +/* Define to 1 if stpcpy is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STPCPY + +/* Define to 1 if stpncpy is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STPNCPY + +/* Define to 1 if strcasestr is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRCASESTR + +/* Define to 1 if strchrnul is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRCHRNUL + +/* Define to 1 if strdup is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRDUP + +/* Define to 1 if strerror_r is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRERROR_R + +/* Define to 1 if strncat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRNCAT + +/* Define to 1 if strndup is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRNDUP + +/* Define to 1 if strnlen is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRNLEN + +/* Define to 1 if strpbrk is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRPBRK + +/* Define to 1 if strsep is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRSEP + +/* Define to 1 if strsignal is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRSIGNAL + +/* Define to 1 if strtod is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRTOD + +/* Define to 1 if strtok_r is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRTOK_R + +/* Define to 1 if strtoll is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRTOLL + +/* Define to 1 if strtoull is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRTOULL + +/* Define to 1 if strverscmp is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_STRVERSCMP + +/* Define to 1 if symlink is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SYMLINK + +/* Define to 1 if symlinkat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_SYMLINKAT + +/* Define to 1 if tmpfile is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_TMPFILE + +/* Define to 1 if ttyname_r is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_TTYNAME_R + +/* Define to 1 if unlink is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_UNLINK + +/* Define to 1 if unlinkat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_UNLINKAT + +/* Define to 1 if unlockpt is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_UNLOCKPT + +/* Define to 1 if unsetenv is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_UNSETENV + +/* Define to 1 if usleep is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_USLEEP + +/* Define to 1 if utimensat is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_UTIMENSAT + +/* Define to 1 if vdprintf is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_VDPRINTF + +/* Define to 1 if vsnprintf is declared even after undefining macros. */ +#undef HAVE_RAW_DECL_VSNPRINTF + +/* Define to 1 if _Exit is declared even after undefining macros. */ +#undef HAVE_RAW_DECL__EXIT + +/* Define to 1 if you have the `readlink' function. */ +#undef HAVE_READLINK + +/* Define to 1 if you have the `readlinkat' function. */ +#undef HAVE_READLINKAT + +/* Define to 1 if you have the `realpath' function. */ +#undef HAVE_REALPATH + +/* Define to 1 if you have the <search.h> header file. */ +#undef HAVE_SEARCH_H + +/* Define to 1 if you have the `setenv' function. */ +#undef HAVE_SETENV + +/* Define to 1 if you have the `setlocale' function. */ +#undef HAVE_SETLOCALE + +/* Define to 1 if 'sig_atomic_t' is a signed integer type. */ +#undef HAVE_SIGNED_SIG_ATOMIC_T + +/* Define to 1 if 'wchar_t' is a signed integer type. */ +#undef HAVE_SIGNED_WCHAR_T + +/* Define to 1 if 'wint_t' is a signed integer type. */ +#undef HAVE_SIGNED_WINT_T + +/* Define to 1 if the system has the type `sigset_t'. */ +#undef HAVE_SIGSET_T + +/* Define to 1 if you have the <stdint.h> header file. */ +#undef HAVE_STDINT_H + +/* Define to 1 if you have the <stdlib.h> header file. */ +#undef HAVE_STDLIB_H + +/* Define to 1 if you have the `strerror_r' function. */ +#undef HAVE_STRERROR_R + +/* Define to 1 if you have the <strings.h> header file. */ +#undef HAVE_STRINGS_H + +/* Define to 1 if you have the <string.h> header file. */ +#undef HAVE_STRING_H + +/* Define to 1 if you have the <sys/bitypes.h> header file. */ +#undef HAVE_SYS_BITYPES_H + +/* Define to 1 if you have the <sys/inttypes.h> header file. */ +#undef HAVE_SYS_INTTYPES_H + +/* Define to 1 if you have the <sys/param.h> header file. */ +#undef HAVE_SYS_PARAM_H + +/* Define to 1 if you have the <sys/socket.h> header file. */ +#undef HAVE_SYS_SOCKET_H + +/* Define to 1 if you have the <sys/stat.h> header file. */ +#undef HAVE_SYS_STAT_H + +/* Define to 1 if you have the <sys/time.h> header file. */ +#undef HAVE_SYS_TIME_H + +/* Define to 1 if you have the <sys/types.h> header file. */ +#undef HAVE_SYS_TYPES_H + +/* Define to 1 if you have the `tsearch' function. */ +#undef HAVE_TSEARCH + +/* Define to 1 if you have the <unistd.h> header file. */ +#undef HAVE_UNISTD_H + +/* Define to 1 if the system has the type `unsigned long long int'. */ +#undef HAVE_UNSIGNED_LONG_LONG_INT + +/* Define to 1 or 0, depending whether the compiler supports simple visibility + declarations. */ +#undef HAVE_VISIBILITY + +/* Define to 1 if you have the <wchar.h> header file. */ +#undef HAVE_WCHAR_H + +/* Define if you have the 'wchar_t' type. */ +#undef HAVE_WCHAR_T + +/* Define to 1 if you have the `wcrtomb' function. */ +#undef HAVE_WCRTOMB + +/* Define to 1 if you have the <winsock2.h> header file. */ +#undef HAVE_WINSOCK2_H + +/* Define to 1 if O_NOATIME works. */ +#undef HAVE_WORKING_O_NOATIME + +/* Define to 1 if O_NOFOLLOW works. */ +#undef HAVE_WORKING_O_NOFOLLOW + +/* Define to 1 if the system has the type `_Bool'. */ +#undef HAVE__BOOL + +/* Define to 1 if you have the `_NSGetExecutablePath' function. */ +#undef HAVE__NSGETEXECUTABLEPATH + +/* Define as const if the declaration of iconv() needs const. */ +#ifdef _WIN32 +#define ICONV_CONST const +#else +#undef ICONV_CONST +#endif + +/* Define to the value of ${prefix}, as a string. */ +#undef INSTALLPREFIX + +/* Define to 1 if `lstat' dereferences a symlink specified with a trailing + slash. */ +#undef LSTAT_FOLLOWS_SLASHED_SYMLINK + +/* Define to the sub-directory in which libtool stores uninstalled libraries. + */ +#undef LT_OBJDIR + +/* If malloc(0) is != NULL, define this to 1. Otherwise define this to 0. */ +#undef MALLOC_0_IS_NONNULL + +/* Define to 1 if your C compiler doesn't accept -c and -o together. */ +#undef NO_MINUS_C_MINUS_O + +/* Name of package */ +#undef PACKAGE + +/* Define to the address where bug reports for this package should be sent. */ +#undef PACKAGE_BUGREPORT + +/* Define to the full name of this package. */ +#undef PACKAGE_NAME + +/* Define to the full name and version of this package. */ +#undef PACKAGE_STRING + +/* Define to the one symbol short name of this package. */ +#undef PACKAGE_TARNAME + +/* Define to the home page for this package. */ +#undef PACKAGE_URL + +/* Define to the version of this package. */ +#undef PACKAGE_VERSION + +/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type + 'ptrdiff_t'. */ +#undef PTRDIFF_T_SUFFIX + +/* Define to 1 if readlink fails to recognize a trailing slash. */ +#undef READLINK_TRAILING_SLASH_BUG + +/* Define to 1 if stat needs help when passed a directory name with a trailing + slash */ +#undef REPLACE_FUNC_STAT_DIR + +/* Define to 1 if stat needs help when passed a file name with a trailing + slash */ +#undef REPLACE_FUNC_STAT_FILE + +/* Define to 1 if strerror(0) does not return a message implying success. */ +#undef REPLACE_STRERROR_0 + +/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type + 'sig_atomic_t'. */ +#undef SIG_ATOMIC_T_SUFFIX + +/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type + 'size_t'. */ +#undef SIZE_T_SUFFIX + +/* If using the C implementation of alloca, define if you know the + direction of stack growth for your system; otherwise it will be + automatically deduced at runtime. + STACK_DIRECTION > 0 => grows toward higher addresses + STACK_DIRECTION < 0 => grows toward lower addresses + STACK_DIRECTION = 0 => direction of growth unknown */ +#undef STACK_DIRECTION + +/* Define to 1 if the `S_IS*' macros in <sys/stat.h> do not work properly. */ +#undef STAT_MACROS_BROKEN + +/* Define to 1 if you have the ANSI C header files. */ +#undef STDC_HEADERS + +/* Define to 1 if strerror_r returns char *. */ +#undef STRERROR_R_CHAR_P + +/* Define to the prefix of C symbols at the assembler and linker level, either + an underscore or empty. */ +#undef USER_LABEL_PREFIX + +/* Define to 1 if you want getc etc. to use unlocked I/O if available. + Unlocked I/O can improve performance in unithreaded apps, but it is not + safe for multithreaded apps. */ +#undef USE_UNLOCKED_IO + +/* Version number of package */ +#undef VERSION + +/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type + 'wchar_t'. */ +#undef WCHAR_T_SUFFIX + +/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type + 'wint_t'. */ +#undef WINT_T_SUFFIX + +/* Define if the machine's byte ordering is little endian. */ +#undef WORDS_LITTLEENDIAN + +/* Define to 1 if on MINIX. */ +#undef _MINIX + +/* The _Noreturn keyword of draft C1X. */ +#ifndef _Noreturn +# if (3 <= __GNUC__ || (__GNUC__ == 2 && 8 <= __GNUC_MINOR__) \ + || 0x5110 <= __SUNPRO_C) +# define _Noreturn __attribute__ ((__noreturn__)) +# elif 1200 <= _MSC_VER +# define _Noreturn __declspec (noreturn) +# else +# define _Noreturn +# endif +#endif + + +/* Define to 2 if the system does not provide POSIX.1 features except with + this defined. */ +#undef _POSIX_1_SOURCE + +/* Define to 1 if you need to in order for `stat' and other things to work. */ +#undef _POSIX_SOURCE + +/* Define to 500 only on HP-UX. */ +#undef _XOPEN_SOURCE + +/* Enable extensions on AIX 3, Interix. */ +#ifndef _ALL_SOURCE +# undef _ALL_SOURCE +#endif +/* Enable general extensions on MacOS X. */ +#ifndef _DARWIN_C_SOURCE +# undef _DARWIN_C_SOURCE +#endif +/* Enable GNU extensions on systems that have them. */ +#ifndef _GNU_SOURCE +# undef _GNU_SOURCE +#endif +/* Enable threading extensions on Solaris. */ +#ifndef _POSIX_PTHREAD_SEMANTICS +# undef _POSIX_PTHREAD_SEMANTICS +#endif +/* Enable extensions on HP NonStop. */ +#ifndef _TANDEM_SOURCE +# undef _TANDEM_SOURCE +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# undef __EXTENSIONS__ +#endif + + +/* Define to `int' if <sys/types.h> doesn't define. */ +#undef gid_t + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +#undef inline +#endif + +/* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports + the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of + earlier versions), but does not display it by setting __GNUC_STDC_INLINE__. + __APPLE__ && __MACH__ test for MacOS X. + __APPLE_CC__ tests for the Apple compiler and its version. + __STDC_VERSION__ tests for the C99 mode. */ +#if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__ +# define __GNUC_STDC_INLINE__ 1 +#endif + +/* Define to a type if <wchar.h> does not define. */ +#undef mbstate_t + +/* Define to the type of st_nlink in struct stat, or a supertype. */ +#undef nlink_t + +/* Define to the equivalent of the C99 'restrict' keyword, or to + nothing if this is not supported. Do not define if restrict is + supported directly. */ +#undef restrict +/* Work around a bug in Sun C++: it does not support _Restrict or + __restrict__, even though the corresponding Sun C compiler ends up with + "#define restrict _Restrict" or "#define restrict __restrict__" in the + previous line. Perhaps some future version of Sun C++ will work with + restrict; if so, hopefully it defines __RESTRICT like Sun C does. */ +#if defined __SUNPRO_CC && !defined __RESTRICT +# define _Restrict +# define __restrict__ +#endif + +/* Define to `unsigned int' if <sys/types.h> does not define. */ +#undef size_t + +/* Define as a signed type of the same size as size_t. */ +#undef ssize_t + +/* Define to `int' if <sys/types.h> doesn't define. */ +#undef uid_t + +/* Define as a marker that can be attached to declarations that might not + be used. This helps to reduce warnings, such as from + GCC -Wunused-parameter. */ +#if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) +# define _GL_UNUSED __attribute__ ((__unused__)) +#else +# define _GL_UNUSED +#endif +/* The name _UNUSED_PARAMETER_ is an earlier spelling, although the name + is a misnomer outside of parameter lists. */ +#define _UNUSED_PARAMETER_ _GL_UNUSED + +/* The __pure__ attribute was added in gcc 2.96. */ +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) +# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) +#else +# define _GL_ATTRIBUTE_PURE /* empty */ +#endif + +/* The __const__ attribute was added in gcc 2.95. */ +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95) +# define _GL_ATTRIBUTE_CONST __attribute__ ((__const__)) +#else +# define _GL_ATTRIBUTE_CONST /* empty */ +#endif + + + +/* On Windows, variables that may be in a DLL must be marked specially. */ +#if defined _MSC_VER && defined _DLL +# define DLL_VARIABLE __declspec (dllimport) +#else +# define DLL_VARIABLE +#endif + diff --git a/ports/libiconv/portfile.cmake b/ports/libiconv/portfile.cmake new file mode 100644 index 000000000..4a18e79ce --- /dev/null +++ b/ports/libiconv/portfile.cmake @@ -0,0 +1,26 @@ +include(vcpkg_common_functions) +vcpkg_download_distfile(ARCHIVE + URLS "https://ftp.gnu.org/gnu/libiconv/libiconv-1.14.tar.gz" + FILENAME "libiconv-1.14.tar.gz" + SHA512 b96774fefc4fa1d07948fcc667027701373c34ebf9c4101000428e048addd85a5bb5e05e59f80eb783a3054a3a8a3c0da909450053275bbbf3ffde511eb3f387 +) +vcpkg_extract_source_archive(${ARCHIVE}) + +#Since libiconv uses automake, make and configure, we use a custom CMake file +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${CURRENT_BUILDTREES_DIR}/src/libiconv-1.14/) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/LibiconvConfig.cmake.in DESTINATION ${CURRENT_BUILDTREES_DIR}/src/libiconv-1.14/) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/new_config.h.in DESTINATION ${CURRENT_BUILDTREES_DIR}/src/libiconv-1.14/) + +vcpkg_configure_cmake( + SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libiconv-1.14 + +) + +vcpkg_install_cmake() + +# Handle copyright +file(COPY ${CURRENT_BUILDTREES_DIR}/src/libiconv-1.14/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libiconv) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/libiconv/COPYING ${CURRENT_PACKAGES_DIR}/share/libiconv/copyright) + +# clean out the debug include +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
\ No newline at end of file diff --git a/ports/libjpeg-turbo/portfile.cmake b/ports/libjpeg-turbo/portfile.cmake index 82e5c6ab1..ba68bc48b 100644 --- a/ports/libjpeg-turbo/portfile.cmake +++ b/ports/libjpeg-turbo/portfile.cmake @@ -2,9 +2,9 @@ include(vcpkg_common_functions) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libjpeg-turbo-1.4.90) vcpkg_download_distfile(ARCHIVE - URL "https://github.com/libjpeg-turbo/libjpeg-turbo/archive/1.4.90.zip" + URLS "https://github.com/libjpeg-turbo/libjpeg-turbo/archive/1.4.90.zip" FILENAME "libjpeg-turbo-1.4.90.zip" - MD5 dcd49a7100e41870faae988f608471af + SHA512 43c3d26c70a7356bb0832276fe82eead040c3f4aa17df118f91a38615bfacfdfb25fab41965f9ca2b69d18e0b937a1bb753e93fa2c114e01d5174fc1100010b4 ) vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_apply_patches( @@ -27,7 +27,6 @@ vcpkg_configure_cmake( OPTIONS_DEBUG -DINSTALL_HEADERS=OFF ) -vcpkg_build_cmake() vcpkg_install_cmake() file(COPY diff --git a/ports/libpng/portfile.cmake b/ports/libpng/portfile.cmake index c5aa301bb..3b6768560 100644 --- a/ports/libpng/portfile.cmake +++ b/ports/libpng/portfile.cmake @@ -1,10 +1,11 @@ +include(${CMAKE_TRIPLET_FILE}) include(vcpkg_common_functions) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libpng-1.6.24) vcpkg_download_distfile(ARCHIVE - URL "http://download.sourceforge.net/libpng/libpng-1.6.24.tar.xz" + URLS "http://download.sourceforge.net/libpng/libpng-1.6.24.tar.xz" FILENAME "libpng-1.6.24.tar.xz" - MD5 ffcdbd549814787fa8010c372e35ff25 + SHA512 7eccb90f530a9c728e280b2b1776304a808b5deea559632e7bcf4ea219c7cb5e453aa810215465304501127595000717d4b7c5b26a9f8e22e236ec04af53a90f ) vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_apply_patches( @@ -12,10 +13,19 @@ vcpkg_apply_patches( PATCHES "${CMAKE_CURRENT_LIST_DIR}/use-abort-on-all-platforms.patch" ) +if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + set(PNG_STATIC_LIBS OFF) + set(PNG_SHARED_LIBS ON) +else() + set(PNG_STATIC_LIBS ON) + set(PNG_SHARED_LIBS OFF) +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} OPTIONS - -DPNG_STATIC=OFF + -DPNG_STATIC=${PNG_STATIC_LIBS} + -DPNG_SHARED=${PNG_SHARED_LIBS} -DPNG_TESTS=OFF -DSKIP_INSTALL_PROGRAMS=ON -DSKIP_INSTALL_EXECUTABLES=ON @@ -24,19 +34,20 @@ vcpkg_configure_cmake( -DSKIP_INSTALL_HEADERS=ON ) -vcpkg_build_cmake() vcpkg_install_cmake() -file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/debug/share -) +if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + vcpkg_copy_pdbs() +else() + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/libpng16_static.lib ${CURRENT_PACKAGES_DIR}/lib/libpng16.lib) + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libpng16_staticd.lib ${CURRENT_PACKAGES_DIR}/debug/lib/libpng16d.lib) +endif() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share) file(RENAME ${CURRENT_PACKAGES_DIR}/lib/libpng ${CURRENT_PACKAGES_DIR}/share/libpng) file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libpng/libpng16-debug.cmake ${CURRENT_PACKAGES_DIR}/share/libpng/libpng16-debug.cmake) -file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/debug/lib/libpng -) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/libpng) file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libpng) file(RENAME ${CURRENT_PACKAGES_DIR}/share/libpng/LICENSE ${CURRENT_PACKAGES_DIR}/share/libpng/copyright) -vcpkg_copy_pdbs() diff --git a/ports/libuv/portfile.cmake b/ports/libuv/portfile.cmake index 0a830b8e4..d5aafdb21 100644 --- a/ports/libuv/portfile.cmake +++ b/ports/libuv/portfile.cmake @@ -1,8 +1,9 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-src/libuv-1.9.1) vcpkg_download_distfile(ARCHIVE - URL "https://github.com/libuv/libuv/archive/v1.9.1.zip" + URLS "https://github.com/libuv/libuv/archive/v1.9.1.zip" FILENAME "libuv-v1.9.1.zip" - MD5 4d1e74197920455203954cd8b75f0a2f + SHA512 3eb8711e3612fb3f5a1ddeb4614b2bec29c022ac5c6c2590bc5239825d758a73be0819c52747956a029859ef4e416bf3fce16665bac2c6c4890f736b47c38226 ) if(NOT EXISTS ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-src) @@ -52,13 +53,13 @@ if(TRIPLET_SYSTEM_ARCH MATCHES "x86|x64") message(STATUS "Building Release") vcpkg_execute_required_process( COMMAND cmd /c vcbuild.bat release ${TRIPLET_SYSTEM_ARCH} shared - WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-src/libuv-1.9.1 + WORKING_DIRECTORY ${SOURCE_PATH} LOGNAME ${TARGET_TRIPLET}-build-rel ) message(STATUS "Building Debug") vcpkg_execute_required_process( COMMAND cmd /c vcbuild.bat debug ${TRIPLET_SYSTEM_ARCH} shared - WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-src/libuv-1.9.1 + WORKING_DIRECTORY ${SOURCE_PATH} LOGNAME ${TARGET_TRIPLET}-build-dbg ) else() @@ -75,28 +76,28 @@ file(MAKE_DIRECTORY ) file(COPY - ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-src/libuv-1.9.1/include/tree.h - ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-src/libuv-1.9.1/include/uv.h - ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-src/libuv-1.9.1/include/uv-version.h - ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-src/libuv-1.9.1/include/uv-errno.h - ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-src/libuv-1.9.1/include/uv-threadpool.h - ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-src/libuv-1.9.1/include/uv-win.h + ${SOURCE_PATH}/include/tree.h + ${SOURCE_PATH}/include/uv.h + ${SOURCE_PATH}/include/uv-version.h + ${SOURCE_PATH}/include/uv-errno.h + ${SOURCE_PATH}/include/uv-threadpool.h + ${SOURCE_PATH}/include/uv-win.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) file(COPY - ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-src/libuv-1.9.1/Debug/libuv.dll + ${SOURCE_PATH}/Debug/libuv.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) file(COPY - ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-src/libuv-1.9.1/Debug/libuv.lib + ${SOURCE_PATH}/Debug/libuv.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) file(COPY - ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-src/libuv-1.9.1/Release/libuv.dll + ${SOURCE_PATH}/Release/libuv.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin) file(COPY - ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-src/libuv-1.9.1/Release/libuv.lib + ${SOURCE_PATH}/Release/libuv.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib) file(COPY - ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-src/libuv-1.9.1/LICENSE + ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libuv) file(RENAME diff --git a/ports/libwebsockets/portfile.cmake b/ports/libwebsockets/portfile.cmake index 5aa1e3ff5..5253f6fa8 100644 --- a/ports/libwebsockets/portfile.cmake +++ b/ports/libwebsockets/portfile.cmake @@ -1,13 +1,14 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libwebsockets-2.0.0) vcpkg_download_distfile(ARCHIVE - URL "https://github.com/warmcat/libwebsockets/archive/v2.0.0.zip" + URLS "https://github.com/warmcat/libwebsockets/archive/v2.0.0.zip" FILENAME "libwebsockets-v2.0.0.zip" - MD5 1947a1887dda5b5f9624048f4b6b1507 + SHA512 bf57a46f2c60095e7e6ec6656b185ffd2cf8f553bc22255ae8f6825d3613316d794f139cdefacbdf60ef997b0cd675fe356813d406c9b7c5a5ae838ce5326042 ) vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_configure_cmake( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libwebsockets-2.0.0 + SOURCE_PATH ${SOURCE_PATH} OPTIONS -DLWS_WITH_STATIC=OFF -DLWS_USE_BUNDLED_ZLIB=OFF @@ -18,7 +19,6 @@ vcpkg_configure_cmake( # OPTIONS_DEBUG -DDEBUGGABLE=1 ) -vcpkg_build_cmake() vcpkg_install_cmake() file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share) @@ -30,6 +30,6 @@ file(RENAME file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/cmake) -file(COPY ${CURRENT_BUILDTREES_DIR}/src/libwebsockets-2.0.0/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libwebsockets) +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libwebsockets) file(RENAME ${CURRENT_PACKAGES_DIR}/share/libwebsockets/LICENSE ${CURRENT_PACKAGES_DIR}/share/libwebsockets/copyright) vcpkg_copy_pdbs() diff --git a/ports/lua/CMakeLists.txt b/ports/lua/CMakeLists.txt new file mode 100644 index 000000000..76ee6e15c --- /dev/null +++ b/ports/lua/CMakeLists.txt @@ -0,0 +1,54 @@ +PROJECT ( lua ) + +IF( NOT WIN32 ) + message( FATAL_ERROR "Written for window only" ) +ENDIF() + +CMAKE_MINIMUM_REQUIRED(VERSION 2.8) + +SET (HDR_LIBLUA +src/lapi.h src/lauxlib.h src/lcode.h src/lctype.h src/ldebug.h src/ldo.h src/lfunc.h +src/lgc.h src/llex.h src/llimits.h src/lmem.h src/lobject.h src/lopcodes.h src/lparser.h +src/lstate.h src/lstring.h src/ltable.h src/ltm.h src/lua.h src/luaconf.h src/lualib.h +src/lundump.h src/lvm.h src/lzio.h +) + +# Build Libraries +SET (SRC_LIBLUA +src/lapi.c src/lauxlib.c src/lbaselib.c src/lbitlib.c src/lcode.c src/lcorolib.c +src/lctype.c src/ldblib.c src/ldebug.c src/ldo.c src/ldump.c src/lfunc.c src/lgc.c +src/linit.c src/liolib.c src/llex.c src/lmathlib.c src/lmem.c src/loadlib.c src/lobject.c +src/lopcodes.c src/loslib.c src/lparser.c src/lstate.c src/lstring.c src/lstrlib.c +src/ltable.c src/ltablib.c src/ltm.c src/lundump.c src/lutf8lib.c src/lvm.c src/lzio.c +) + +# append headers to sources to make them show up in MSVC GUI +LIST(APPEND SRC_LIBLUA ${HDR_LIBLUA}) + +IF (BUILD_SHARED_LIBS) + ADD_DEFINITIONS ( -DLUA_BUILD_AS_DLL ) +ENDIF () + +# remove warnings +ADD_DEFINITIONS (-D_CRT_SECURE_NO_WARNINGS ) + +#DLL +ADD_LIBRARY ( lua ${SRC_LIBLUA} ) + +INSTALL ( TARGETS lua + RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin + LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib + ARCHIVE DESTINATION ${CMAKE_INSTALL_PREFIX}/lib +) + +IF (NOT DEFINED SKIP_INSTALL_HEADERS) + INSTALL( + FILES + src/lualib.h + src/lua.h + src/luaconf.h + src/lua.hpp + src/lauxlib.h + DESTINATION include + ) +ENDIF ()
\ No newline at end of file diff --git a/ports/lua/CONTROL b/ports/lua/CONTROL new file mode 100644 index 000000000..ae661f3f6 --- /dev/null +++ b/ports/lua/CONTROL @@ -0,0 +1,3 @@ +Source: lua +Version: 5.3.3 +Description: a powerful, fast, lightweight, embeddable scripting language diff --git a/ports/lua/COPYRIGHT b/ports/lua/COPYRIGHT new file mode 100644 index 000000000..729a2ccd5 --- /dev/null +++ b/ports/lua/COPYRIGHT @@ -0,0 +1,6 @@ +Copyright © 1994–2016 Lua.org, PUC-Rio. +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/ports/lua/portfile.cmake b/ports/lua/portfile.cmake new file mode 100644 index 000000000..f8c1071f7 --- /dev/null +++ b/ports/lua/portfile.cmake @@ -0,0 +1,31 @@ +# Common Ambient Variables: +# VCPKG_ROOT_DIR = <C:\path\to\current\vcpkg> +# TARGET_TRIPLET is the current triplet (x86-windows, etc) +# PORT is the current port name (zlib, etc) +# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT} +# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET} +# + +include(${CMAKE_TRIPLET_FILE}) +include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/lua-5.3.3) +vcpkg_download_distfile(ARCHIVE + URLS "http://www.lua.org/ftp/lua-5.3.3.tar.gz" + FILENAME "lua-5.3.3.tar.gz" + SHA512 7b8122ed48ea2a9faa47d1b69b4a5b1523bb7be67e78f252bb4339bf75e957a88c5405156e22b4b63ccf607a5407bf017a4cee1ce12b1aa5262047655960a3cc +) +vcpkg_extract_source_archive(${ARCHIVE}) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + OPTIONS_DEBUG + -DSKIP_INSTALL_HEADERS=ON +) + +vcpkg_install_cmake() + +# Handle copyright +file(COPY ${CMAKE_CURRENT_LIST_DIR}/COPYRIGHT DESTINATION ${CURRENT_PACKAGES_DIR}/share/lua) +vcpkg_copy_pdbs() diff --git a/ports/mpg123/portfile.cmake b/ports/mpg123/portfile.cmake index d7abb9bf8..68d0f7baa 100644 --- a/ports/mpg123/portfile.cmake +++ b/ports/mpg123/portfile.cmake @@ -1,8 +1,9 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/mpg123-1.23.3) vcpkg_download_distfile(ARCHIVE - URL "http://downloads.sourceforge.net/project/mpg123/mpg123/1.23.3/mpg123-1.23.3.tar.bz2" + URLS "http://downloads.sourceforge.net/project/mpg123/mpg123/1.23.3/mpg123-1.23.3.tar.bz2" FILENAME "mpg123-1.23.3.tar.bz2" - MD5 84e838650c4c593f4e66d1256e0468db + SHA512 a5ebfb36223a3966386bc8e5769b8543861872d20f9de037d07857e857000f20e198e0b1db04bdc56b18b19d5b4027d8261a104af0216d6ea45274b21a18dda4 ) vcpkg_extract_source_archive(${ARCHIVE}) @@ -11,44 +12,44 @@ get_filename_component(YASM_EXE_PATH ${YASM} DIRECTORY) set(ENV{PATH} "${YASM_EXE_PATH};$ENV{PATH}") vcpkg_apply_patches( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/mpg123-1.23.3 + SOURCE_PATH ${SOURCE_PATH} PATCHES ${CMAKE_CURRENT_LIST_DIR}/0001-Modify-2010-libmpg123.vcxproj-to-use-VS-2015-along-w.patch ) vcpkg_build_msbuild( - PROJECT_PATH ${CURRENT_BUILDTREES_DIR}/src/mpg123-1.23.3/ports/MSVC++/2010/libmpg123/libmpg123.vcxproj + PROJECT_PATH ${SOURCE_PATH}/ports/MSVC++/2010/libmpg123/libmpg123.vcxproj RELEASE_CONFIGURATION Release_x86_Dll DEBUG_CONFIGURATION Debug_x86_Dll ) message(STATUS "Installing") file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/mpg123-1.23.3/ports/MSVC++/2010/libmpg123/Debug/libmpg123.dll - ${CURRENT_BUILDTREES_DIR}/src/mpg123-1.23.3/ports/MSVC++/2010/libmpg123/Debug/libmpg123.pdb + ${SOURCE_PATH}/ports/MSVC++/2010/libmpg123/Debug/libmpg123.dll + ${SOURCE_PATH}/ports/MSVC++/2010/libmpg123/Debug/libmpg123.pdb DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin ) file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/mpg123-1.23.3/ports/MSVC++/2010/libmpg123/Release/libmpg123.dll - ${CURRENT_BUILDTREES_DIR}/src/mpg123-1.23.3/ports/MSVC++/2010/libmpg123/Release/libmpg123.pdb + ${SOURCE_PATH}/ports/MSVC++/2010/libmpg123/Release/libmpg123.dll + ${SOURCE_PATH}/ports/MSVC++/2010/libmpg123/Release/libmpg123.pdb DESTINATION ${CURRENT_PACKAGES_DIR}/bin ) file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/mpg123-1.23.3/ports/MSVC++/2010/libmpg123/Debug/libmpg123.lib + ${SOURCE_PATH}/ports/MSVC++/2010/libmpg123/Debug/libmpg123.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib ) file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/mpg123-1.23.3/ports/MSVC++/2010/libmpg123/Release/libmpg123.lib + ${SOURCE_PATH}/ports/MSVC++/2010/libmpg123/Release/libmpg123.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib ) file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/mpg123-1.23.3/ports/MSVC++/mpg123.h + ${SOURCE_PATH}/ports/MSVC++/mpg123.h DESTINATION ${CURRENT_PACKAGES_DIR}/include ) file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/mpg123-1.23.3/src/libmpg123/mpg123.h.in + ${SOURCE_PATH}/src/libmpg123/mpg123.h.in DESTINATION ${CURRENT_PACKAGES_DIR}/include ) -file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/mpg123-1.23.3/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/mpg123 RENAME copyright) +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/mpg123 RENAME copyright) vcpkg_copy_pdbs() message(STATUS "Installing done") diff --git a/ports/mpir/portfile.cmake b/ports/mpir/portfile.cmake index 7ccc5ef92..e2f7040d6 100644 --- a/ports/mpir/portfile.cmake +++ b/ports/mpir/portfile.cmake @@ -1,13 +1,14 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/mpir-2.7.2) vcpkg_download_distfile(ARCHIVE_FILE - URL "http://mpir.org/mpir-2.7.2.tar.lz" + URLS "http://mpir.org/mpir-2.7.2.tar.lz" FILENAME "mpir-2.7.2.tar.lz" - MD5 2d47419dac50cc4a89c8c23421e66db1 + SHA512 2635c167ddbba99364ec741373768e0675d34f94fad8912d5433b95e6fbfdb0510f5e94a707acc42048254bc658c52c6671bb0c0dac31267c4b82b00c3e74efa ) vcpkg_extract_source_archive(${ARCHIVE_FILE}) vcpkg_build_msbuild( - PROJECT_PATH ${CURRENT_BUILDTREES_DIR}/src/mpir-2.7.2/build.vc14/dll_mpir_gc/dll_mpir_gc.vcxproj + PROJECT_PATH ${SOURCE_PATH}/build.vc14/dll_mpir_gc/dll_mpir_gc.vcxproj ) IF (TRIPLET_SYSTEM_ARCH MATCHES "x86") @@ -17,32 +18,32 @@ ELSE() ENDIF() file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/mpir-2.7.2/dll/${BUILD_ARCH}/Debug/gmp.h - ${CURRENT_BUILDTREES_DIR}/src/mpir-2.7.2/dll/${BUILD_ARCH}/Debug/gmpxx.h - ${CURRENT_BUILDTREES_DIR}/src/mpir-2.7.2/dll/${BUILD_ARCH}/Debug/mpir.h - ${CURRENT_BUILDTREES_DIR}/src/mpir-2.7.2/dll/${BUILD_ARCH}/Debug/mpirxx.h + ${SOURCE_PATH}/dll/${BUILD_ARCH}/Debug/gmp.h + ${SOURCE_PATH}/dll/${BUILD_ARCH}/Debug/gmpxx.h + ${SOURCE_PATH}/dll/${BUILD_ARCH}/Debug/mpir.h + ${SOURCE_PATH}/dll/${BUILD_ARCH}/Debug/mpirxx.h DESTINATION ${CURRENT_PACKAGES_DIR}/include ) file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/mpir-2.7.2/dll/${BUILD_ARCH}/Debug/mpir.dll - ${CURRENT_BUILDTREES_DIR}/src/mpir-2.7.2/dll/${BUILD_ARCH}/Debug/mpir.pdb + ${SOURCE_PATH}/dll/${BUILD_ARCH}/Debug/mpir.dll + ${SOURCE_PATH}/dll/${BUILD_ARCH}/Debug/mpir.pdb DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin ) file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/mpir-2.7.2/dll/${BUILD_ARCH}/Release/mpir.dll - ${CURRENT_BUILDTREES_DIR}/src/mpir-2.7.2/dll/${BUILD_ARCH}/Release/mpir.pdb + ${SOURCE_PATH}/dll/${BUILD_ARCH}/Release/mpir.dll + ${SOURCE_PATH}/dll/${BUILD_ARCH}/Release/mpir.pdb DESTINATION ${CURRENT_PACKAGES_DIR}/bin ) file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/mpir-2.7.2/dll/${BUILD_ARCH}/Debug/mpir.lib + ${SOURCE_PATH}/dll/${BUILD_ARCH}/Debug/mpir.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib ) file(INSTALL - ${CURRENT_BUILDTREES_DIR}/src/mpir-2.7.2/dll/${BUILD_ARCH}/Release/mpir.lib + ${SOURCE_PATH}/dll/${BUILD_ARCH}/Release/mpir.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib ) -file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/mpir-2.7.2/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/mpir RENAME copyright) +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/mpir RENAME copyright) vcpkg_copy_pdbs() message(STATUS "Installing done") diff --git a/ports/openal-soft/portfile.cmake b/ports/openal-soft/portfile.cmake index 5e24d1630..856ac9367 100644 --- a/ports/openal-soft/portfile.cmake +++ b/ports/openal-soft/portfile.cmake @@ -1,13 +1,15 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/openal-soft-1.17.2) vcpkg_download_distfile(ARCHIVE - URL "http://openal-soft.org/openal-releases/openal-soft-1.17.2.tar.bz2" + URLS "http://openal-soft.org/openal-releases/openal-soft-1.17.2.tar.bz2" FILENAME "openal-soft-1.17.2.tar.bz2" MD5 1764e0d8fec499589b47ebc724e0913d + SHA512 50c20cd3ddada55d91643a79c2894d5a14315d5fc1ed8e870e3d8d3f410e8b7d8da29b838226e7fce37fbeca719ff919b51806f72e4cd529a18fbe8bd68860e3 ) vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_configure_cmake( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/openal-soft-1.17.2 + SOURCE_PATH ${SOURCE_PATH} OPTIONS -DALSOFT_UTILS=OFF -DALSOFT_NO_CONFIG_UTIL=ON @@ -17,11 +19,10 @@ vcpkg_configure_cmake( -DALSOFT_HRTF_DEFS=OFF ) -vcpkg_build_cmake() vcpkg_install_cmake() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(COPY ${CURRENT_BUILDTREES_DIR}/src/openal-soft-1.17.2/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/openal-soft) +file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/openal-soft) file(RENAME ${CURRENT_PACKAGES_DIR}/share/openal-soft/COPYING ${CURRENT_PACKAGES_DIR}/share/openal-soft/copyright) vcpkg_copy_pdbs() diff --git a/ports/opencv/CONTROL b/ports/opencv/CONTROL index a22785929..74cf1d3bc 100644 --- a/ports/opencv/CONTROL +++ b/ports/opencv/CONTROL @@ -1,4 +1,4 @@ Source: opencv -Version: 3.1.0 -Build-Depends: zlib, libpng, libjpeg-turbo +Version: 3.1.0-1 +Build-Depends: zlib, libpng, libjpeg-turbo, tiff Description: computer vision library diff --git a/ports/opencv/0001-OpenCV-should-follow-FHS-like-conventions.patch b/ports/opencv/opencv-installation-options.patch index 1824aa339..580334634 100644 --- a/ports/opencv/0001-OpenCV-should-follow-FHS-like-conventions.patch +++ b/ports/opencv/opencv-installation-options.patch @@ -1,31 +1,19 @@ -From e396a74da8e7c9c06f3145de65647d7d48524a07 Mon Sep 17 00:00:00 2001 -From: Robert Schumacher <roschuma@microsoft.com> -Date: Thu, 5 May 2016 04:16:18 -0700 -Subject: [PATCH] OpenCV should follow FHS-like conventions - ---- - CMakeLists.txt | 11 +++++++---- - cmake/OpenCVGenConfig.cmake | 11 +++++------ - cmake/OpenCVGenHeaders.cmake | 8 ++++++-- - cmake/OpenCVModule.cmake | 4 +++- - data/CMakeLists.txt | 6 ++++-- - include/CMakeLists.txt | 6 ++++-- - 6 files changed, 29 insertions(+), 17 deletions(-) - diff --git a/CMakeLists.txt b/CMakeLists.txt -index 3ee50ff..8e3f57d 100644 +index 3ee50ff..64b0405 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -250,6 +250,8 @@ OCV_OPTION(INSTALL_PYTHON_EXAMPLES "Install Python examples" OFF ) +@@ -250,6 +250,10 @@ OCV_OPTION(INSTALL_PYTHON_EXAMPLES "Install Python examples" OFF ) OCV_OPTION(INSTALL_ANDROID_EXAMPLES "Install Android examples" OFF IF ANDROID ) OCV_OPTION(INSTALL_TO_MANGLED_PATHS "Enables mangled install paths, that help with side by side installs." OFF IF (UNIX AND NOT ANDROID AND NOT APPLE_FRAMEWORK AND BUILD_SHARED_LIBS) ) OCV_OPTION(INSTALL_TESTS "Install accuracy and performance test binaries and test data" OFF) +OCV_OPTION(INSTALL_HEADERS "Install header files" ON) ++OCV_OPTION(INSTALL_LICENSE "Install license file" ON) +OCV_OPTION(INSTALL_OTHER "Install other files" ON) ++OCV_OPTION(INSTALL_FORCE_UNIX_PATHS "Force unix-style installation" OFF) # OpenCV build options # =================================================== -@@ -315,7 +317,9 @@ else() +@@ -315,7 +319,9 @@ else() endif() if(WIN32 AND CMAKE_HOST_SYSTEM_NAME MATCHES Windows) @@ -36,49 +24,55 @@ index 3ee50ff..8e3f57d 100644 set(OpenCV_INSTALL_BINARIES_PREFIX "${OpenCV_ARCH}/${OpenCV_RUNTIME}/") else() message(STATUS "Can't detect runtime and/or arch") -@@ -379,7 +383,7 @@ else() +@@ -379,7 +385,7 @@ else() set(OPENCV_3P_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX}staticlib${LIB_SUFFIX}") set(OPENCV_SAMPLES_SRC_INSTALL_PATH samples/native) set(OPENCV_JAR_INSTALL_PATH java) - set(OPENCV_OTHER_INSTALL_PATH etc) -+ set(OPENCV_OTHER_INSTALL_PATH share/opencv) ++ set(OPENCV_OTHER_INSTALL_PATH etc CACHE STRING "") else() set(OPENCV_LIB_INSTALL_PATH lib${LIB_SUFFIX}) set(OPENCV_3P_LIB_INSTALL_PATH share/OpenCV/3rdparty/${OPENCV_LIB_INSTALL_PATH}) -@@ -736,8 +740,7 @@ endif() +@@ -393,7 +399,7 @@ else() + if(LIB_SUFFIX AND NOT SIZEOF_VOID_P_BITS EQUAL LIB_SUFFIX) + set(OPENCV_CONFIG_INSTALL_PATH lib${LIB_SUFFIX}/cmake/opencv) + else() +- set(OPENCV_CONFIG_INSTALL_PATH share/OpenCV) ++ set(OPENCV_CONFIG_INSTALL_PATH share/OpenCV CACHE STRING "") + endif() + endif() + +@@ -734,7 +740,7 @@ if(NOT OPENCV_LICENSE_FILE) + endif() + # for UNIX it does not make sense as LICENSE and readme will be part of the package automatically - if(ANDROID OR NOT UNIX) +-if(ANDROID OR NOT UNIX) ++if(ANDROID OR NOT UNIX AND INSTALL_LICENSE) install(FILES ${OPENCV_LICENSE_FILE} -- PERMISSIONS OWNER_READ GROUP_READ WORLD_READ -- DESTINATION ${CMAKE_INSTALL_PREFIX} COMPONENT libs) -+ DESTINATION ${CMAKE_INSTALL_PREFIX}/share/opencv RENAME copyright CONFIGURATIONS Release COMPONENT libs) - if(OPENCV_README_FILE) - install(FILES ${OPENCV_README_FILE} - PERMISSIONS OWNER_READ GROUP_READ WORLD_READ + PERMISSIONS OWNER_READ GROUP_READ WORLD_READ + DESTINATION ${CMAKE_INSTALL_PREFIX} COMPONENT libs) diff --git a/cmake/OpenCVGenConfig.cmake b/cmake/OpenCVGenConfig.cmake -index dbfd7ca..94fc4a9 100644 +index dbfd7ca..8bfa448 100644 --- a/cmake/OpenCVGenConfig.cmake +++ b/cmake/OpenCVGenConfig.cmake -@@ -139,14 +139,13 @@ if(WIN32) - configure_file("${OpenCV_SOURCE_DIR}/cmake/templates/OpenCVConfig-version.cmake.in" "${CMAKE_BINARY_DIR}/win-install/OpenCVConfig-version.cmake" @ONLY) - if (CMAKE_HOST_SYSTEM_NAME MATCHES Windows) - if(BUILD_SHARED_LIBS) -- install(FILES "${CMAKE_BINARY_DIR}/win-install/OpenCVConfig.cmake" DESTINATION "${OpenCV_INSTALL_BINARIES_PREFIX}lib" COMPONENT dev) -- install(EXPORT OpenCVModules DESTINATION "${OpenCV_INSTALL_BINARIES_PREFIX}lib" FILE OpenCVModules${modules_file_suffix}.cmake COMPONENT dev) -+ install(FILES "${CMAKE_BINARY_DIR}/win-install/OpenCVConfig.cmake" DESTINATION "cmake" COMPONENT dev) -+ install(EXPORT OpenCVModules DESTINATION "cmake" FILE OpenCVModules${modules_file_suffix}.cmake COMPONENT dev) - else() -- install(FILES "${CMAKE_BINARY_DIR}/win-install/OpenCVConfig.cmake" DESTINATION "${OpenCV_INSTALL_BINARIES_PREFIX}staticlib" COMPONENT dev) -- install(EXPORT OpenCVModules DESTINATION "${OpenCV_INSTALL_BINARIES_PREFIX}staticlib" FILE OpenCVModules${modules_file_suffix}.cmake COMPONENT dev) -+ install(FILES "${CMAKE_BINARY_DIR}/win-install/OpenCVConfig.cmake" DESTINATION "cmake" COMPONENT dev) -+ install(EXPORT OpenCVModules DESTINATION "cmake" FILE OpenCVModules${modules_file_suffix}.cmake COMPONENT dev) - endif() -- install(FILES "${CMAKE_BINARY_DIR}/win-install/OpenCVConfig-version.cmake" DESTINATION "${CMAKE_INSTALL_PREFIX}" COMPONENT dev) -- install(FILES "${OpenCV_SOURCE_DIR}/cmake/OpenCVConfig.cmake" DESTINATION "${CMAKE_INSTALL_PREFIX}/" COMPONENT dev) -+ install(FILES "${CMAKE_BINARY_DIR}/win-install/OpenCVConfig-version.cmake" DESTINATION "cmake" COMPONENT dev) - else () - install(FILES "${CMAKE_BINARY_DIR}/win-install/OpenCVConfig.cmake" DESTINATION "${OpenCV_INSTALL_BINARIES_PREFIX}lib/cmake/opencv-${OPENCV_VERSION}" COMPONENT dev) - install(EXPORT OpenCVModules DESTINATION "${OpenCV_INSTALL_BINARIES_PREFIX}lib/cmake/opencv-${OPENCV_VERSION}" FILE OpenCVModules${modules_file_suffix}.cmake COMPONENT dev) +@@ -103,7 +103,7 @@ set(OpenCV_INCLUDE_DIRS_CONFIGCMAKE "\"\${OpenCV_INSTALL_PATH}/${OPENCV_INCLUDE_ + set(OpenCV2_INCLUDE_DIRS_CONFIGCMAKE "\"\"") + set(OpenCV_3RDPARTY_LIB_DIRS_CONFIGCMAKE "\"\${OpenCV_INSTALL_PATH}/${OPENCV_3P_LIB_INSTALL_PATH}\"") + +-if(UNIX) # ANDROID configuration is created here also ++if(UNIX OR INSTALL_FORCE_UNIX_PATHS) # ANDROID configuration is created here also + #http://www.vtk.org/Wiki/CMake/Tutorials/Packaging reference + # For a command "find_package(<name> [major[.minor]] [EXACT] [REQUIRED|QUIET])" + # cmake will look in the following dir on unix: +@@ -127,7 +127,7 @@ endif() + # -------------------------------------------------------------------------------------------- + # Part 3/3: ${BIN_DIR}/win-install/OpenCVConfig.cmake -> For use within binary installers/packages + # -------------------------------------------------------------------------------------------- +-if(WIN32) ++if(WIN32 AND NOT INSTALL_FORCE_UNIX_PATHS) + set(OpenCV_INCLUDE_DIRS_CONFIGCMAKE "\"\${OpenCV_CONFIG_PATH}/include\" \"\${OpenCV_CONFIG_PATH}/include/opencv\"") + set(OpenCV2_INCLUDE_DIRS_CONFIGCMAKE "\"\"") + diff --git a/cmake/OpenCVGenHeaders.cmake b/cmake/OpenCVGenHeaders.cmake index 2988979..810871b 100644 --- a/cmake/OpenCVGenHeaders.cmake @@ -117,6 +111,19 @@ index 3385385..530e53f 100644 endif() endforeach() endif() +diff --git a/cmake/templates/OpenCVConfig.cmake.in b/cmake/templates/OpenCVConfig.cmake.in +index 80ffbaf..0585c9f 100644 +--- a/cmake/templates/OpenCVConfig.cmake.in ++++ b/cmake/templates/OpenCVConfig.cmake.in +@@ -112,7 +112,7 @@ set(OpenCV_USE_MANGLED_PATHS @OpenCV_USE_MANGLED_PATHS_CONFIGCMAKE@) + # Extract the directory where *this* file has been installed (determined at cmake run-time) + get_filename_component(OpenCV_CONFIG_PATH "${CMAKE_CURRENT_LIST_FILE}" PATH CACHE) + +-if(NOT WIN32 OR ANDROID) ++if(NOT WIN32 OR ANDROID OR "@INSTALL_FORCE_UNIX_PATHS@") + if(ANDROID) + set(OpenCV_INSTALL_PATH "${OpenCV_CONFIG_PATH}/../../..") + else() diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt index 1f0d720..86b9d89 100644 --- a/data/CMakeLists.txt @@ -135,13 +142,14 @@ index 1f0d720..86b9d89 100644 if(INSTALL_TESTS AND OPENCV_TEST_DATA_PATH) install(DIRECTORY "${OPENCV_TEST_DATA_PATH}/" DESTINATION "${OPENCV_TEST_DATA_INSTALL_PATH}" COMPONENT "tests") diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt -index b4e48e6..58dccc7 100644 +index b4e48e6..6ea20d6 100644 --- a/include/CMakeLists.txt +++ b/include/CMakeLists.txt @@ -1,7 +1,9 @@ - file(GLOB old_hdrs "opencv/*.h*") +-file(GLOB old_hdrs "opencv/*.h*") -install(FILES ${old_hdrs} +if(INSTALL_HEADERS) ++ file(GLOB old_hdrs "opencv/*.h*") + install(FILES ${old_hdrs} DESTINATION ${OPENCV_INCLUDE_INSTALL_PATH}/opencv COMPONENT dev) @@ -150,7 +158,3 @@ index b4e48e6..58dccc7 100644 DESTINATION ${OPENCV_INCLUDE_INSTALL_PATH}/opencv2 COMPONENT dev) +endif() -\ No newline at end of file --- -2.8.1.windows.1 - diff --git a/ports/opencv/portfile.cmake b/ports/opencv/portfile.cmake index 9dcf0fdf7..49fa463a2 100644 --- a/ports/opencv/portfile.cmake +++ b/ports/opencv/portfile.cmake @@ -1,62 +1,55 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/opencv-92387b1ef8fad15196dd5f7fb4931444a68bc93a) +vcpkg_download_distfile(ARCHIVE + URLS "https://github.com/opencv/opencv/archive/92387b1ef8fad15196dd5f7fb4931444a68bc93a.zip" + FILENAME "opencv-92387b1ef8fad15196dd5f7fb4931444a68bc93a.zip" + SHA512 b95fa1a5bce0ea9e9bd43173b904e5d779a2f640f4f8dbb36a12df462e8e4cdce3ff94b2fbd85cb96ddf338019f9888e9e7410c468c81b1de98d9c1da945a7eb +) +vcpkg_extract_source_archive(${ARCHIVE}) -find_program(GIT git) - -set(GIT_URL "https://github.com/Itseez/opencv") -set(GIT_REF "92387b1ef8fad15196dd5f7fb4931444a68bc93a") - -if(NOT EXISTS "${DOWNLOADS}/opencv.git") - message(STATUS "Cloning") - vcpkg_execute_required_process( - COMMAND ${GIT} clone --bare ${GIT_URL} ${DOWNLOADS}/opencv.git - WORKING_DIRECTORY ${DOWNLOADS} - LOGNAME clone - ) -endif() -message(STATUS "Cloning done") - -if(NOT EXISTS "${CURRENT_BUILDTREES_DIR}/src/.git") - message(STATUS "Adding worktree and patching") - vcpkg_execute_required_process( - COMMAND ${GIT} worktree add -f --detach ${CURRENT_BUILDTREES_DIR}/src ${GIT_REF} - WORKING_DIRECTORY ${DOWNLOADS}/opencv.git - LOGNAME worktree - ) - message(STATUS "Patching") - vcpkg_execute_required_process( - COMMAND ${GIT} am ${CMAKE_CURRENT_LIST_DIR}/0001-OpenCV-should-follow-FHS-like-conventions.patch --ignore-whitespace --whitespace=fix - WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/src - LOGNAME patch - ) -endif() -message(STATUS "Adding worktree and patching done") +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES "${CMAKE_CURRENT_LIST_DIR}/opencv-installation-options.patch" +) +file(REMOVE_RECURSE ${SOURCE_PATH}/3rdparty/libjpeg ${SOURCE_PATH}/3rdparty/libpng ${SOURCE_PATH}/3rdparty/zlib ${SOURCE_PATH}/3rdparty/libtiff) vcpkg_configure_cmake( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src + SOURCE_PATH ${SOURCE_PATH} OPTIONS -DBUILD_ZLIB=OFF + -DBUILD_TIFF=OFF + -DBUILD_JPEG=OFF + -DBUILD_PNG=OFF -DINSTALL_CREATE_DISTRIB=ON -DBUILD_opencv_python2=OFF -DBUILD_opencv_python3=OFF -DBUILD_opencv_apps=OFF -DBUILD_DOCS=OFF - -DBUILD_TESTS=OFF + -DBUILD_EXAMPLES=OFF + -DBUILD_PACKAGE=OFF -DBUILD_PERF_TESTS=OFF + -DBUILD_TESTS=OFF + -DBUILD_WITH_DEBUG_INFO=ON -DOpenCV_DISABLE_ARCH_PATH=ON -DWITH_FFMPEG=OFF + -DINSTALL_FORCE_UNIX_PATHS=ON + -DOPENCV_CONFIG_INSTALL_PATH=share/opencv + -DOPENCV_OTHER_INSTALL_PATH=share/opencv + -DINSTALL_LICENSE=OFF + -DWITH_CUDA=OFF OPTIONS_DEBUG -DINSTALL_HEADERS=OFF -DINSTALL_OTHER=OFF ) -vcpkg_build_cmake() vcpkg_install_cmake() -file(RENAME ${CURRENT_PACKAGES_DIR}/cmake/OpenCVConfig-version.cmake ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVConfig-version.cmake) -file(RENAME ${CURRENT_PACKAGES_DIR}/cmake/OpenCVConfig.cmake ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVConfig.cmake) -file(RENAME ${CURRENT_PACKAGES_DIR}/cmake/OpenCVModules.cmake ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake) -file(RENAME ${CURRENT_PACKAGES_DIR}/cmake/OpenCVModules-release.cmake ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules-release.cmake) -file(RENAME ${CURRENT_PACKAGES_DIR}/debug/cmake/OpenCVModules-debug.cmake ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules-debug.cmake) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/cmake) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/cmake) +file(READ ${CURRENT_PACKAGES_DIR}/debug/share/opencv/OpenCVModules-debug.cmake OPENCV_DEBUG_MODULE) +string(REPLACE "\${_IMPORT_PREFIX}" "\${_IMPORT_PREFIX}/debug" OPENCV_DEBUG_MODULE "${OPENCV_DEBUG_MODULE}") +file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules-debug.cmake "${OPENCV_DEBUG_MODULE}") + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/opencv) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/opencv/LICENSE ${CURRENT_PACKAGES_DIR}/share/opencv/copyright) vcpkg_copy_pdbs() diff --git a/ports/openssl/portfile.cmake b/ports/openssl/portfile.cmake index 3737b0e86..9f45f0ce4 100644 --- a/ports/openssl/portfile.cmake +++ b/ports/openssl/portfile.cmake @@ -1,4 +1,5 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/openssl-1.0.2h) vcpkg_find_acquire_program(PERL) find_program(NMAKE nmake) @@ -6,15 +7,15 @@ get_filename_component(PERL_EXE_PATH ${PERL} DIRECTORY) set(ENV{PATH} "${PERL_EXE_PATH};$ENV{PATH}") vcpkg_download_distfile(OPENSSL_SOURCE_ARCHIVE - URL "https://www.openssl.org/source/openssl-1.0.2h.tar.gz" + URLS "https://www.openssl.org/source/openssl-1.0.2h.tar.gz" FILENAME "openssl-1.0.2h.tar.gz" - MD5 9392e65072ce4b614c1392eefc1f23d0 + SHA512 780601f6f3f32f42b6d7bbc4c593db39a3575f9db80294a10a68b2b0bb79448d9bd529ca700b9977354cbdfc65887c76af0aa7b90d3ee421f74ab53e6f15c303 ) -file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${CURRENT_BUILDTREES_DIR}/src/openssl-1.0.2h) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) vcpkg_configure_cmake( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/openssl-1.0.2h + SOURCE_PATH ${SOURCE_PATH} GENERATOR "NMake Makefiles" OPTIONS -DCURRENT_INSTALLED_DIR=${CURRENT_INSTALLED_DIR} diff --git a/ports/protobuf/CONTROL b/ports/protobuf/CONTROL new file mode 100644 index 000000000..795213a33 --- /dev/null +++ b/ports/protobuf/CONTROL @@ -0,0 +1,4 @@ +Source: protobuf +Version: 3.0.2 +Build-Depends: zlib +Description: Protocol Buffers - Google's data interchange format
\ No newline at end of file diff --git a/ports/protobuf/portfile.cmake b/ports/protobuf/portfile.cmake new file mode 100644 index 000000000..522a68634 --- /dev/null +++ b/ports/protobuf/portfile.cmake @@ -0,0 +1,45 @@ +include(vcpkg_common_functions) +vcpkg_download_distfile(ARCHIVE_FILE + URLS "https://github.com/google/protobuf/releases/download/v3.0.2/protobuf-cpp-3.0.2.tar.gz" + FILENAME "protobuf-cpp-3.0.2.tar.gz" + SHA512 5c99fa5d20815f9333a1e30d4da7621375e179abab6e4369ef0827b6ea6a679afbfec445dda21a72b4ab11e1bdd72c0f17a4e86b153ea8e2d3298dc3bcfcd643 +) +vcpkg_download_distfile(TOOL_ARCHIVE_FILE + URLS "https://github.com/google/protobuf/releases/download/v3.0.2/protoc-3.0.2-win32.zip" + FILENAME "protoc-3.0.2-win32.zip" + SHA512 51c67bd8bdc35810da70786d873935814679c58b74e653923671bdf06b8b69a1c9a0793d090b17d25e91ddafff1726bcfcdd243373dd47c4aeb9ea83fbabaeb0 +) +vcpkg_extract_source_archive(${ARCHIVE_FILE}) +vcpkg_extract_source_archive(${TOOL_ARCHIVE_FILE} ${CURRENT_BUILDTREES_DIR}/src/protobuf-3.0.2-win32) + +vcpkg_configure_cmake( + SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/protobuf-3.0.2/cmake + OPTIONS + -Dprotobuf_BUILD_SHARED_LIBS=OFF + -Dprotobuf_MSVC_STATIC_RUNTIME=OFF + -Dprotobuf_WITH_ZLIB=ON + -Dprotobuf_BUILD_TESTS=OFF + -DCMAKE_INSTALL_CMAKEDIR=share/protobuf +) + +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +file(READ ${CURRENT_PACKAGES_DIR}/share/protobuf/protobuf-targets-release.cmake RELEASE_MODULE) +string(REPLACE "\${_IMPORT_PREFIX}/bin/protoc.exe" "\${_IMPORT_PREFIX}/tools/protoc.exe" RELEASE_MODULE "${RELEASE_MODULE}") +file(WRITE ${CURRENT_PACKAGES_DIR}/share/protobuf/protobuf-targets-release.cmake "${RELEASE_MODULE}") + +file(READ ${CURRENT_PACKAGES_DIR}/debug/share/protobuf/protobuf-targets-debug.cmake DEBUG_MODULE) +string(REPLACE "\${_IMPORT_PREFIX}" "\${_IMPORT_PREFIX}/debug" DEBUG_MODULE "${DEBUG_MODULE}") +string(REPLACE "\${_IMPORT_PREFIX}/debug/bin/protoc.exe" "\${_IMPORT_PREFIX}/tools/protoc.exe" DEBUG_MODULE "${DEBUG_MODULE}") +file(WRITE ${CURRENT_PACKAGES_DIR}/share/protobuf/protobuf-targets-debug.cmake "${DEBUG_MODULE}") + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + +file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/protoc.exe) +file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/protoc.exe) + +file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/protobuf-3.0.2/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/protobuf RENAME copyright) +file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/protobuf-3.0.2-win32/bin/protoc.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools) +vcpkg_copy_pdbs() diff --git a/ports/ragel/0001-Remove-unistd.h-include-1.patch b/ports/ragel/0001-Remove-unistd.h-include-1.patch new file mode 100644 index 000000000..d024401fc --- /dev/null +++ b/ports/ragel/0001-Remove-unistd.h-include-1.patch @@ -0,0 +1,24 @@ +From 4a337ce9475c75497f4221cadd9d2dd8126835c7 Mon Sep 17 00:00:00 2001 +From: vlj <vljn.ovi@gmail.com> +Date: Tue, 4 Oct 2016 17:54:22 +0200 +Subject: [PATCH 1/2] Remove unistd.h include 1 + +--- + ragel-6.9/ragel/main.cpp | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/ragel-6.9/ragel/main.cpp b/ragel-6.9/ragel/main.cpp +index f5fbd7b..e3bcc18 100644 +--- a/ragel-6.9/ragel/main.cpp ++++ b/ragel-6.9/ragel/main.cpp +@@ -24,7 +24,6 @@ + #include <stdio.h> + #include <iostream> + #include <fstream> +-#include <unistd.h> + #include <sstream> + #include <unistd.h> + #include <sys/types.h> +-- +2.10.0.windows.1 + diff --git a/ports/ragel/0002-Remove-unistd.h-include-2.patch b/ports/ragel/0002-Remove-unistd.h-include-2.patch new file mode 100644 index 000000000..bade77889 --- /dev/null +++ b/ports/ragel/0002-Remove-unistd.h-include-2.patch @@ -0,0 +1,24 @@ +From 259bb8be3f66e32063652cb4f1a456b7327ca513 Mon Sep 17 00:00:00 2001 +From: vlj <vljn.ovi@gmail.com> +Date: Tue, 4 Oct 2016 17:54:38 +0200 +Subject: [PATCH 2/2] Remove unistd.h include 2 + +--- + ragel-6.9/ragel/main.cpp | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/ragel-6.9/ragel/main.cpp b/ragel-6.9/ragel/main.cpp +index e3bcc18..947b1c8 100644 +--- a/ragel-6.9/ragel/main.cpp ++++ b/ragel-6.9/ragel/main.cpp +@@ -25,7 +25,6 @@ + #include <iostream> + #include <fstream> + #include <sstream> +-#include <unistd.h> + #include <sys/types.h> + #include <sys/stat.h> + #include <fcntl.h> +-- +2.10.0.windows.1 + diff --git a/ports/ragel/0003-Fix-rsxgoto.cpp-build.patch b/ports/ragel/0003-Fix-rsxgoto.cpp-build.patch new file mode 100644 index 000000000..3ab8857e1 --- /dev/null +++ b/ports/ragel/0003-Fix-rsxgoto.cpp-build.patch @@ -0,0 +1,25 @@ +From 852aebf39d85964141cf9243d89abc2d5ee761ce Mon Sep 17 00:00:00 2001 +From: vlj <vljn.ovi@gmail.com> +Date: Tue, 4 Oct 2016 18:22:41 +0200 +Subject: [PATCH 3/3] Fix rsxgoto.cpp build. + +--- + ragel-6.9/ragel/rbxgoto.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/ragel-6.9/ragel/rbxgoto.cpp b/ragel-6.9/ragel/rbxgoto.cpp +index c54cb00..9e33425 100644 +--- a/ragel-6.9/ragel/rbxgoto.cpp ++++ b/ragel-6.9/ragel/rbxgoto.cpp +@@ -658,7 +658,7 @@ void RbxGotoCodeGen::BREAK( ostream &ret, int targState ) + out << + " begin\n" + " " << P() << " += 1\n" +- " " << rbxGoto(ret, "_out") << "\n" ++ " "; rbxGoto(ret, "_out") << "\n" + " end\n"; + } + +-- +2.8.3.windows.1 + diff --git a/ports/ragel/CMakeLists.txt b/ports/ragel/CMakeLists.txt new file mode 100644 index 000000000..5c161194c --- /dev/null +++ b/ports/ragel/CMakeLists.txt @@ -0,0 +1,128 @@ +cmake_minimum_required(VERSION 3.0) +project(ragel CXX) + +file(GLOB HEADERS + ragel/buffer.h + ragel/cdgoto.h + ragel/cscodegen.h + ragel/csipgoto.h + ragel/inputdata.h + ragel/rbxgoto.h + ragel/rubyflat.h + ragel/cdcodegen.h + ragel/cdipgoto.h + ragel/csfflat.h + ragel/cssplit.h + ragel/javacodegen.h + ragel/redfsm.h + ragel/rubyftable.h + ragel/cdfflat.h + ragel/cdsplit.h + ragel/csfgoto.h + ragel/cstable.h + ragel/parsedata.h + ragel/rlparse.h + ragel/rubytable.h + ragel/cdfgoto.h + ragel/cdtable.h + ragel/csflat.h + ragel/dotcodegen.h + ragel/parsetree.h + ragel/rlscan.h + ragel/version.h + ragel/cdflat.h + ragel/common.h + ragel/csftable.h + ragel/fsmgraph.h + ragel/pcheck.h + ragel/rubycodegen.h + ragel/xmlcodegen.h + ragel/cdftable.h + ragel/csgoto.h + ragel/gendata.h + ragel/ragel.h + ragel/rubyfflat.h + ragel/gocodegen.h + ragel/gotable.h + ragel/goftable.h + ragel/goflat.h + ragel/gofflat.h + ragel/gogoto.h + ragel/gofgoto.h + ragel/goipgoto.h + ragel/gotablish.h + ragel/mlcodegen.h + ragel/mltable.h + ragel/mlftable.h + ragel/mlflat.h + ragel/mlfflat.h + ragel/mlgoto.h + ragel/mlfgoto.h +) + +file(GLOB SRC + ragel/main.cpp + ragel/parsetree.cpp + ragel/parsedata.cpp + ragel/fsmstate.cpp + ragel/fsmbase.cpp + ragel/fsmattach.cpp + ragel/fsmmin.cpp + ragel/fsmgraph.cpp + ragel/fsmap.cpp + ragel/rlscan.cpp + ragel/rlparse.cpp + ragel/inputdata.cpp + ragel/common.cpp + ragel/redfsm.cpp + ragel/gendata.cpp + ragel/cdcodegen.cpp + ragel/cdtable.cpp + ragel/cdftable.cpp + ragel/cdflat.cpp + ragel/cdfflat.cpp + ragel/cdgoto.cpp + ragel/cdfgoto.cpp + ragel/cdipgoto.cpp + ragel/cdsplit.cpp + ragel/javacodegen.cpp + ragel/rubycodegen.cpp + ragel/rubytable.cpp + ragel/rubyftable.cpp + ragel/rubyflat.cpp + ragel/rubyfflat.cpp + ragel/rbxgoto.cpp + ragel/cscodegen.cpp + ragel/cstable.cpp + ragel/csftable.cpp + ragel/csflat.cpp + ragel/csfflat.cpp + ragel/csgoto.cpp + ragel/csfgoto.cpp + ragel/csipgoto.cpp + ragel/cssplit.cpp + ragel/dotcodegen.cpp + ragel/xmlcodegen.cpp + ragel/gocodegen.cpp + ragel/gotable.cpp + ragel/goftable.cpp + ragel/goflat.cpp + ragel/gofflat.cpp + ragel/gogoto.cpp + ragel/gofgoto.cpp + ragel/goipgoto.cpp + ragel/gotablish.cpp + ragel/mlcodegen.cpp + ragel/mltable.cpp + ragel/mlftable.cpp + ragel/mlflat.cpp + ragel/mlfflat.cpp + ragel/mlgoto.cpp + ragel/mlfgoto.cpp +) + +include_directories(aapl) + +add_executable(ragel ${SRC}) + +install(TARGETS ragel DESTINATION tools CONFIGURATIONS Release) diff --git a/ports/ragel/CONTROL b/ports/ragel/CONTROL new file mode 100644 index 000000000..086159ab3 --- /dev/null +++ b/ports/ragel/CONTROL @@ -0,0 +1,3 @@ +Source: ragel +Version: 6.9 +Description: diff --git a/ports/ragel/config.h b/ports/ragel/config.h new file mode 100644 index 000000000..dbcd06dd9 --- /dev/null +++ b/ports/ragel/config.h @@ -0,0 +1,26 @@ +/* ragel/config.h. Generated from config.h.in by configure. */ +/* ragel/config.h.in. Generated from configure.in by autoheader. */ + +/* Name of package */ +#define PACKAGE "ragel" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "ragel" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "ragel 6.9" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "ragel" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "6.9" + +/* Version number of package */ +#define VERSION "6.9" diff --git a/ports/ragel/portfile.cmake b/ports/ragel/portfile.cmake new file mode 100644 index 000000000..2c1f09de9 --- /dev/null +++ b/ports/ragel/portfile.cmake @@ -0,0 +1,41 @@ +# Common Ambient Variables: +# VCPKG_ROOT_DIR = <C:\path\to\current\vcpkg> +# TARGET_TRIPLET is the current triplet (x86-windows, etc) +# PORT is the current port name (zlib, etc) +# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT} +# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET} +# + +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/ragel-6.9) +include(${CMAKE_TRIPLET_FILE}) +include(vcpkg_common_functions) +vcpkg_download_distfile(ARCHIVE + URLS "http://www.colm.net/files/ragel/ragel-6.9.tar.gz" + FILENAME "ragel-6.9.tar.gz" + SHA512 46886a37fa0b785574c03ba6581d99bbeaa11ca65cf4fdc37ceef42f4869bd695694cd69b4b974a25cf539f004cb106e3debda17fc26e1a9a6a4295992733dbd +) +vcpkg_extract_source_archive(${ARCHIVE}) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/config.h DESTINATION ${SOURCE_PATH}/ragel) + +vcpkg_apply_patches( + SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src + PATCHES + "${CMAKE_CURRENT_LIST_DIR}/0001-Remove-unistd.h-include-1.patch" + "${CMAKE_CURRENT_LIST_DIR}/0002-Remove-unistd.h-include-2.patch" + "${CMAKE_CURRENT_LIST_DIR}/0003-Fix-rsxgoto.cpp-build.patch" +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + GENERATOR "Visual Studio 14 2015" +) + +vcpkg_install_cmake() + +file(WRITE ${CURRENT_PACKAGES_DIR}/include/ragel.txt) + +# Handle copyright +file(COPY ${CURRENT_BUILDTREES_DIR}/src/ragel-6.9/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/ragel) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/ragel/COPYING ${CURRENT_PACKAGES_DIR}/share/ragel/copyright) diff --git a/ports/range-v3/portfile.cmake b/ports/range-v3/portfile.cmake index e71229d0f..692adf347 100644 --- a/ports/range-v3/portfile.cmake +++ b/ports/range-v3/portfile.cmake @@ -1,12 +1,13 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/Range-V3-VS2015-ede9ad367fd5ec764fecb039c874614bd908e6b6) vcpkg_download_distfile(ARCHIVE - URL "https://github.com/Microsoft/Range-V3-VS2015/archive/ede9ad367fd5ec764fecb039c874614bd908e6b6.zip" + URLS "https://github.com/Microsoft/Range-V3-VS2015/archive/ede9ad367fd5ec764fecb039c874614bd908e6b6.zip" FILENAME "range-v3-ede9ad367fd5ec764fecb039c874614bd908e6b6.zip" - MD5 a33fcf63489d5c6d8fa92ef8746648ab + SHA512 e978c7694471d8616c248647b77689f377b3e2517347abde8629b140e5994de8bf686565a24cdd7dd222f325d43b775f5e478c91220dce75313985499b134637 ) vcpkg_extract_source_archive(${ARCHIVE}) -file(COPY ${CURRENT_BUILDTREES_DIR}/src/Range-V3-VS2015-ede9ad367fd5ec764fecb039c874614bd908e6b6/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/range-v3) +file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/range-v3) file(RENAME ${CURRENT_PACKAGES_DIR}/share/range-v3/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/range-v3/copyright) -file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/Range-V3-VS2015-ede9ad367fd5ec764fecb039c874614bd908e6b6/include DESTINATION ${CURRENT_PACKAGES_DIR} FILES_MATCHING PATTERN "*.hpp") +file(INSTALL ${SOURCE_PATH}/include DESTINATION ${CURRENT_PACKAGES_DIR} FILES_MATCHING PATTERN "*.hpp") vcpkg_copy_pdbs() diff --git a/ports/rapidjson/portfile.cmake b/ports/rapidjson/portfile.cmake index fdc3aaaf4..d907210d0 100644 --- a/ports/rapidjson/portfile.cmake +++ b/ports/rapidjson/portfile.cmake @@ -1,15 +1,16 @@ include(vcpkg_common_functions) +SET(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/rapidjson-879def80f2e466cdf4c86dc7e53ea2dd4cafaea0) vcpkg_download_distfile(ARCHIVE - URL "https://github.com/miloyip/rapidjson/archive/879def80f2e466cdf4c86dc7e53ea2dd4cafaea0.zip" + URLS "https://github.com/miloyip/rapidjson/archive/879def80f2e466cdf4c86dc7e53ea2dd4cafaea0.zip" FILENAME "rapidjson-879def80f2e466cdf4c86dc7e53ea2dd4cafaea0.zip" - MD5 5394c3bc23177b000e1992fb989edc53 + SHA512 4d9ef7cce7d179344c33245c081a142ca5fcb2a0cc170ed39e3d0add008efab8e7389feec03e1ea83b30c5778cd0600865b08bc1c23592e5154dbe1f21f9547d ) vcpkg_extract_source_archive(${ARCHIVE}) # Put the licence file where vcpkg expects it -file(COPY ${CURRENT_BUILDTREES_DIR}/src/rapidjson-879def80f2e466cdf4c86dc7e53ea2dd4cafaea0/license.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/rapidjson) +file(COPY ${SOURCE_PATH}/license.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/rapidjson) file(RENAME ${CURRENT_PACKAGES_DIR}/share/rapidjson/license.txt ${CURRENT_PACKAGES_DIR}/share/rapidjson/copyright) # Copy the rapidjson header files -file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/rapidjson-879def80f2e466cdf4c86dc7e53ea2dd4cafaea0/include DESTINATION ${CURRENT_PACKAGES_DIR} FILES_MATCHING PATTERN "*.h") +file(INSTALL ${SOURCE_PATH}/include DESTINATION ${CURRENT_PACKAGES_DIR} FILES_MATCHING PATTERN "*.h") vcpkg_copy_pdbs() diff --git a/ports/rapidxml/portfile.cmake b/ports/rapidxml/portfile.cmake index 03422aa1d..90dd06911 100644 --- a/ports/rapidxml/portfile.cmake +++ b/ports/rapidxml/portfile.cmake @@ -1,14 +1,15 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/rapidxml-1.13) vcpkg_download_distfile(ARCHIVE - URL "https://sourceforge.net/projects/rapidxml/files/rapidxml/rapidxml%201.13/rapidxml-1.13.zip/download" + URLS "https://sourceforge.net/projects/rapidxml/files/rapidxml/rapidxml%201.13/rapidxml-1.13.zip/download" FILENAME "rapidxml-1.13.zip" - MD5 7b4b42c9331c90aded23bb55dc725d6a + SHA512 6c10583e6631ccdb0217d0a5381172cb4c1046226de6ef1acf398d85e81d145228e14c3016aefcd7b70a1db8631505b048d8b4f5d4b0dbf1811d2482eefdd265 ) vcpkg_extract_source_archive(${ARCHIVE}) # Handle copyright -file(COPY ${CURRENT_BUILDTREES_DIR}/src/rapidxml-1.13/license.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/rapidxml) +file(COPY ${SOURCE_PATH}/license.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/rapidxml) file(RENAME ${CURRENT_PACKAGES_DIR}/share/rapidxml/license.txt ${CURRENT_PACKAGES_DIR}/share/rapidxml/copyright) # Copy the header files -file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/rapidxml-1.13/ DESTINATION ${CURRENT_PACKAGES_DIR}/include FILES_MATCHING PATTERN "*.hpp") +file(INSTALL ${SOURCE_PATH}/ DESTINATION ${CURRENT_PACKAGES_DIR}/include FILES_MATCHING PATTERN "*.hpp") diff --git a/ports/sdl2/portfile.cmake b/ports/sdl2/portfile.cmake index 8d5a95feb..bfd4a8f63 100644 --- a/ports/sdl2/portfile.cmake +++ b/ports/sdl2/portfile.cmake @@ -1,43 +1,43 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/SDL2-2.0.4) vcpkg_download_distfile(ARCHIVE_FILE - URL "http://libsdl.org/release/SDL2-2.0.4.tar.gz" + URLS "http://libsdl.org/release/SDL2-2.0.4.tar.gz" FILENAME "SDL2-2.0.4.tar.gz" - MD5 44fc4a023349933e7f5d7a582f7b886e + SHA512 dd0a95878639856c0f4b8a579ace8071379ab64519fa139b22d3ed857a0f0db87a75bc8480c7207e02fbffd1fdbd448e3c0b882c451675b0e2f1a945af02e1d6 ) vcpkg_extract_source_archive(${ARCHIVE_FILE}) if(TRIPLET_SYSTEM_NAME MATCHES "WindowsStore") vcpkg_build_msbuild( - PROJECT_PATH ${CURRENT_BUILDTREES_DIR}/src/SDL2-2.0.4/VisualC-WinRT/UWP_VS2015/SDL-UWP.vcxproj + PROJECT_PATH ${SOURCE_PATH}/VisualC-WinRT/UWP_VS2015/SDL-UWP.vcxproj ) file(COPY - ${CURRENT_BUILDTREES_DIR}/src/SDL2-2.0.4/VisualC-WinRT/UWP_VS2015/Debug/SDL-UWP/SDL2.dll - ${CURRENT_BUILDTREES_DIR}/src/SDL2-2.0.4/VisualC-WinRT/UWP_VS2015/Debug/SDL-UWP/SDL2.pdb + ${SOURCE_PATH}/VisualC-WinRT/UWP_VS2015/Debug/SDL-UWP/SDL2.dll + ${SOURCE_PATH}/VisualC-WinRT/UWP_VS2015/Debug/SDL-UWP/SDL2.pdb DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) file(COPY - ${CURRENT_BUILDTREES_DIR}/src/SDL2-2.0.4/VisualC-WinRT/UWP_VS2015/Release/SDL-UWP/SDL2.dll - ${CURRENT_BUILDTREES_DIR}/src/SDL2-2.0.4/VisualC-WinRT/UWP_VS2015/Release/SDL-UWP/SDL2.pdb + ${SOURCE_PATH}/VisualC-WinRT/UWP_VS2015/Release/SDL-UWP/SDL2.dll + ${SOURCE_PATH}/VisualC-WinRT/UWP_VS2015/Release/SDL-UWP/SDL2.pdb DESTINATION ${CURRENT_PACKAGES_DIR}/bin) - file(COPY ${CURRENT_BUILDTREES_DIR}/src/SDL2-2.0.4/VisualC-WinRT/UWP_VS2015/Debug/SDL-UWP/SDL2.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) - file(COPY ${CURRENT_BUILDTREES_DIR}/src/SDL2-2.0.4/VisualC-WinRT/UWP_VS2015/Release/SDL-UWP/SDL2.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib) + file(COPY ${SOURCE_PATH}/VisualC-WinRT/UWP_VS2015/Debug/SDL-UWP/SDL2.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) + file(COPY ${SOURCE_PATH}/VisualC-WinRT/UWP_VS2015/Release/SDL-UWP/SDL2.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include) file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/include) - file(COPY ${CURRENT_BUILDTREES_DIR}/src/SDL2-2.0.4/include DESTINATION ${CURRENT_PACKAGES_DIR}/include) + file(COPY ${SOURCE_PATH}/include DESTINATION ${CURRENT_PACKAGES_DIR}/include) file(RENAME ${CURRENT_PACKAGES_DIR}/include/include ${CURRENT_PACKAGES_DIR}/include/SDL2) else() vcpkg_configure_cmake( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/SDL2-2.0.4 + SOURCE_PATH ${SOURCE_PATH} OPTIONS -DSDL_STATIC=OFF ) - vcpkg_build_cmake() vcpkg_install_cmake() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) endif() -file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/SDL2-2.0.4/COPYING.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/sdl2 RENAME copyright) +file(INSTALL ${SOURCE_PATH}/COPYING.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/sdl2 RENAME copyright) vcpkg_copy_pdbs() diff --git a/ports/sery/portfile.cmake b/ports/sery/portfile.cmake index a6df423d3..900ca74e0 100644 --- a/ports/sery/portfile.cmake +++ b/ports/sery/portfile.cmake @@ -1,21 +1,19 @@ include(vcpkg_common_functions) +SET(SOURCE_PATH "${CURRENT_BUILDTREES_DIR}/src/Sery-1.0") vcpkg_download_distfile(ARCHIVE - URL "https://github.com/Ninetainedo/Sery/archive/v1.0.zip" + URLS "https://github.com/Ninetainedo/Sery/archive/v1.0.zip" FILENAME "sery-1.0.0.zip" - MD5 6af526fb1b029dd989a35e44a6fa59a8 + SHA512 15ef97bf094e8931049d8dd667a778e23847555f0f8d5b949b250e26edcc2541744fac5c34d935880d070546777fa787b1baf018d8ca2240fcd18a820aded04f ) vcpkg_extract_source_archive(${ARCHIVE}) -SET(SERY_ROOT_DIR "${CURRENT_BUILDTREES_DIR}/src/Sery-1.0") - vcpkg_configure_cmake( - SOURCE_PATH ${SERY_ROOT_DIR} + SOURCE_PATH ${SOURCE_PATH} # OPTIONS -DUSE_THIS_IN_ALL_BUILDS=1 -DUSE_THIS_TOO=2 # OPTIONS_RELEASE -DOPTIMIZE=1 # OPTIONS_DEBUG -DDEBUGGABLE=1 ) -vcpkg_build_cmake() vcpkg_install_cmake() # Removes unnecessary directories @@ -23,7 +21,7 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/cmake) # Handle copyright -file(COPY ${SERY_ROOT_DIR}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/sery) +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/sery) file(RENAME ${CURRENT_PACKAGES_DIR}/share/sery/LICENSE ${CURRENT_PACKAGES_DIR}/share/sery/copyright) # Moves cmake files where appropriate diff --git a/ports/sqlite3/portfile.cmake b/ports/sqlite3/portfile.cmake index b9cc6abe3..114a7186f 100644 --- a/ports/sqlite3/portfile.cmake +++ b/ports/sqlite3/portfile.cmake @@ -1,18 +1,18 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CMAKE_CURRENT_LIST_DIR}) vcpkg_download_distfile(ARCHIVE - URL "http://www.sqlite.org/2016/sqlite-amalgamation-3120200.zip" + URLS "http://www.sqlite.org/2016/sqlite-amalgamation-3120200.zip" FILENAME "sqlite-amalgamation-3120200.zip" - MD5 e3b10b952f075252169ac613068ccc97 + SHA512 92e1cc09dc4d4e9dd4c189e4a5061664f11971eb3e14c4c59e1f489f201411b08a31dae9e6fc50fffd49bb72f88ac3d99b7c7cd5e334b3079c165ee1c4f5a16e ) vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_configure_cmake( - SOURCE_PATH ${CMAKE_CURRENT_LIST_DIR} + SOURCE_PATH ${SOURCE_PATH} OPTIONS -DSOURCE=${CURRENT_BUILDTREES_DIR}/src/sqlite-amalgamation-3120200 ) -vcpkg_build_cmake() vcpkg_install_cmake() file(WRITE ${CURRENT_PACKAGES_DIR}/share/sqlite3/copyright "SQLite is in the Public Domain.\nhttp://www.sqlite.org/copyright.html\n") diff --git a/ports/stb/portfile.cmake b/ports/stb/portfile.cmake index 79a599df6..432d84604 100644 --- a/ports/stb/portfile.cmake +++ b/ports/stb/portfile.cmake @@ -1,16 +1,16 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/stb-e713a69f1ea6ee1e0d55725ed0731520045a5993) vcpkg_download_distfile(ARCHIVE - URL "https://github.com/nothings/stb/archive/e713a69f1ea6ee1e0d55725ed0731520045a5993.zip" + URLS "https://github.com/nothings/stb/archive/e713a69f1ea6ee1e0d55725ed0731520045a5993.zip" FILENAME "stb-e713a69f1ea6ee1e0d55725ed0731520045a5993.zip" - MD5 5d81d3036610045d5a8076728c4e2f7e + SHA512 28d73905e626bf286bc42e30bc50e8449912a9db5e421e09bfbd17790de1909fe9df19c96d6ad3125a6ae0947d45b11b83ee5965dab68d1eadd0c332e391400e ) vcpkg_extract_source_archive(${ARCHIVE}) # Put the licence file where vcpkg expects it -set(SOURCE_DIR ${CURRENT_BUILDTREES_DIR}/src/stb-e713a69f1ea6ee1e0d55725ed0731520045a5993) -file(COPY ${SOURCE_DIR}/README.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/stb/README.md) +file(COPY ${SOURCE_PATH}/README.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/stb/README.md) file(RENAME ${CURRENT_PACKAGES_DIR}/share/stb/README.md ${CURRENT_PACKAGES_DIR}/share/stb/copyright) # Copy the stb header files -file(GLOB HEADER_FILES ${SOURCE_DIR}/*.h) +file(GLOB HEADER_FILES ${SOURCE_PATH}/*.h) file(COPY ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include) diff --git a/ports/tcl/portfile.cmake b/ports/tcl/portfile.cmake index 16f9abdbd..d8b19097a 100644 --- a/ports/tcl/portfile.cmake +++ b/ports/tcl/portfile.cmake @@ -1,6 +1,6 @@ include(vcpkg_common_functions) vcpkg_download_distfile(ARCHIVE - URL "http://prdownloads.sourceforge.net/tcl/tcl8.6.5-src.tar.gz" + URLS "http://prdownloads.sourceforge.net/tcl/tcl8.6.5-src.tar.gz" FILENAME "tcl8.6.5-src.tar.gz" MD5 0e6426a4ca9401825fbc6ecf3d89a326 ) diff --git a/ports/tiff/portfile.cmake b/ports/tiff/portfile.cmake index c01914d87..647b61019 100644 --- a/ports/tiff/portfile.cmake +++ b/ports/tiff/portfile.cmake @@ -1,17 +1,17 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/tiff-4.0.6) vcpkg_download_distfile(ARCHIVE - URL "http://download.osgeo.org/libtiff/tiff-4.0.6.tar.gz" + URLS "http://download.osgeo.org/libtiff/tiff-4.0.6.tar.gz" FILENAME "tiff-4.0.6.tar.gz" - MD5 d1d2e940dea0b5ad435f21f03d96dd72 + SHA512 2c8dbaaaab9f82a7722bfe8cb6fcfcf67472beb692f1b7dafaf322759e7016dad1bc58457c0f03db50aa5bd088fef2b37358fcbc1524e20e9e14a9620373fdf8 ) vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_configure_cmake( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/tiff-4.0.6 + SOURCE_PATH ${SOURCE_PATH} OPTIONS -Dcxx=OFF ) -vcpkg_build_cmake() vcpkg_install_cmake() file(REMOVE_RECURSE @@ -20,7 +20,7 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share ) file(COPY - ${CURRENT_BUILDTREES_DIR}/src/tiff-4.0.6/COPYRIGHT + ${SOURCE_PATH}/COPYRIGHT DESTINATION ${CURRENT_PACKAGES_DIR}/share/tiff ) file(RENAME diff --git a/ports/tinyxml2/portfile.cmake b/ports/tinyxml2/portfile.cmake index 56c86d82a..656f4783f 100644 --- a/ports/tinyxml2/portfile.cmake +++ b/ports/tinyxml2/portfile.cmake @@ -1,22 +1,22 @@ include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/tinyxml2-3.0.0) vcpkg_download_distfile(ARCHIVE - URL "https://github.com/leethomason/tinyxml2/archive/3.0.0.zip" + URLS "https://github.com/leethomason/tinyxml2/archive/3.0.0.zip" FILENAME "tinyxml2-3.0.0.zip" - MD5 851ffc79097239cdc03a952094ddf437 + SHA512 3581e086e41ea01418fdf74e53b932c41cada9a45b73fb71c15424672182dc2a1e55110f030962ae44df6f5d9f060478c5b04373f886da843a78fcabae8b063c ) vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_configure_cmake( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/tinyxml2-3.0.0 + SOURCE_PATH ${SOURCE_PATH} # OPTIONS -DUSE_THIS_IN_ALL_BUILDS=1 # OPTIONS_RELEASE -DOPTIMIZE=1 # OPTIONS_DEBUG -DDEBUGGABLE=1 ) -vcpkg_build_cmake() vcpkg_install_cmake() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(COPY ${CURRENT_BUILDTREES_DIR}/src/tinyxml2-3.0.0/readme.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/tinyxml2) +file(COPY ${SOURCE_PATH}/readme.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/tinyxml2) file(RENAME ${CURRENT_PACKAGES_DIR}/share/tinyxml2/readme.md ${CURRENT_PACKAGES_DIR}/share/tinyxml2/copyright) vcpkg_copy_pdbs() diff --git a/ports/tk/portfile.cmake b/ports/tk/portfile.cmake index 8b5f1f36e..0391b0b30 100644 --- a/ports/tk/portfile.cmake +++ b/ports/tk/portfile.cmake @@ -1,6 +1,6 @@ include(vcpkg_common_functions) vcpkg_download_distfile(ARCHIVE - URL "http://prdownloads.sourceforge.net/tcl/tk8.6.5-src.tar.gz" + URLS "http://prdownloads.sourceforge.net/tcl/tk8.6.5-src.tar.gz" FILENAME "tk8.6.5-src.tar.gz" MD5 11dbbd425c3e0201f20d6a51482ce6c4 ) diff --git a/ports/zlib/portfile.cmake b/ports/zlib/portfile.cmake index cbd942aeb..ef42536dc 100644 --- a/ports/zlib/portfile.cmake +++ b/ports/zlib/portfile.cmake @@ -1,22 +1,31 @@ +include(${CMAKE_TRIPLET_FILE}) include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/zlib-1.2.8) vcpkg_download_distfile(ARCHIVE_FILE - URL "http://zlib.net/zlib128.zip" + URLS "http://zlib.net/zlib128.zip" FILENAME "zlib128.zip" - MD5 126f8676442ffbd97884eb4d6f32afb4 + SHA512 b0d7e71eca9032910c56fc1de6adbdc4f915bdeafd9a114591fc05701893004ef3363add8ad0e576c956b6be158f2fc339ab393f2dd40e8cc8c2885d641d807b ) vcpkg_extract_source_archive(${ARCHIVE_FILE}) vcpkg_configure_cmake( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/zlib-1.2.8 + SOURCE_PATH ${SOURCE_PATH} OPTIONS -DSKIP_INSTALL_FILES=ON OPTIONS_DEBUG -DSKIP_INSTALL_HEADERS=ON ) -vcpkg_build_cmake() vcpkg_install_cmake() -file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/zlibstatic.lib ${CURRENT_PACKAGES_DIR}/debug/lib/zlibstaticd.lib) +if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/zlibstatic.lib ${CURRENT_PACKAGES_DIR}/debug/lib/zlibstaticd.lib) + vcpkg_copy_pdbs() +else() + file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/zlib.lib ${CURRENT_PACKAGES_DIR}/debug/lib/zlibd.lib) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/zlibstatic.lib ${CURRENT_PACKAGES_DIR}/lib/zlib.lib) + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/zlibstaticd.lib ${CURRENT_PACKAGES_DIR}/debug/lib/zlibd.lib) +endif() + file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/zlib RENAME copyright) -vcpkg_copy_pdbs() |
