aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoratkawa7 <atkawa7@yahoo.com>2017-06-15 19:52:03 -0700
committeratkawa7 <atkawa7@yahoo.com>2017-06-15 19:52:03 -0700
commite46dd1fd551a17a2900e09f52b8abd02a3758f4f (patch)
tree9c2671ad8a715eca875c1f4f02882a0811e3d54a
parentce5ad1ffe1ed0c6351a09b01bc92a2ad258b8f19 (diff)
parentc966c3709e65b53580e66fe9d0cab1d4414b0472 (diff)
downloadvcpkg-e46dd1fd551a17a2900e09f52b8abd02a3758f4f.tar.gz
vcpkg-e46dd1fd551a17a2900e09f52b8abd02a3758f4f.zip
Merge https://github.com/Microsoft/vcpkg
-rw-r--r--ports/beast/CONTROL2
-rw-r--r--ports/beast/portfile.cmake4
-rw-r--r--ports/cairo/CONTROL2
-rw-r--r--ports/cairo/Initialize-mutexes-for-static-builds-for-win32.patch16
-rw-r--r--ports/cairo/portfile.cmake5
-rw-r--r--ports/catch/CONTROL2
-rw-r--r--ports/catch/portfile.cmake26
-rw-r--r--ports/fmt/CONTROL2
-rw-r--r--ports/fmt/portfile.cmake26
-rw-r--r--ports/freeimage/CMakeLists.txt34
-rw-r--r--ports/freeimage/CONTROL4
-rw-r--r--ports/freeimage/FreeImageConfig-dynamic.h1
-rw-r--r--ports/freeimage/cmake/FindOpenEXR.cmake28
-rw-r--r--ports/freeimage/portfile.cmake3
-rw-r--r--ports/freeimage/use-external-openexr.patch44
-rw-r--r--ports/live555/BasicUsageEnvironment.txt25
-rw-r--r--ports/live555/CONTROL3
-rw-r--r--ports/live555/UsageEnvironment.txt21
-rw-r--r--ports/live555/groupsock.txt28
-rw-r--r--ports/live555/live.txt14
-rw-r--r--ports/live555/liveMedia.txt331
-rw-r--r--ports/live555/master.txt12
-rw-r--r--ports/live555/mediaServer.txt23
-rw-r--r--ports/live555/portfile.cmake71
-rw-r--r--ports/live555/proxyServer.txt17
-rw-r--r--ports/live555/testProgs.txt114
-rw-r--r--ports/openexr/CONTROL4
-rw-r--r--ports/openexr/add-missing-export.patch13
-rw-r--r--ports/openexr/portfile.cmake54
-rw-r--r--scripts/templates/portfile.in.cmake2
-rw-r--r--toolsrc/src/vcpkg_System.cpp2
31 files changed, 857 insertions, 76 deletions
diff --git a/ports/beast/CONTROL b/ports/beast/CONTROL
index 142b40d1e..170be13df 100644
--- a/ports/beast/CONTROL
+++ b/ports/beast/CONTROL
@@ -1,4 +1,4 @@
Source: beast
-Version: v56
+Version: v58
Build-Depends: boost
Description: HTTP/1 and WebSocket, header-only using Boost.Asio and C++11
diff --git a/ports/beast/portfile.cmake b/ports/beast/portfile.cmake
index 540defe78..36e91bed7 100644
--- a/ports/beast/portfile.cmake
+++ b/ports/beast/portfile.cmake
@@ -4,8 +4,8 @@ include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO vinniefalco/Beast
- REF 18c68ceec99697121ec442b35dac6c9587a9566a
- SHA512 844acd6543610b17686de5b14631576091336dabdaba0800aa4bba7c6a7d55268cc7bfbcd5337a8a3055011f94cba116bb04ebc2c7e0086b25a63796c2177edd
+ REF 3f8097b6fddce8463084ce5c0d69db9a9079c2b8
+ SHA512 843cc0ddea35987e4f5eeaabcbcf3317135979eec9645a324740afa2a0af5041af787ee05e14d55d2ce17c72e227eacbadbe87c49e1bb6d7a0b075ad9694d92d
HEAD_REF master
)
diff --git a/ports/cairo/CONTROL b/ports/cairo/CONTROL
index 0cad79902..b03290e9e 100644
--- a/ports/cairo/CONTROL
+++ b/ports/cairo/CONTROL
@@ -1,4 +1,4 @@
Source: cairo
-Version: 1.15.4-2
+Version: 1.15.4-3
Description: Cairo is a 2D graphics library with support for multiple output devices. Currently supported output targets include the X Window System (via both Xlib and XCB), Quartz, Win32, image buffers, PostScript, PDF, and SVG file output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB.
Build-Depends: zlib, libpng, pixman, glib, freetype, fontconfig
diff --git a/ports/cairo/Initialize-mutexes-for-static-builds-for-win32.patch b/ports/cairo/Initialize-mutexes-for-static-builds-for-win32.patch
new file mode 100644
index 000000000..420d91e28
--- /dev/null
+++ b/ports/cairo/Initialize-mutexes-for-static-builds-for-win32.patch
@@ -0,0 +1,16 @@
+ src/win32/cairo-win32-device.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/win32/cairo-win32-device.c b/src/win32/cairo-win32-device.c
+index 741e49e..c60c494 100644
+--- a/src/win32/cairo-win32-device.c
++++ b/src/win32/cairo-win32-device.c
+@@ -131,6 +131,8 @@ _cairo_win32_device_get (void)
+ {
+ cairo_win32_device_t *device;
+
++ CAIRO_MUTEX_INITIALIZE ();
++
+ if (__cairo_win32_device)
+ return cairo_device_reference (__cairo_win32_device);
+
diff --git a/ports/cairo/portfile.cmake b/ports/cairo/portfile.cmake
index a15649627..7e6e02155 100644
--- a/ports/cairo/portfile.cmake
+++ b/ports/cairo/portfile.cmake
@@ -15,6 +15,11 @@ vcpkg_download_distfile(ARCHIVE
)
vcpkg_extract_source_archive(${ARCHIVE})
+vcpkg_apply_patches(
+ SOURCE_PATH ${SOURCE_PATH}
+ PATCHES "${CMAKE_CURRENT_LIST_DIR}/Initialize-mutexes-for-static-builds-for-win32.patch"
+)
+
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists_cairo.txt DESTINATION ${SOURCE_PATH}/src)
file(RENAME ${SOURCE_PATH}/src/CMakeLists_cairo.txt ${SOURCE_PATH}/src/CMakeLists.txt)
diff --git a/ports/catch/CONTROL b/ports/catch/CONTROL
index 4c9626863..cce74b299 100644
--- a/ports/catch/CONTROL
+++ b/ports/catch/CONTROL
@@ -1,3 +1,3 @@
Source: catch
-Version: 1.9.4
+Version: 1.9.5-1
Description: C++ Automated Test Cases in Headers
diff --git a/ports/catch/portfile.cmake b/ports/catch/portfile.cmake
index 670c51fbc..d3cd5a2bb 100644
--- a/ports/catch/portfile.cmake
+++ b/ports/catch/portfile.cmake
@@ -1,26 +1,18 @@
-# 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}
-#
-
-#header-only library
include(vcpkg_common_functions)
+set(CATCH_VERSION v1.9.5)
+
vcpkg_download_distfile(HEADER
- URLS "https://github.com/philsquared/Catch/releases/download/v1.9.4/catch.hpp"
- FILENAME "catch.hpp"
- SHA512 efbb5086d1eff393cf7997cd51f7b42d43cf744425f1abab91f3fb84524e98f9e0fef22d6725c2f5a1fe89965035d2ea5ea6e005abcf85a747953cf0101c9407
+ URLS "https://github.com/philsquared/Catch/releases/download/${CATCH_VERSION}/catch.hpp"
+ FILENAME "catch-${CATCH_VERSION}.hpp"
+ SHA512 4e5dc6959903282c90c7e7981238248072c7f5d4083ccfcd62ca8db494bed46cbd280624d1bafaf2221ca02e7877a4cc319f1adee06dfaeee9da3757b7a7ba56
)
vcpkg_download_distfile(LICENSE
- URLS "https://raw.githubusercontent.com/philsquared/Catch/v1.9.4/LICENSE.txt"
- FILENAME "LICENSE.txt"
+ URLS "https://raw.githubusercontent.com/philsquared/Catch/${CATCH_VERSION}/LICENSE.txt"
+ FILENAME "catch-LICENSE-${CATCH_VERSION}.txt"
SHA512 d6078467835dba8932314c1c1e945569a64b065474d7aced27c9a7acc391d52e9f234138ed9f1aa9cd576f25f12f557e0b733c14891d42c16ecdc4a7bd4d60b8
)
-file(COPY ${HEADER} DESTINATION ${CURRENT_PACKAGES_DIR}/include )
-file(COPY ${LICENSE} DESTINATION ${CURRENT_PACKAGES_DIR}/share/catch )
-file(RENAME ${CURRENT_PACKAGES_DIR}/share/catch/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/catch/copyright)
+file(INSTALL ${HEADER} DESTINATION ${CURRENT_PACKAGES_DIR}/include RENAME catch.hpp)
+file(INSTALL ${LICENSE} DESTINATION ${CURRENT_PACKAGES_DIR}/share/catch RENAME copyright)
diff --git a/ports/fmt/CONTROL b/ports/fmt/CONTROL
index 4e980b4d5..e5749ab1f 100644
--- a/ports/fmt/CONTROL
+++ b/ports/fmt/CONTROL
@@ -1,3 +1,3 @@
Source: fmt
-Version: 3.0.1-4
+Version: 3.0.2
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 959a0ebe7..49728fbe0 100644
--- a/ports/fmt/portfile.cmake
+++ b/ports/fmt/portfile.cmake
@@ -1,15 +1,11 @@
-#if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
-# message(STATUS "Warning: Dynamic building not supported yet. Building static.")
-# set(VCPKG_LIBRARY_LINKAGE static)
-#endif()
include(vcpkg_common_functions)
-set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/fmt-3.0.1)
-vcpkg_download_distfile(ARCHIVE_FILE
- URLS "https://github.com/fmtlib/fmt/archive/3.0.1.tar.gz"
- FILENAME "fmt-3.0.1.tar.gz"
- SHA512 daf5dfb2fe63eb611983fa248bd2182c6202cf1c4f0fc236f357040fce8e87ad531cdf59090306bb313ea333d546e516f467b385e05094e696d0ca091310aad6
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO fmtlib/fmt
+ REF 3.0.2
+ SHA512 50f5a25d1a10fd5b265f3811fa11886b9efdae2952f2aefc9f22c87c1a748128369f4d530b320e5e9c67c745cdab4607d1cb08940f4cf968300dee22e1150117
+ HEAD_REF master
)
-vcpkg_extract_source_archive(${ARCHIVE_FILE})
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
@@ -18,10 +14,8 @@ vcpkg_configure_cmake(
-DFMT_CMAKE_DIR=share/fmt
-DFMT_TEST=OFF
-DFMT_DOC=OFF
- -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=ON
)
-
vcpkg_install_cmake()
file(INSTALL ${SOURCE_PATH}/LICENSE.rst DESTINATION ${CURRENT_PACKAGES_DIR}/share/fmt RENAME copyright)
if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
@@ -36,12 +30,8 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
file(WRITE ${CURRENT_PACKAGES_DIR}/include/fmt/format.h "${FMT_FORMAT_H}")
endif()
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)
-file(RENAME ${CURRENT_PACKAGES_DIR}/debug/share/fmt/fmt-targets-debug.cmake ${CURRENT_PACKAGES_DIR}/share/fmt/fmt-targets-debug.cmake)
-file(READ ${CURRENT_PACKAGES_DIR}/share/fmt/fmt-targets-debug.cmake FMT_DEBUG_MODULE)
-string(REPLACE "\${_IMPORT_PREFIX}" "\${_IMPORT_PREFIX}/debug" FMT_DEBUG_MODULE "${FMT_DEBUG_MODULE}")
-file(WRITE ${CURRENT_PACKAGES_DIR}/share/fmt/fmt-targets-debug.cmake "${FMT_DEBUG_MODULE}")
+
+vcpkg_fixup_cmake_targets()
file(READ ${CURRENT_PACKAGES_DIR}/share/fmt/fmt-targets-debug.cmake FMT_DEBUG_MODULE)
string(REPLACE "lib/fmt.dll" "bin/fmt.dll" FMT_DEBUG_MODULE ${FMT_DEBUG_MODULE})
diff --git a/ports/freeimage/CMakeLists.txt b/ports/freeimage/CMakeLists.txt
index 1cafdd880..f385f508c 100644
--- a/ports/freeimage/CMakeLists.txt
+++ b/ports/freeimage/CMakeLists.txt
@@ -16,6 +16,7 @@ list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
find_package(WEBP REQUIRED)
find_package(JXR REQUIRED)
find_package(LibRaw REQUIRED)
+find_package(OpenEXR REQUIRED)
option(BUILD_SHARED_LIBS "Build shared libraries" ON)
option(INSTALL_HEADERS "Install the development headers" ON)
@@ -24,35 +25,6 @@ set(REAL_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/Source)
# Add a debug postfix
set(CMAKE_DEBUG_POSTFIX "d")
-
-# For now the internal copy of OpenEXR is used (as a private always static library)
-file(GLOB OPENEXR_PRIVATE_HEADERS ${REAL_SOURCE_DIR}/OpenEXR/Half/*.h
- ${REAL_SOURCE_DIR}/OpenEXR/Iex/*.h
- ${REAL_SOURCE_DIR}/OpenEXR/IexMath/*.h
- ${REAL_SOURCE_DIR}/OpenEXR/IlmImf/*.h
- ${REAL_SOURCE_DIR}/OpenEXR/IlmThread/*.h
- ${REAL_SOURCE_DIR}/OpenEXR/Imath/*.h
- ${REAL_SOURCE_DIR}/OpenEXR/*.h)
-
-file(GLOB OPENEXR_SRCS ${REAL_SOURCE_DIR}/OpenEXR/Half/*.cpp
- ${REAL_SOURCE_DIR}/OpenEXR/Iex/*.cpp
- ${REAL_SOURCE_DIR}/OpenEXR/IexMath/*.cpp
- ${REAL_SOURCE_DIR}/OpenEXR/IlmImf/*.cpp
- ${REAL_SOURCE_DIR}/OpenEXR/IlmThread/*.cpp
- ${REAL_SOURCE_DIR}/OpenEXR/Imath/*.cpp)
-
-add_library(FreeImage_Private_OpenEXR STATIC ${OPENEXR_PRIVATE_HEADERS} ${OPENEXR_SRCS})
-
-set(FreeImage_Private_OpenEXR_INCLUDE_DIRS ${REAL_SOURCE_DIR}/OpenEXR
- ${REAL_SOURCE_DIR}/OpenEXR/Half
- ${REAL_SOURCE_DIR}/OpenEXR/Iex
- ${REAL_SOURCE_DIR}/OpenEXR/IexMath
- ${REAL_SOURCE_DIR}/OpenEXR/IlmImf
- ${REAL_SOURCE_DIR}/OpenEXR/IlmThread
- ${REAL_SOURCE_DIR}/OpenEXR/Imath)
-
-target_include_directories(FreeImage_Private_OpenEXR PRIVATE ${FreeImage_Private_OpenEXR_INCLUDE_DIRS}
- ${ZLIB_INCLUDE_DIRS})
# List the public header files
set(PUBLIC_HEADERS ${REAL_SOURCE_DIR}/FreeImage.h)
@@ -124,7 +96,7 @@ target_include_directories(FreeImage PRIVATE ${REAL_SOURCE_DIR}
${WEBP_INCLUDE_DIRS}
${JXR_INCLUDE_DIRS}
${LibRaw_INCLUDE_DIRS}
- ${FreeImage_Private_OpenEXR_INCLUDE_DIRS}
+ ${OpenEXR_INCLUDE_DIRS}
${CMAKE_CURRENT_BINARY_DIR})
@@ -136,7 +108,7 @@ target_link_libraries(FreeImage ${ZLIB_LIBRARIES}
${WEBP_LIBRARIES}
${JXR_LIBRARIES}
${LibRaw_LIBRARIES}
- FreeImage_Private_OpenEXR)
+ ${OpenEXR_LIBRARIES})
target_compile_definitions(FreeImage PRIVATE ${PNG_DEFINITIONS})
diff --git a/ports/freeimage/CONTROL b/ports/freeimage/CONTROL
index 9eb197b10..2d9fa1523 100644
--- a/ports/freeimage/CONTROL
+++ b/ports/freeimage/CONTROL
@@ -1,4 +1,4 @@
Source: freeimage
-Version: 3.17.0-1
-Build-Depends: zlib, libpng, libjpeg-turbo, tiff, openjpeg, libwebp, libraw, jxrlib
+Version: 3.17.0-2
+Build-Depends: zlib, libpng, libjpeg-turbo, tiff, openjpeg, libwebp, libraw, jxrlib, openexr
Description: Support library for graphics image formats
diff --git a/ports/freeimage/FreeImageConfig-dynamic.h b/ports/freeimage/FreeImageConfig-dynamic.h
index d87b65b4c..41dcf57d9 100644
--- a/ports/freeimage/FreeImageConfig-dynamic.h
+++ b/ports/freeimage/FreeImageConfig-dynamic.h
@@ -1,5 +1,6 @@
#ifndef FREEIMAGE_CONFIG_H
#define FREEIMAGE_CONFIG_H
+#undef FREEIMAGE_LIB
#endif
diff --git a/ports/freeimage/cmake/FindOpenEXR.cmake b/ports/freeimage/cmake/FindOpenEXR.cmake
new file mode 100644
index 000000000..beca25145
--- /dev/null
+++ b/ports/freeimage/cmake/FindOpenEXR.cmake
@@ -0,0 +1,28 @@
+find_path(OpenEXR_INCLUDE_DIRS OpenEXR/OpenEXRConfig.h)
+
+file(STRINGS "${OpenEXR_INCLUDE_DIRS}/OpenEXR/OpenEXRConfig.h" OPENEXR_CONFIG_H)
+
+string(REGEX REPLACE "^.*define OPENEXR_VERSION_MAJOR ([0-9]+).*$" "\\1" OpenEXR_VERSION_MAJOR "${OPENEXR_CONFIG_H}")
+string(REGEX REPLACE "^.*define OPENEXR_VERSION_MINOR ([0-9]+).*$" "\\1" OpenEXR_VERSION_MINOR "${OPENEXR_CONFIG_H}")
+set(OpenEXR_LIB_SUFFIX "${OpenEXR_VERSION_MAJOR}_${OpenEXR_VERSION_MINOR}")
+
+find_library(OpenEXR_LIBRARY IlmImf-${OpenEXR_LIB_SUFFIX})
+find_library(OpenEXR_UTIL_LIBRARY IlmImfUtil-${OpenEXR_LIB_SUFFIX})
+
+find_library(OpenEXR_HALF_LIBRARY Half)
+find_library(OpenEXR_IEX_LIBRARY Iex-${OpenEXR_LIB_SUFFIX})
+find_library(OpenEXR_THREAD_LIBRARY IlmThread-${OpenEXR_LIB_SUFFIX})
+find_library(OpenEXR_IEXMATH_LIBRARY IexMath-${OpenEXR_LIB_SUFFIX})
+find_library(OpenEXR_MATH_LIBRARY Imath-${OpenEXR_LIB_SUFFIX})
+
+set(OpenEXR_LIBRARIES
+ ${OpenEXR_LIBRARY}
+ ${OpenEXR_MATH_LIBRARY}
+ ${OpenEXR_IEXMATH_LIBRARY}
+ ${OpenEXR_UTIL_LIBRARY}
+ ${OpenEXR_HALF_LIBRARY}
+ ${OpenEXR_IEX_LIBRARY}
+ ${OpenEXR_THREAD_LIBRARY})
+
+include(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenEXR REQUIRED_VARS OpenEXR_LIBRARIES OpenEXR_INCLUDE_DIRS)
diff --git a/ports/freeimage/portfile.cmake b/ports/freeimage/portfile.cmake
index e48782bf0..db8d2537a 100644
--- a/ports/freeimage/portfile.cmake
+++ b/ports/freeimage/portfile.cmake
@@ -18,7 +18,6 @@ file(COPY ${CMAKE_CURRENT_LIST_DIR}/cmake DESTINATION ${SOURCE_PATH})
# This is not strictly necessary, but to make sure
# that no "internal" libraries are used by removing them
-# Note that the only "internal" dependency used is OpenEXR
file(REMOVE_RECURSE ${SOURCE_PATH}/Source/LibJPEG)
file(REMOVE_RECURSE ${SOURCE_PATH}/Source/LibPNG)
file(REMOVE_RECURSE ${SOURCE_PATH}/Source/LibTIFF4)
@@ -27,6 +26,7 @@ file(REMOVE_RECURSE ${SOURCE_PATH}/Source/LibOpenJPEG)
file(REMOVE_RECURSE ${SOURCE_PATH}/Source/LibJXR)
file(REMOVE_RECURSE ${SOURCE_PATH}/Source/LibWebP)
file(REMOVE_RECURSE ${SOURCE_PATH}/Source/LibRawLite)
+file(REMOVE_RECURSE ${SOURCE_PATH}/Source/OpenEXR)
vcpkg_apply_patches(
SOURCE_PATH ${SOURCE_PATH}
@@ -38,6 +38,7 @@ vcpkg_apply_patches(
"${CMAKE_CURRENT_LIST_DIR}/use-external-png-zlib.patch"
"${CMAKE_CURRENT_LIST_DIR}/use-external-rawlib.patch"
"${CMAKE_CURRENT_LIST_DIR}/use-external-webp.patch"
+ "${CMAKE_CURRENT_LIST_DIR}/use-external-openexr.patch"
"${CMAKE_CURRENT_LIST_DIR}/use-freeimage-config-include.patch"
)
diff --git a/ports/freeimage/use-external-openexr.patch b/ports/freeimage/use-external-openexr.patch
new file mode 100644
index 000000000..08915da72
--- /dev/null
+++ b/ports/freeimage/use-external-openexr.patch
@@ -0,0 +1,44 @@
+diff --git a/Source/FreeImage/PluginEXR.cpp b/Source/FreeImage/PluginEXR.cpp
+index b286430..82b3b72 100644
+--- a/Source/FreeImage/PluginEXR.cpp
++++ b/Source/FreeImage/PluginEXR.cpp
+@@ -28,16 +28,16 @@
+ #pragma warning (disable : 4800) // ImfVersion.h - 'const int' : forcing value to bool 'true' or 'false' (performance warning)
+ #endif
+
+-#include "../OpenEXR/IlmImf/ImfIO.h"
+-#include "../OpenEXR/Iex/Iex.h"
+-#include "../OpenEXR/IlmImf/ImfOutputFile.h"
+-#include "../OpenEXR/IlmImf/ImfInputFile.h"
+-#include "../OpenEXR/IlmImf/ImfRgbaFile.h"
+-#include "../OpenEXR/IlmImf/ImfChannelList.h"
+-#include "../OpenEXR/IlmImf/ImfRgba.h"
+-#include "../OpenEXR/IlmImf/ImfArray.h"
+-#include "../OpenEXR/IlmImf/ImfPreviewImage.h"
+-#include "../OpenEXR/Half/half.h"
++#include <OpenEXR/ImfIO.h>
++#include <OpenEXR/Iex.h>
++#include <OpenEXR/ImfOutputFile.h>
++#include <OpenEXR/ImfInputFile.h>
++#include <OpenEXR/ImfRgbaFile.h>
++#include <OpenEXR/ImfChannelList.h>
++#include <OpenEXR/ImfRgba.h>
++#include <OpenEXR/ImfArray.h>
++#include <OpenEXR/ImfPreviewImage.h>
++#include <OpenEXR/half.h>
+
+
+ // ==========================================================
+diff --git a/Source/FreeImage/PluginTIFF.cpp b/Source/FreeImage/PluginTIFF.cpp
+index 562fdd7..ce12649 100644
+--- a/Source/FreeImage/PluginTIFF.cpp
++++ b/Source/FreeImage/PluginTIFF.cpp
+@@ -39,7 +39,7 @@
+ #include "Utilities.h"
+ #include <tiffio.h>
+ #include "../Metadata/FreeImageTag.h"
+-#include "../OpenEXR/Half/half.h"
++#include <OpenEXR/half.h>
+
+ #include "FreeImageIO.h"
+ #include "PSDParser.h"
diff --git a/ports/live555/BasicUsageEnvironment.txt b/ports/live555/BasicUsageEnvironment.txt
new file mode 100644
index 000000000..40d311ee0
--- /dev/null
+++ b/ports/live555/BasicUsageEnvironment.txt
@@ -0,0 +1,25 @@
+# CMakeLists.txt in BasicUsageEnvironment
+
+SET(BASIC_USAGE_ENVIRONMENT_SRCS
+BasicHashTable.cpp
+BasicTaskScheduler.cpp
+BasicTaskScheduler0.cpp
+BasicUsageEnvironment.cpp
+BasicUsageEnvironment0.cpp
+DelayQueue.cpp
+)
+
+SET(BASIC_USAGE_ENVIRONMENT_HEADERS
+include/BasicHashTable.hh
+include/BasicUsageEnvironment.hh
+include/BasicUsageEnvironment0.hh
+include/BasicUsageEnvironment_version.hh
+include/DelayQueue.hh
+include/HandlerSet.hh
+)
+
+INCLUDE_DIRECTORIES(
+${live555Includes}
+)
+
+ADD_LIBRARY( BasicUsageEnvironment STATIC ${BASIC_USAGE_ENVIRONMENT_HEADERS} ${BASIC_USAGE_ENVIRONMENT_SRCS})
diff --git a/ports/live555/CONTROL b/ports/live555/CONTROL
new file mode 100644
index 000000000..37048f268
--- /dev/null
+++ b/ports/live555/CONTROL
@@ -0,0 +1,3 @@
+Source: live555
+Version: 2017.06.04
+Description: A complete RTSP server application
diff --git a/ports/live555/UsageEnvironment.txt b/ports/live555/UsageEnvironment.txt
new file mode 100644
index 000000000..0e93ec145
--- /dev/null
+++ b/ports/live555/UsageEnvironment.txt
@@ -0,0 +1,21 @@
+# CMakeLists.txt in UsageEnvironment
+
+SET(USAGE_ENVIRONMENT_SRCS
+HashTable.cpp
+strDup.cpp
+UsageEnvironment.cpp
+)
+
+SET(USAGE_ENVIRONMENT_HEADERS
+include/Boolean.hh
+include/HashTable.hh
+include/strDup.hh
+include/UsageEnvironment.hh
+include/UsageEnvironment_version.hh
+)
+
+INCLUDE_DIRECTORIES(
+${live555Includes}
+)
+
+ADD_LIBRARY( UsageEnvironment STATIC ${USAGE_ENVIRONMENT_HEADERS} ${USAGE_ENVIRONMENT_SRCS})
diff --git a/ports/live555/groupsock.txt b/ports/live555/groupsock.txt
new file mode 100644
index 000000000..c8c795ffa
--- /dev/null
+++ b/ports/live555/groupsock.txt
@@ -0,0 +1,28 @@
+# CMakeLists.txt in groupsock
+
+SET(GROUPSOCK_SRCS
+GroupEId.cpp
+Groupsock.cpp
+GroupsockHelper.cpp
+inet.c
+IOHandlers.cpp
+NetAddress.cpp
+NetInterface.cpp
+)
+
+SET(GROUPSOCK_HEADERS
+include/GroupEId.hh
+include/Groupsock.hh
+include/GroupsockHelper.hh
+include/groupsock_version.hh
+include/IOHandlers.hh
+include/NetAddress.hh
+include/NetInterface.hh
+include/TunnelEncaps.hh
+)
+
+INCLUDE_DIRECTORIES(
+${live555Includes}
+)
+
+ADD_LIBRARY( groupsock STATIC ${GROUPSOCK_HEADERS} ${GROUPSOCK_SRCS})
diff --git a/ports/live555/live.txt b/ports/live555/live.txt
new file mode 100644
index 000000000..1bb168407
--- /dev/null
+++ b/ports/live555/live.txt
@@ -0,0 +1,14 @@
+# CMakeLists.txt in live
+
+# includes
+INCLUDE_DIRECTORIES(
+${live555Includes}
+)
+
+ADD_SUBDIRECTORY(BasicUsageEnvironment)
+ADD_SUBDIRECTORY(groupsock)
+ADD_SUBDIRECTORY(liveMedia)
+#ADD_SUBDIRECTORY(mediaServer)
+#ADD_SUBDIRECTORY(proxyServer)
+ADD_SUBDIRECTORY(UsageEnvironment)
+#ADD_SUBDIRECTORY(testProgs)
diff --git a/ports/live555/liveMedia.txt b/ports/live555/liveMedia.txt
new file mode 100644
index 000000000..067fd5bc0
--- /dev/null
+++ b/ports/live555/liveMedia.txt
@@ -0,0 +1,331 @@
+# CMakeLists.txt in liveMedia
+
+SET(LIVE_MEDIA_SRCS
+rtcp_from_spec.c
+AC3AudioFileServerMediaSubsession.cpp
+AC3AudioRTPSink.cpp
+AC3AudioRTPSource.cpp
+AC3AudioStreamFramer.cpp
+ADTSAudioFileServerMediaSubsession.cpp
+ADTSAudioFileSource.cpp
+AMRAudioFileServerMediaSubsession.cpp
+AMRAudioFileSink.cpp
+AMRAudioFileSource.cpp
+AMRAudioRTPSink.cpp
+AMRAudioRTPSource.cpp
+AMRAudioSource.cpp
+AudioInputDevice.cpp
+AudioRTPSink.cpp
+AVIFileSink.cpp
+Base64.cpp
+BasicUDPSink.cpp
+BasicUDPSource.cpp
+BitVector.cpp
+ByteStreamFileSource.cpp
+ByteStreamMemoryBufferSource.cpp
+ByteStreamMultiFileSource.cpp
+#DarwinInjector.cpp
+DeviceSource.cpp
+DigestAuthentication.cpp
+DVVideoFileServerMediaSubsession.cpp
+DVVideoRTPSink.cpp
+DVVideoRTPSource.cpp
+DVVideoStreamFramer.cpp
+EBMLNumber.cpp
+FileServerMediaSubsession.cpp
+FileSink.cpp
+FramedFileSource.cpp
+FramedFilter.cpp
+FramedSource.cpp
+GenericMediaServer.cpp
+GSMAudioRTPSink.cpp
+H261VideoRTPSource.cpp
+H263plusVideoFileServerMediaSubsession.cpp
+H263plusVideoRTPSink.cpp
+H263plusVideoRTPSource.cpp
+H263plusVideoStreamFramer.cpp
+H263plusVideoStreamParser.cpp
+H264or5VideoFileSink.cpp
+H264or5VideoRTPSink.cpp
+H264or5VideoStreamDiscreteFramer.cpp
+H264or5VideoStreamFramer.cpp
+H264VideoFileServerMediaSubsession.cpp
+H264VideoFileSink.cpp
+H264VideoRTPSink.cpp
+H264VideoRTPSource.cpp
+H264VideoStreamDiscreteFramer.cpp
+H264VideoStreamFramer.cpp
+H265VideoFileServerMediaSubsession.cpp
+H265VideoFileSink.cpp
+H265VideoRTPSink.cpp
+H265VideoRTPSource.cpp
+H265VideoStreamDiscreteFramer.cpp
+H265VideoStreamFramer.cpp
+InputFile.cpp
+JPEGVideoRTPSink.cpp
+JPEGVideoRTPSource.cpp
+JPEGVideoSource.cpp
+Locale.cpp
+MatroskaDemuxedTrack.cpp
+MatroskaFile.cpp
+MatroskaFileParser.cpp
+MatroskaFileServerDemux.cpp
+MatroskaFileServerMediaSubsession.cpp
+Media.cpp
+MediaSession.cpp
+MediaSink.cpp
+MediaSource.cpp
+MP3ADU.cpp
+MP3ADUdescriptor.cpp
+MP3ADUinterleaving.cpp
+MP3ADURTPSink.cpp
+MP3ADURTPSource.cpp
+MP3ADUTranscoder.cpp
+MP3AudioFileServerMediaSubsession.cpp
+MP3AudioMatroskaFileServerMediaSubsession.cpp
+MP3FileSource.cpp
+MP3Internals.cpp
+MP3InternalsHuffman.cpp
+MP3InternalsHuffmanTable.cpp
+MP3StreamState.cpp
+MP3Transcoder.cpp
+MPEG1or2AudioRTPSink.cpp
+MPEG1or2AudioRTPSource.cpp
+MPEG1or2AudioStreamFramer.cpp
+MPEG1or2Demux.cpp
+MPEG1or2DemuxedElementaryStream.cpp
+MPEG1or2DemuxedServerMediaSubsession.cpp
+MPEG1or2FileServerDemux.cpp
+MPEG1or2VideoFileServerMediaSubsession.cpp
+MPEG1or2VideoRTPSink.cpp
+MPEG1or2VideoRTPSource.cpp
+MPEG1or2VideoStreamDiscreteFramer.cpp
+MPEG1or2VideoStreamFramer.cpp
+MPEG2IndexFromTransportStream.cpp
+MPEG2TransportFileServerMediaSubsession.cpp
+MPEG2TransportStreamFramer.cpp
+MPEG2TransportStreamFromESSource.cpp
+MPEG2TransportStreamFromPESSource.cpp
+MPEG2TransportStreamIndexFile.cpp
+MPEG2TransportStreamMultiplexor.cpp
+MPEG2TransportStreamTrickModeFilter.cpp
+MPEG2TransportUDPServerMediaSubsession.cpp
+MPEG4ESVideoRTPSink.cpp
+MPEG4ESVideoRTPSource.cpp
+MPEG4GenericRTPSink.cpp
+MPEG4GenericRTPSource.cpp
+MPEG4LATMAudioRTPSink.cpp
+MPEG4LATMAudioRTPSource.cpp
+MPEG4VideoFileServerMediaSubsession.cpp
+MPEG4VideoStreamDiscreteFramer.cpp
+MPEG4VideoStreamFramer.cpp
+MPEGVideoStreamFramer.cpp
+MPEGVideoStreamParser.cpp
+MultiFramedRTPSink.cpp
+MultiFramedRTPSource.cpp
+OggDemuxedTrack.cpp
+OggFile.cpp
+OggFileParser.cpp
+OggFileServerDemux.cpp
+OggFileServerMediaSubsession.cpp
+OggFileSink.cpp
+OnDemandServerMediaSubsession.cpp
+ourMD5.cpp
+OutputFile.cpp
+PassiveServerMediaSubsession.cpp
+ProxyServerMediaSession.cpp
+QCELPAudioRTPSource.cpp
+QuickTimeFileSink.cpp
+QuickTimeGenericRTPSource.cpp
+RTCP.cpp
+RTPInterface.cpp
+RTPSink.cpp
+RTPSource.cpp
+RTSPClient.cpp
+RTSPCommon.cpp
+RTSPRegisterSender.cpp
+RTSPServer.cpp
+RTSPServerSupportingHTTPStreaming.cpp
+ServerMediaSession.cpp
+SimpleRTPSink.cpp
+SimpleRTPSource.cpp
+SIPClient.cpp
+StreamParser.cpp
+StreamReplicator.cpp
+T140TextRTPSink.cpp
+TCPStreamSink.cpp
+TextRTPSink.cpp
+TheoraVideoRTPSink.cpp
+TheoraVideoRTPSource.cpp
+uLawAudioFilter.cpp
+VideoRTPSink.cpp
+VorbisAudioRTPSink.cpp
+VorbisAudioRTPSource.cpp
+VP8VideoRTPSink.cpp
+VP8VideoRTPSource.cpp
+VP9VideoRTPSink.cpp
+VP9VideoRTPSource.cpp
+WAVAudioFileServerMediaSubsession.cpp
+WAVAudioFileSource.cpp
+)
+
+SET(LIVE_MEDIA_HEADERS
+include/AC3AudioFileServerMediaSubsession.hh
+include/AC3AudioRTPSink.hh
+include/AC3AudioRTPSource.hh
+include/AC3AudioStreamFramer.hh
+include/ADTSAudioFileServerMediaSubsession.hh
+include/ADTSAudioFileSource.hh
+include/AMRAudioFileServerMediaSubsession.hh
+include/AMRAudioFileSink.hh
+include/AMRAudioFileSource.hh
+include/AMRAudioRTPSink.hh
+include/AMRAudioRTPSource.hh
+include/AMRAudioSource.hh
+include/AudioInputDevice.hh
+include/AudioRTPSink.hh
+include/AVIFileSink.hh
+include/Base64.hh
+include/BasicUDPSink.hh
+include/BasicUDPSource.hh
+include/BitVector.hh
+include/ByteStreamFileSource.hh
+include/ByteStreamMemoryBufferSource.hh
+include/ByteStreamMultiFileSource.hh
+#include/DarwinInjector.hh
+include/DeviceSource.hh
+include/DigestAuthentication.hh
+include/DVVideoFileServerMediaSubsession.hh
+include/DVVideoRTPSink.hh
+include/DVVideoRTPSource.hh
+include/DVVideoStreamFramer.hh
+include/FileServerMediaSubsession.hh
+include/FileSink.hh
+include/FramedFileSource.hh
+include/FramedFilter.hh
+include/FramedSource.hh
+include/GenericMediaServer.hh
+include/GSMAudioRTPSink.hh
+include/H261VideoRTPSource.hh
+include/H263plusVideoFileServerMediaSubsession.hh
+include/H263plusVideoRTPSink.hh
+include/H263plusVideoRTPSource.hh
+include/H263plusVideoStreamFramer.hh
+include/H264or5VideoFileSink.hh
+include/H264or5VideoRTPSink.hh
+include/H264or5VideoStreamDiscreteFramer.hh
+include/H264or5VideoStreamFramer.hh
+include/H264VideoFileServerMediaSubsession.hh
+include/H264VideoFileSink.hh
+include/H264VideoRTPSink.hh
+include/H264VideoRTPSource.hh
+include/H264VideoStreamDiscreteFramer.hh
+include/H264VideoStreamFramer.hh
+include/H265VideoFileServerMediaSubsession.hh
+include/H265VideoFileSink.hh
+include/H265VideoRTPSink.hh
+include/H265VideoRTPSource.hh
+include/H265VideoStreamDiscreteFramer.hh
+include/H265VideoStreamFramer.hh
+include/InputFile.hh
+include/JPEGVideoRTPSink.hh
+include/JPEGVideoRTPSource.hh
+include/JPEGVideoSource.hh
+include/liveMedia.hh
+include/liveMedia_version.hh
+include/Locale.hh
+include/MatroskaFile.hh
+include/MatroskaFileServerDemux.hh
+include/Media.hh
+include/MediaSession.hh
+include/MediaSink.hh
+include/MediaSource.hh
+include/MediaTranscodingTable.hh
+include/MP3ADU.hh
+include/MP3ADUinterleaving.hh
+include/MP3ADURTPSink.hh
+include/MP3ADURTPSource.hh
+include/MP3ADUTranscoder.hh
+include/MP3AudioFileServerMediaSubsession.hh
+include/MP3FileSource.hh
+include/MP3Transcoder.hh
+include/MPEG1or2AudioRTPSink.hh
+include/MPEG1or2AudioRTPSource.hh
+include/MPEG1or2AudioStreamFramer.hh
+include/MPEG1or2Demux.hh
+include/MPEG1or2DemuxedElementaryStream.hh
+include/MPEG1or2DemuxedServerMediaSubsession.hh
+include/MPEG1or2FileServerDemux.hh
+include/MPEG1or2VideoFileServerMediaSubsession.hh
+include/MPEG1or2VideoRTPSink.hh
+include/MPEG1or2VideoRTPSource.hh
+include/MPEG1or2VideoStreamDiscreteFramer.hh
+include/MPEG1or2VideoStreamFramer.hh
+include/MPEG2IndexFromTransportStream.hh
+include/MPEG2TransportFileServerMediaSubsession.hh
+include/MPEG2TransportStreamFramer.hh
+include/MPEG2TransportStreamFromESSource.hh
+include/MPEG2TransportStreamFromPESSource.hh
+include/MPEG2TransportStreamIndexFile.hh
+include/MPEG2TransportStreamMultiplexor.hh
+include/MPEG2TransportStreamTrickModeFilter.hh
+include/MPEG2TransportUDPServerMediaSubsession.hh
+include/MPEG4ESVideoRTPSink.hh
+include/MPEG4ESVideoRTPSource.hh
+include/MPEG4GenericRTPSink.hh
+include/MPEG4GenericRTPSource.hh
+include/MPEG4LATMAudioRTPSink.hh
+include/MPEG4LATMAudioRTPSource.hh
+include/MPEG4VideoFileServerMediaSubsession.hh
+include/MPEG4VideoStreamDiscreteFramer.hh
+include/MPEG4VideoStreamFramer.hh
+include/MPEGVideoStreamFramer.hh
+include/MultiFramedRTPSink.hh
+include/MultiFramedRTPSource.hh
+include/OggFile.hh
+include/OggFileServerDemux.hh
+include/OggFileSink.hh
+include/OnDemandServerMediaSubsession.hh
+include/ourMD5.hh
+include/OutputFile.hh
+include/PassiveServerMediaSubsession.hh
+include/ProxyServerMediaSession.hh
+include/QCELPAudioRTPSource.hh
+include/QuickTimeFileSink.hh
+include/QuickTimeGenericRTPSource.hh
+include/RTCP.hh
+include/RTPInterface.hh
+include/RTPSink.hh
+include/RTPSource.hh
+include/RTSPClient.hh
+include/RTSPCommon.hh
+include/RTSPRegisterSender.hh
+include/RTSPServer.hh
+include/RTSPServerSupportingHTTPStreaming.hh
+include/ServerMediaSession.hh
+include/SimpleRTPSink.hh
+include/SimpleRTPSource.hh
+include/SIPClient.hh
+include/StreamReplicator.hh
+include/T140TextRTPSink.hh
+include/TCPStreamSink.hh
+include/TextRTPSink.hh
+include/TheoraVideoRTPSink.hh
+include/TheoraVideoRTPSource.hh
+include/uLawAudioFilter.hh
+include/VideoRTPSink.hh
+include/VorbisAudioRTPSink.hh
+include/VorbisAudioRTPSource.hh
+include/VP8VideoRTPSink.hh
+include/VP8VideoRTPSource.hh
+include/VP9VideoRTPSink.hh
+include/VP9VideoRTPSource.hh
+include/WAVAudioFileServerMediaSubsession.hh
+include/WAVAudioFileSource.hh
+)
+
+INCLUDE_DIRECTORIES(
+${live555Includes}
+)
+
+ADD_LIBRARY( liveMedia STATIC ${LIVE_MEDIA_HEADERS} ${LIVE_MEDIA_SRCS})
diff --git a/ports/live555/master.txt b/ports/live555/master.txt
new file mode 100644
index 000000000..b71c69f68
--- /dev/null
+++ b/ports/live555/master.txt
@@ -0,0 +1,12 @@
+cmake_minimum_required(VERSION 2.6)
+
+PROJECT( live555 C CXX)
+
+SET(live555Includes
+${live555_SOURCE_DIR}/live/BasicUsageEnvironment/include
+${live555_SOURCE_DIR}/live/groupsock/include
+${live555_SOURCE_DIR}/live/liveMedia/include
+${live555_SOURCE_DIR}/live/UsageEnvironment/include
+)
+
+ADD_SUBDIRECTORY( live )
diff --git a/ports/live555/mediaServer.txt b/ports/live555/mediaServer.txt
new file mode 100644
index 000000000..1337b8204
--- /dev/null
+++ b/ports/live555/mediaServer.txt
@@ -0,0 +1,23 @@
+# CMakeLists.txt mediaServer directory
+
+# headers
+SET(MEDIA_SERVER_HDRS
+DynamicRTSPServer.hh
+)
+
+# source files for mediaServer
+SET(MEDIA_SERVER_SRCS
+DynamicRTSPServer.cpp
+live555MediaServer.cpp
+)
+
+ADD_EXECUTABLE(mediaServer ${MEDIA_SERVER_HDRS} ${MEDIA_SERVER_SRCS})
+TARGET_LINK_LIBRARIES(
+mediaServer
+BasicUsageEnvironment
+groupsock
+liveMedia
+UsageEnvironment
+ws2_32
+winmm
+)
diff --git a/ports/live555/portfile.cmake b/ports/live555/portfile.cmake
new file mode 100644
index 000000000..7e2fcf14b
--- /dev/null
+++ b/ports/live555/portfile.cmake
@@ -0,0 +1,71 @@
+include(vcpkg_common_functions)
+set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/live)
+vcpkg_download_distfile(ARCHIVE
+ URLS "http://www.live555.com/liveMedia/public/live.2017.06.04.tar.gz"
+ FILENAME "live.2017.06.04.tar.gz"
+ SHA512 89eb3854c2ef7d0a1f443b4ca46c66040dfcc586ffd1e3e08c1b9e831eae6ade1c16e628c0ed0e7804c4e7430993f662e3fe8df2f09903024153d188276c3088
+)
+vcpkg_extract_source_archive(${ARCHIVE})
+
+vcpkg_execute_required_process(COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/master.txt ${CURRENT_BUILDTREES_DIR}/src/CMakeLists.txt WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR})
+vcpkg_execute_required_process(COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/live.txt ${CURRENT_BUILDTREES_DIR}/src/live/CMakeLists.txt WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR})
+vcpkg_execute_required_process(COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/BasicUsageEnvironment.txt ${CURRENT_BUILDTREES_DIR}/src/live/BasicUsageEnvironment/CMakeLists.txt WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR})
+vcpkg_execute_required_process(COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/groupsock.txt ${CURRENT_BUILDTREES_DIR}/src/live/groupsock/CMakeLists.txt WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR})
+vcpkg_execute_required_process(COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/liveMedia.txt ${CURRENT_BUILDTREES_DIR}/src/live/liveMedia/CMakeLists.txt WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR})
+vcpkg_execute_required_process(COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/mediaServer.txt ${CURRENT_BUILDTREES_DIR}/src/live/mediaServer/CMakeLists.txt WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR})
+vcpkg_execute_required_process(COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/proxyServer.txt ${CURRENT_BUILDTREES_DIR}/src/live/proxyServer/CMakeLists.txt WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR})
+vcpkg_execute_required_process(COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/testProgs.txt ${CURRENT_BUILDTREES_DIR}/src/live/testProgs/CMakeLists.txt WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR})
+vcpkg_execute_required_process(COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/UsageEnvironment.txt ${CURRENT_BUILDTREES_DIR}/src/live/UsageEnvironment/CMakeLists.txt WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR})
+
+set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src)
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+)
+
+vcpkg_build_cmake()
+
+file(GLOB DLLS
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/*.dll"
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/Release/*.dll"
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/*/Release/*.dll"
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/live/*/Release/*.dll"
+)
+file(GLOB LIBS
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/*.lib"
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/Release/*.lib"
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/*/Release/*.lib"
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/live/*/Release/*.lib"
+)
+file(GLOB DEBUG_DLLS
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/*.dll"
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/Debug/*.dll"
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/*/Debug/*.dll"
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/live/*/Debug/*.dll"
+)
+file(GLOB DEBUG_LIBS
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/*.lib"
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/Debug/*.lib"
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/*/Debug/*.lib"
+ "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/live/*/Debug/*.lib"
+
+)
+
+file(GLOB HEADERS
+"${CURRENT_BUILDTREES_DIR}/src/live/BasicUsageEnvironment/include/*.hh"
+"${CURRENT_BUILDTREES_DIR}/src/live/groupsock/include/*.hh"
+"${CURRENT_BUILDTREES_DIR}/src/live/liveMedia/include/*.hh"
+"${CURRENT_BUILDTREES_DIR}/src/live/UsageEnvironment/include/*.hh"
+)
+if(DLLS)
+ file(INSTALL ${DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}/bin)
+endif()
+file(INSTALL ${LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
+if(DEBUG_DLLS)
+ file(INSTALL ${DEBUG_DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin)
+endif()
+file(INSTALL ${DEBUG_LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
+file(INSTALL ${HEADERS} DESTINATION ${CURRENT_PACKAGES_DIR}/include)
+file(INSTALL ${CURRENT_BUILDTREES_DIR}/src/live/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/live555 RENAME copyright)
+
+vcpkg_copy_pdbs()
diff --git a/ports/live555/proxyServer.txt b/ports/live555/proxyServer.txt
new file mode 100644
index 000000000..69677848e
--- /dev/null
+++ b/ports/live555/proxyServer.txt
@@ -0,0 +1,17 @@
+# CMakeLists.txt proxyServer directory
+
+# source files for proxyServer
+SET(PROXY_SERVER_SRCS
+live555ProxyServer.cpp
+)
+
+ADD_EXECUTABLE(proxyServer ${PROXY_SERVER_SRCS})
+TARGET_LINK_LIBRARIES(
+proxyServer
+BasicUsageEnvironment
+groupsock
+liveMedia
+UsageEnvironment
+ws2_32
+winmm
+)
diff --git a/ports/live555/testProgs.txt b/ports/live555/testProgs.txt
new file mode 100644
index 000000000..ea9307069
--- /dev/null
+++ b/ports/live555/testProgs.txt
@@ -0,0 +1,114 @@
+# CMakeLists.txt testProgs directory
+
+# headers
+SET(COMMON_HDRS
+playCommon.hh
+)
+
+# source files for MediaPreEncoderServer
+SET(OPEN_RTSP_SRCS
+openRTSP.cpp
+playCommon.cpp
+)
+
+SET(PLAY_SIP_SRCS
+playCommon.cpp
+playSIP.cpp
+)
+
+SET(TEST_AMR_AUDIO_STREAMER_SRCS
+testAMRAudioStreamer.cpp
+)
+
+SET(TEST_H264_VIDEO_STREAMER_SRCS
+testH264VideoStreamer.cpp
+)
+
+SET(TEST_H265_VIDEO_STREAMER_SRCS
+testH265VideoStreamer.cpp
+)
+
+SET(ON_DEMAND_RTSP_SERVER_SRCS
+testOnDemandRTSPServer.cpp
+)
+
+SET(TEST_RTSP_CLIENT_SRCS
+testRTSPClient.cpp
+)
+
+ADD_EXECUTABLE(openRTSP ${COMMON_HDRS} ${OPEN_RTSP_SRCS})
+TARGET_LINK_LIBRARIES(
+openRTSP
+BasicUsageEnvironment
+groupsock
+liveMedia
+UsageEnvironment
+ws2_32
+winmm
+)
+
+ADD_EXECUTABLE(playSip ${COMMON_HDRS} ${PLAY_SIP_SRCS})
+TARGET_LINK_LIBRARIES(
+playSip
+BasicUsageEnvironment
+groupsock
+liveMedia
+UsageEnvironment
+ws2_32
+winmm
+)
+
+ADD_EXECUTABLE(testAmrAudioStreamer ${COMMON_HDRS} ${TEST_AMR_AUDIO_STREAMER_SRCS})
+TARGET_LINK_LIBRARIES(
+testAmrAudioStreamer
+BasicUsageEnvironment
+groupsock
+liveMedia
+UsageEnvironment
+ws2_32
+winmm
+)
+
+ADD_EXECUTABLE(testH264VideoStreamer ${COMMON_HDRS} ${TEST_H264_VIDEO_STREAMER_SRCS})
+TARGET_LINK_LIBRARIES(
+testH264VideoStreamer
+BasicUsageEnvironment
+groupsock
+liveMedia
+UsageEnvironment
+ws2_32
+winmm
+)
+
+ADD_EXECUTABLE(testH265VideoStreamer ${COMMON_HDRS} ${TEST_H265_VIDEO_STREAMER_SRCS})
+TARGET_LINK_LIBRARIES(
+testH265VideoStreamer
+BasicUsageEnvironment
+groupsock
+liveMedia
+UsageEnvironment
+ws2_32
+winmm
+)
+
+ADD_EXECUTABLE(testOnDemandRTSPServer ${COMMON_HDRS} ${ON_DEMAND_RTSP_SERVER_SRCS})
+TARGET_LINK_LIBRARIES(
+testOnDemandRTSPServer
+BasicUsageEnvironment
+groupsock
+liveMedia
+UsageEnvironment
+ws2_32
+winmm
+)
+
+ADD_EXECUTABLE(testRTSPClient ${COMMON_HDRS} ${TEST_RTSP_CLIENT_SRCS})
+TARGET_LINK_LIBRARIES(
+testRTSPClient
+BasicUsageEnvironment
+groupsock
+liveMedia
+UsageEnvironment
+ws2_32
+winmm
+)
diff --git a/ports/openexr/CONTROL b/ports/openexr/CONTROL
new file mode 100644
index 000000000..1ce905777
--- /dev/null
+++ b/ports/openexr/CONTROL
@@ -0,0 +1,4 @@
+Source: openexr
+Version: 2.2.0
+Description: OpenEXR is a high dynamic-range (HDR) image file format developed by Industrial Light & Magic for use in computer imaging applications
+Build-Depends: zlib, ilmbase
diff --git a/ports/openexr/add-missing-export.patch b/ports/openexr/add-missing-export.patch
new file mode 100644
index 000000000..c78842d18
--- /dev/null
+++ b/ports/openexr/add-missing-export.patch
@@ -0,0 +1,13 @@
+diff --git a/IlmImf/ImfHeader.h b/IlmImf/ImfHeader.h
+index 756a62e..dd71e0e 100644
+--- a/IlmImf/ImfHeader.h
++++ b/IlmImf/ImfHeader.h
+@@ -493,7 +493,7 @@ class Header::ConstIterator
+ //
+ //------------------------------------------------------------------------
+
+-void staticInitialize ();
++IMF_EXPORT void staticInitialize ();
+
+
+ //-----------------
diff --git a/ports/openexr/portfile.cmake b/ports/openexr/portfile.cmake
new file mode 100644
index 000000000..1bcabc458
--- /dev/null
+++ b/ports/openexr/portfile.cmake
@@ -0,0 +1,54 @@
+set(OPENEXR_VERSION 2.2.0)
+set(OPENEXR_HASH 017abbeeb6b814508180721bc8e8940094965c4c55b135a198c6bcb109a04bf7f72e4aee81ee72cb2185fe818a41d892b383e8d2d59f40c673198948cb79279a)
+
+include(vcpkg_common_functions)
+set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/openexr-${OPENEXR_VERSION})
+vcpkg_download_distfile(ARCHIVE
+ URLS "http://download.savannah.nongnu.org/releases/openexr/openexr-${OPENEXR_VERSION}.tar.gz"
+ FILENAME "openexr-${OPENEXR_VERSION}.zip"
+ SHA512 ${OPENEXR_HASH})
+
+vcpkg_extract_source_archive(${ARCHIVE})
+vcpkg_apply_patches(SOURCE_PATH ${SOURCE_PATH}
+ PATCHES ${CMAKE_CURRENT_LIST_DIR}/add-missing-export.patch)
+
+# Ensure helper executables can run during build
+set(ENV{PATH} "$ENV{PATH};${CURRENT_INSTALLED_DIR}/bin")
+
+# In debug build buildsystem cannot locate IlmBase headers
+set(VCPKG_C_FLAGS_DEBUG "${VCPKG_C_FLAGS_DEBUG}")
+set(VCPKG_CXX_FLAGS_DEBUG "${VCPKG_CXX_FLAGS_DEBUG} -I\"${CURRENT_INSTALLED_DIR}/include/OpenExr\"")
+
+vcpkg_configure_cmake(SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+ OPTIONS_DEBUG
+ -DILMBASE_PACKAGE_PREFIX=${CURRENT_INSTALLED_DIR}/debug
+ OPTIONS_RELEASE
+ -DILMBASE_PACKAGE_PREFIX=${CURRENT_INSTALLED_DIR})
+
+vcpkg_install_cmake()
+
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share ${CURRENT_PACKAGES_DIR}/debug/share)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
+
+if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
+ foreach(SUBDIR "" "/debug")
+ file(GLOB DLLS ${CURRENT_PACKAGES_DIR}${SUBDIR}/lib/*.dll)
+ file(COPY ${DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}${SUBDIR}/bin)
+ file(REMOVE ${DLLS})
+ endforeach()
+endif()
+
+vcpkg_copy_pdbs()
+
+file(READ ${CURRENT_PACKAGES_DIR}/include/OpenEXR/ImfExport.h HEADER_FILE)
+if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
+ string(REPLACE "defined(OPENEXR_DLL)" "1" HEADER_FILE "${HEADER_FILE}")
+else()
+ string(REPLACE "defined(OPENEXR_DLL)" "0" HEADER_FILE "${HEADER_FILE}")
+endif()
+file(WRITE ${CURRENT_PACKAGES_DIR}/include/OpenEXR/ImfExport.h "${HEADER_FILE}")
+
+file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/openexr)
+file(RENAME ${CURRENT_PACKAGES_DIR}/share/openexr/LICENSE ${CURRENT_PACKAGES_DIR}/share/openexr/copyright)
diff --git a/scripts/templates/portfile.in.cmake b/scripts/templates/portfile.in.cmake
index 2ea430453..bc5f5fe07 100644
--- a/scripts/templates/portfile.in.cmake
+++ b/scripts/templates/portfile.in.cmake
@@ -1,7 +1,7 @@
# Common Ambient Variables:
# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT}
# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET}
-# CURRENT_PORT DIR = ${VCPKG_ROOT_DIR}\ports\${PORT}
+# CURRENT_PORT_DIR = ${VCPKG_ROOT_DIR}\ports\${PORT}
# PORT = current port name (zlib, etc)
# TARGET_TRIPLET = current triplet (x86-windows, x64-windows-static, etc)
# VCPKG_CRT_LINKAGE = C runtime linkage type (static, dynamic)
diff --git a/toolsrc/src/vcpkg_System.cpp b/toolsrc/src/vcpkg_System.cpp
index 21329e003..c91c6be78 100644
--- a/toolsrc/src/vcpkg_System.cpp
+++ b/toolsrc/src/vcpkg_System.cpp
@@ -142,6 +142,7 @@ namespace vcpkg::System
const std::wstring& actual_cmd_line = Strings::wformat(LR"###("%s 2>&1")###", cmd_line);
+ Debug::println("_wpopen(%s)", Strings::to_utf8(actual_cmd_line));
std::string output;
char buf[1024];
auto pipe = _wpopen(actual_cmd_line.c_str(), L"r");
@@ -158,6 +159,7 @@ namespace vcpkg::System
return {1, output};
}
auto ec = _pclose(pipe);
+ Debug::println("_wpopen() returned %d", ec);
return {ec, output};
}