From 1c796faf3e4893e30a9284d6537478dc8c6530a7 Mon Sep 17 00:00:00 2001 From: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> Date: Mon, 14 Oct 2019 16:34:34 -0700 Subject: [PATCH] [portaudio] Update to the latest version (#8399) * [portaudio] Update to the latest version * Update SHA512 hash code * Update source URL --- ports/portaudio/CONTROL | 6 +- ports/portaudio/cmakelists-install.patch | 11 -- .../portaudio/crt_linkage_build_config.patch | 61 ---------- ports/portaudio/find_dsound.patch | 114 ------------------ ports/portaudio/pa_win_waveformat.patch | 27 ----- ports/portaudio/portfile.cmake | 19 +-- ports/portaudio/wasapi_support.patch | 11 -- 7 files changed, 9 insertions(+), 240 deletions(-) delete mode 100644 ports/portaudio/cmakelists-install.patch delete mode 100644 ports/portaudio/crt_linkage_build_config.patch delete mode 100644 ports/portaudio/find_dsound.patch delete mode 100644 ports/portaudio/pa_win_waveformat.patch delete mode 100644 ports/portaudio/wasapi_support.patch diff --git a/ports/portaudio/CONTROL b/ports/portaudio/CONTROL index a60d59859..2337719bd 100644 --- a/ports/portaudio/CONTROL +++ b/ports/portaudio/CONTROL @@ -1,4 +1,4 @@ Source: portaudio -Version: 19.0.6.00-5 -Homepage: https://www.portaudio.com/ -Description: PortAudio Portable Cross-platform Audio I/O API PortAudio is a free, cross-platform, open-source, audio I/O library. It lets you write simple audio programs in 'C' or C++ that will compile and run on many platforms including Windows, Macintosh OS X, and Unix (OSS/ALSA). It is intended to promote the exchange of audio software between developers on different platforms. Many applications use PortAudio for Audio I/O. +Version: 2019-09-30 +Homepage: https://app.assembla.com/spaces/portaudio/wiki +Description: PortAudio Portable Cross-platform Audio I/O API PortAudio is a free, cross-platform, open-source, audio I/O library. It lets you write simple audio programs in 'C' or C++ that will compile and run on many platforms including Windows, Macintosh OS X, and Unix (OSS/ALSA). It is intended to promote the exchange of audio software between developers on different platforms. Many applications use PortAudio for Audio I/O. \ No newline at end of file diff --git a/ports/portaudio/cmakelists-install.patch b/ports/portaudio/cmakelists-install.patch deleted file mode 100644 index 88c95260d..000000000 --- a/ports/portaudio/cmakelists-install.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -372,6 +372,8 @@ - ENDIF() - SET_TARGET_PROPERTIES(portaudio PROPERTIES OUTPUT_NAME portaudio_${TARGET_POSTFIX} FOLDER "Portaudio") - SET_TARGET_PROPERTIES(portaudio_static PROPERTIES OUTPUT_NAME portaudio_static_${TARGET_POSTFIX} FOLDER "Portaudio") -+ INSTALL(FILES ${PA_PUBLIC_INCLUDES} DESTINATION include) -+ INSTALL(TARGETS portaudio portaudio_static RUNTIME DESTINATION bin ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) - ELSE() - IF(APPLE AND CMAKE_VERSION VERSION_GREATER 3.4.2) - OPTION(PA_OUTPUT_OSX_FRAMEWORK "Generate an OS X framework instead of the simple library" OFF) diff --git a/ports/portaudio/crt_linkage_build_config.patch b/ports/portaudio/crt_linkage_build_config.patch deleted file mode 100644 index b1cef3014..000000000 --- a/ports/portaudio/crt_linkage_build_config.patch +++ /dev/null @@ -1,61 +0,0 @@ ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -10,32 +10,32 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.8) - # project. If this is part of a larger project (i.e. the CMakeLists.txt has - # been imported by some other CMakeLists.txt), we don't want to trump over - # the top of that project's global settings. --IF(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_LIST_DIR}) -- IF(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) -- MESSAGE(STATUS "Setting CMAKE_BUILD_TYPE type to 'Debug' as none was specified.") -- SET(CMAKE_BUILD_TYPE Debug CACHE STRING "Choose the type of build." FORCE) -- SET_PROPERTY(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release") -- ENDIF() -- -- PROJECT(portaudio) -- -- SET_PROPERTY(GLOBAL PROPERTY USE_FOLDERS ON) -- -- IF(WIN32 AND MSVC) -- OPTION(PA_DLL_LINK_WITH_STATIC_RUNTIME "Link with static runtime libraries (minimizes runtime dependencies)" ON) -- IF(PA_DLL_LINK_WITH_STATIC_RUNTIME) -- FOREACH(flag_var -- CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE -- CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO -- CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE -- CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO) -- IF(${flag_var} MATCHES "/MD") -- STRING(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}") -- ENDIF() -- ENDFOREACH() -- ENDIF() -- ENDIF() --ENDIF() -+# IF(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_LIST_DIR}) -+ # IF(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) -+ # MESSAGE(STATUS "Setting CMAKE_BUILD_TYPE type to 'Debug' as none was specified.") -+ # SET(CMAKE_BUILD_TYPE Debug CACHE STRING "Choose the type of build." FORCE) -+ # SET_PROPERTY(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release") -+ # ENDIF() -+ -+ # PROJECT(portaudio) -+ -+ # SET_PROPERTY(GLOBAL PROPERTY USE_FOLDERS ON) -+ -+ # IF(WIN32 AND MSVC) -+ # OPTION(PA_DLL_LINK_WITH_STATIC_RUNTIME "Link with static runtime libraries (minimizes runtime dependencies)" ON) -+ # IF(PA_DLL_LINK_WITH_STATIC_RUNTIME) -+ # FOREACH(flag_var -+ # CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE -+ # CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO -+ # CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE -+ # CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO) -+ # IF(${flag_var} MATCHES "/MD") -+ # STRING(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}") -+ # ENDIF() -+ # ENDFOREACH() -+ # ENDIF() -+ # ENDIF() -+# ENDIF() - - SET(PA_PKGCONFIG_VERSION 19) - diff --git a/ports/portaudio/find_dsound.patch b/ports/portaudio/find_dsound.patch deleted file mode 100644 index be82b5641..000000000 --- a/ports/portaudio/find_dsound.patch +++ /dev/null @@ -1,114 +0,0 @@ ---- a/cmake_support/FindDXSDK.cmake -+++ b/cmake_support/FindDXSDK.cmake -@@ -16,44 +16,70 @@ else(WIN32) - message(FATAL_ERROR "FindDXSDK.cmake: Unsupported platform ${CMAKE_SYSTEM_NAME}" ) - endif(WIN32) - --find_path(DXSDK_ROOT_DIR -- include/dxsdkver.h -- HINTS -- $ENV{DXSDK_DIR} --) -- --find_path(DXSDK_INCLUDE_DIR -- dxsdkver.h -- PATHS -- ${DXSDK_ROOT_DIR}/include --) -- --IF(CMAKE_CL_64) --find_path(DXSDK_LIBRARY_DIR -- dsound.lib -- PATHS -- ${DXSDK_ROOT_DIR}/lib/x64 --) --ELSE(CMAKE_CL_64) --find_path(DXSDK_LIBRARY_DIR -- dsound.lib -- PATHS -- ${DXSDK_ROOT_DIR}/lib/x86 --) --ENDIF(CMAKE_CL_64) -- --find_library(DXSDK_DSOUND_LIBRARY -- dsound.lib -- PATHS -- ${DXSDK_LIBRARY_DIR} --) -- --# handle the QUIETLY and REQUIRED arguments and set DXSDK_FOUND to TRUE if --# all listed variables are TRUE --INCLUDE(FindPackageHandleStandardArgs) --FIND_PACKAGE_HANDLE_STANDARD_ARGS(DXSDK DEFAULT_MSG DXSDK_ROOT_DIR DXSDK_INCLUDE_DIR) -- --MARK_AS_ADVANCED( -- DXSDK_ROOT_DIR DXSDK_INCLUDE_DIR -- DXSDK_LIBRARY_DIR DXSDK_DSOUND_LIBRARY --) -+# Dsound.lib is statically linked (i.e. dsound.dll not required) and DXSDK_LIBRARY_DIR not used. -+# In the environments supported by VCPKG we may as well avoid looking out for DX9 to avoid version -+# mismatch in find. -+ -+if(MSVC AND MSVC_VERSION GREATER_EQUAL 1900) -+ -+ # if the environment is set up properly, matching lib and header will be found -+ -+ find_path(DXSDK_INCLUDE_DIR -+ dsound.h -+ ) -+ find_library(DXSDK_DSOUND_LIBRARY -+ dsound.lib -+ ) -+ -+ INCLUDE(FindPackageHandleStandardArgs) -+ FIND_PACKAGE_HANDLE_STANDARD_ARGS(DXSDK DEFAULT_MSG DXSDK_INCLUDE_DIR DXSDK_DSOUND_LIBRARY) -+ -+ MARK_AS_ADVANCED( -+ DXSDK_INCLUDE_DIR DXSDK_DSOUND_LIBRARY -+ ) -+ -+else() -+ -+ find_path(DXSDK_ROOT_DIR -+ include/dxsdkver.h -+ HINTS -+ $ENV{DXSDK_DIR} -+ ) -+ -+ find_path(DXSDK_INCLUDE_DIR -+ dxsdkver.h -+ HINTS -+ ${DXSDK_ROOT_DIR}/include -+ ) -+ -+ IF(CMAKE_CL_64) -+ find_path(DXSDK_LIBRARY_DIR -+ dsound.lib -+ HINTS -+ ${DXSDK_ROOT_DIR}/lib/x64 -+ ) -+ ELSE(CMAKE_CL_64) -+ find_path(DXSDK_LIBRARY_DIR -+ dsound.lib -+ HINTS -+ ${DXSDK_ROOT_DIR}/lib/x86 -+ ) -+ ENDIF(CMAKE_CL_64) -+ -+ find_library(DXSDK_DSOUND_LIBRARY -+ dsound.lib -+ HINTS -+ ${DXSDK_LIBRARY_DIR} -+ ) -+ -+ # handle the QUIETLY and REQUIRED arguments and set DXSDK_FOUND to TRUE if -+ # all listed variables are TRUE -+ INCLUDE(FindPackageHandleStandardArgs) -+ FIND_PACKAGE_HANDLE_STANDARD_ARGS(DXSDK DEFAULT_MSG DXSDK_ROOT_DIR DXSDK_INCLUDE_DIR) -+ -+ MARK_AS_ADVANCED( -+ DXSDK_ROOT_DIR DXSDK_INCLUDE_DIR -+ DXSDK_LIBRARY_DIR DXSDK_DSOUND_LIBRARY -+ ) -+ -+endif() diff --git a/ports/portaudio/pa_win_waveformat.patch b/ports/portaudio/pa_win_waveformat.patch deleted file mode 100644 index cba073947..000000000 --- a/ports/portaudio/pa_win_waveformat.patch +++ /dev/null @@ -1,27 +0,0 @@ -From fa727918e9e56c2a18dbdcfd276c60ac616c56ba Mon Sep 17 00:00:00 2001 -From: Etienne Dechamps -Date: Sat, 27 Oct 2018 15:14:27 +0100 -Subject: [PATCH] Add pa_win_waveformat.h to public includes. - -pa_win_wasapi.h includes pa_win_waveformat.h, so it has to be -distributed for pa_win_wasapi.h to be usable. ---- - CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 789671a..6a3ed8e 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -210,7 +210,7 @@ IF(WIN32) - IF(PA_USE_WASAPI) - SET(PA_WASAPI_SOURCES src/hostapi/wasapi/pa_win_wasapi.c) - SOURCE_GROUP("hostapi\\wasapi" FILES ${PA_WASAPI_SOURCES}) -- SET(PA_PUBLIC_INCLUDES ${PA_PUBLIC_INCLUDES} include/pa_win_wasapi.h) -+ SET(PA_PUBLIC_INCLUDES ${PA_PUBLIC_INCLUDES} include/pa_win_wasapi.h include/pa_win_waveformat.h) - SET(PA_SOURCES ${PA_SOURCES} ${PA_WASAPI_SOURCES}) - SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} ole32 uuid) - IF(NOT MSVC) --- -2.14.1.windows.1 - diff --git a/ports/portaudio/portfile.cmake b/ports/portaudio/portfile.cmake index 6fcbdf437..ea356d5ae 100644 --- a/ports/portaudio/portfile.cmake +++ b/ports/portaudio/portfile.cmake @@ -1,19 +1,9 @@ include(vcpkg_common_functions) -vcpkg_download_distfile(ARCHIVE - URLS "http://www.portaudio.com/archives/pa_stable_v190600_20161030.tgz" - FILENAME "pa_stable_v190600_20161030.tgz" - SHA512 7ec692cbd8c23878b029fad9d9fd63a021f57e60c4921f602995a2fca070c29f17a280c7f2da5966c4aad29d28434538452f4c822eacf3a60af59a6dc8e9704c -) -vcpkg_extract_source_archive_ex( +vcpkg_from_git( OUT_SOURCE_PATH SOURCE_PATH - ARCHIVE ${ARCHIVE} - PATCHES - cmakelists-install.patch - find_dsound.patch - wasapi_support.patch - crt_linkage_build_config.patch - pa_win_waveformat.patch + URL https://git.assembla.com/portaudio.git + REF c5d2c51bd6fe354d0ee1119ba932bfebd3ebfacc ) # NOTE: the ASIO backend will be built automatically if the ASIO-SDK is provided @@ -49,6 +39,8 @@ if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStor file (REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) endif () endif () + +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/${PORT}) vcpkg_copy_pdbs() # Handle copyright @@ -56,3 +48,4 @@ file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/p file(RENAME ${CURRENT_PACKAGES_DIR}/share/portaudio/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/portaudio/copyright) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) \ No newline at end of file diff --git a/ports/portaudio/wasapi_support.patch b/ports/portaudio/wasapi_support.patch deleted file mode 100644 index 0ff8a2134..000000000 --- a/ports/portaudio/wasapi_support.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/CMakeLists_org.txt -+++ b/CMakeLists.txt -@@ -200,7 +200,7 @@ - SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} ole32 uuid) - ENDIF() - -- IF(MSVS) -+ IF(MSVC) - OPTION(PA_USE_WASAPI "Enable support for WASAPI" ON) - ELSE() - # I was unable to get WASAPI to compile outside of Visual Studio. If