aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLily <47812810+LilyWangL@users.noreply.github.com>2020-07-31 13:28:17 +0800
committerGitHub <noreply@github.com>2020-07-30 22:28:17 -0700
commit88343956059c4ec2f65d7a3ac26b5843c3fc984a (patch)
tree4b3efb94c9de54663070ae74ec31be838868fad3
parent8d09f42a046e5d4cdc2112d169534d375953e618 (diff)
downloadvcpkg-88343956059c4ec2f65d7a3ac26b5843c3fc984a.tar.gz
vcpkg-88343956059c4ec2f65d7a3ac26b5843c3fc984a.zip
[rtmidi] Fix configure CMakeLists.txt (#9221)
* [rtmidi] Fix configure CMakeLists.txt * [rtmidi] Rtmidi doesn't support "UWP" * [rtmidi] Disable RTMIDI_API_ALSA on Linux * [rtmidi] Update ci.baseline.txt * [rtmidi] Fix ci.baseline.txt conflicts * [rtmidi] Fix ci.baseline.txt conflicts * [rtmidi] Fix ci.baseline.txt conflicts * Update CONTROL * Update ci.baseline.txt * [rtmidi] Update ci.baseline.txt * [rtmidi] Require static library to avoid issues with CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS * Update portfile.cmake Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
-rw-r--r--ports/rtmidi/CMakeLists.txt27
-rw-r--r--ports/rtmidi/CONTROL2
-rw-r--r--ports/rtmidi/portfile.cmake21
3 files changed, 16 insertions, 34 deletions
diff --git a/ports/rtmidi/CMakeLists.txt b/ports/rtmidi/CMakeLists.txt
deleted file mode 100644
index 91782fd18..000000000
--- a/ports/rtmidi/CMakeLists.txt
+++ /dev/null
@@ -1,27 +0,0 @@
-cmake_minimum_required(VERSION 3.8)
-project(rtmidi CXX)
-
-add_library(rtmidi RtMidi.cpp rtmidi_c.cpp)
-if(BUILD_SHARED_LIBS)
- target_compile_definitions(rtmidi PRIVATE -DRTMIDI_EXPORT)
-endif()
-
-file(READ "${PROJECT_SOURCE_DIR}/rtmidi_c.h" RTMIDI_EXPORT)
-if (BUILD_SHARED_LIBS)
- string(REPLACE "if defined(RTMIDI_EXPORT)" "if 1" RTMIDI_EXPORT "${RTMIDI_EXPORT}")
-else()
- string(REPLACE "if defined(RTMIDI_EXPORT)" "if 0" RTMIDI_EXPORT "${RTMIDI_EXPORT}")
-endif()
-file(WRITE "${PROJECT_BINARY_DIR}/rtmidi_c.h" "${RTMIDI_EXPORT}")
-
-install(
- TARGETS rtmidi
- RUNTIME DESTINATION bin
- LIBRARY DESTINATION lib
- ARCHIVE DESTINATION lib
-)
-
-if(NOT DISABLE_INSTALL_HEADERS)
- install(FILES "RtMidi.h" DESTINATION include)
- install(FILES "${PROJECT_BINARY_DIR}/rtmidi_c.h" DESTINATION include)
-endif()
diff --git a/ports/rtmidi/CONTROL b/ports/rtmidi/CONTROL
index 3742ec9b1..7c2c39f2a 100644
--- a/ports/rtmidi/CONTROL
+++ b/ports/rtmidi/CONTROL
@@ -1,4 +1,6 @@
Source: rtmidi
Version: 4.0.0
+Port-Version: 2
Homepage: https://github.com/thestk/rtmidi
Description: A set of C++ classes that provide a common API for realtime MIDI input/output across Linux (ALSA & JACK), Macintosh OS X (CoreMidi & JACK) and Windows (Multimedia)
+Supports: !uwp
diff --git a/ports/rtmidi/portfile.cmake b/ports/rtmidi/portfile.cmake
index 8aa949b5a..4a9fccbcc 100644
--- a/ports/rtmidi/portfile.cmake
+++ b/ports/rtmidi/portfile.cmake
@@ -1,22 +1,29 @@
-include(vcpkg_common_functions)
+vcpkg_fail_port_install(ON_TARGET "UWP")
+
+# Upstream uses CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS, which causes issues
+# https://github.com/thestk/rtmidi/blob/4.0.0/CMakeLists.txt#L20
+vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO thestk/rtmidi
- REF 4.0.0
- SHA512 39383f121320c9471b31f8b9d283167bfadf4c7328b6664d1d54a4c52e3dd9b76362875258d90363c6044e87fcee31ccce80e19435dc620c88e6d60fc82d0f9d
+ REF dda792c5394375769466ab1c1d7773e741bbd950 # 4.0.0
+ SHA512 cb1ded29c0b22cf7f38719131a9572a4daba7071fd8cf8b5b8d7306560a218bb0ef42150bf341b76f4ddee0ae087da975116c3b153e7bb908f2a674ecacb9d7a
HEAD_REF master
- PATCHES
- fix-POSIXname.patch
+ PATCHES
+ fix-POSIXname.patch
)
-file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS_DEBUG -DDISABLE_INSTALL_HEADERS=ON
+ OPTIONS -DRTMIDI_API_ALSA=OFF
)
vcpkg_install_cmake()
+vcpkg_fixup_cmake_targets()
+
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
-file(INSTALL ${SOURCE_PATH}/README.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/rtmidi RENAME copyright)
+file(INSTALL ${SOURCE_PATH}/README.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)