diff options
| author | Be <be@mixxx.org> | 2021-08-05 03:23:41 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-08-05 03:23:41 -0700 |
| commit | 3ab8c7487451cc61c778258c92bd88dfe3c5f32e (patch) | |
| tree | 47716ff938617a81ea8b81e5a80248710c35361f | |
| parent | e7c01156600c7bbbcd33868af8fe16bf9c08948a (diff) | |
| download | vcpkg-3ab8c7487451cc61c778258c92bd88dfe3c5f32e.tar.gz vcpkg-3ab8c7487451cc61c778258c92bd88dfe3c5f32e.zip | |
[jack2] update to 1.9.19; install pkgconfig file; fix library name (#19270)
Also:
* allow dynamic linking by adding jack.def file
* replace deprecated vcpkg functions
* replace legacy CONTROL file with vcpkg.json
| -rw-r--r-- | ports/jack2/CMakeLists.txt | 35 | ||||
| -rw-r--r-- | ports/jack2/CONTROL | 6 | ||||
| -rw-r--r-- | ports/jack2/jack.def | 96 | ||||
| -rw-r--r-- | ports/jack2/portfile.cmake | 26 | ||||
| -rw-r--r-- | ports/jack2/vcpkg.json | 17 | ||||
| -rw-r--r-- | versions/baseline.json | 2 | ||||
| -rw-r--r-- | versions/j-/jack2.json | 5 |
7 files changed, 160 insertions, 27 deletions
diff --git a/ports/jack2/CMakeLists.txt b/ports/jack2/CMakeLists.txt index 2fb25edb8..6c46d8d91 100644 --- a/ports/jack2/CMakeLists.txt +++ b/ports/jack2/CMakeLists.txt @@ -1,14 +1,33 @@ -cmake_minimum_required(VERSION 3.8) -project(jack2 C) +cmake_minimum_required(VERSION 3.1) +project(jack VERSION 1.9 LANGUAGES C) include_directories(common) -add_library(jack2 STATIC common/JackWeakAPI.c) +add_library(jack common/JackWeakAPI.c) +if(WIN32 AND BUILD_SHARED_LIBS) + target_sources(jack PRIVATE jack.def) +endif() +target_link_libraries(jack PRIVATE ${CMAKE_DL_LIBS}) -install(TARGETS jack2 - RUNTIME DESTINATION bin - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib +include(GNUInstallDirs) +install(TARGETS jack + ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" + LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" + RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" ) -install(DIRECTORY common/jack DESTINATION include) +set(PREFIX "${CMAKE_INSTALL_PREFIX}") +set(LIBDIR "\${prefix}/${CMAKE_INSTALL_LIBDIR}") +set(INCLUDEDIR "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}") +set(JACK_VERSION "${CMAKE_PROJECT_VERSION}") +# JackWeak dynamically loads the real JACK library which requires linking CMAKE_DL_LIBS +if(CMAKE_DL_LIBS) + set(CLIENTLIB "jack -l${CMAKE_DL_LIBS}") +else() + set(CLIENTLIB "jack") +endif() +# NOTE: the server_libs variable will be broken but this port does not build the server anyway +configure_file(jack.pc.in "${CMAKE_CURRENT_BINARY_DIR}/jack.pc" @ONLY) +install(FILES "${CMAKE_CURRENT_BINARY_DIR}/jack.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig") + +install(DIRECTORY "common/jack" DESTINATION "include") diff --git a/ports/jack2/CONTROL b/ports/jack2/CONTROL deleted file mode 100644 index 3337ea212..000000000 --- a/ports/jack2/CONTROL +++ /dev/null @@ -1,6 +0,0 @@ -Source: jack2
-Version: 1.9.14
-Homepage: https://github.com/jackaudio/jack2
-Description: Cross-platform API that enables device sharing and inter-application audio routing
-Supports: !uwp
-
diff --git a/ports/jack2/jack.def b/ports/jack2/jack.def new file mode 100644 index 000000000..c542e5337 --- /dev/null +++ b/ports/jack2/jack.def @@ -0,0 +1,96 @@ +LIBRARY JACK + +EXPORTS + +;FIXME these are unimplemented +;jack_port_uuid +;jack_get_cycle_times + +jack_get_version +jack_get_version_string +jack_client_open +jack_client_new +jack_client_close +jack_client_name_size +jack_get_client_name +jack_get_uuid_for_client_name +jack_get_client_name_by_uuid +jack_internal_client_new +jack_internal_client_close +jack_activate +jack_deactivate +jack_client_thread_id +jack_is_realtime +jack_thread_wait +jack_cycle_wait +jack_cycle_signal +jack_set_process_thread +jack_set_thread_init_callback +jack_on_shutdown +jack_on_info_shutdown +jack_set_process_callback +jack_set_freewheel_callback +jack_set_buffer_size_callback +jack_set_sample_rate_callback +jack_set_client_registration_callback +jack_set_port_registration_callback +jack_set_port_connect_callback +jack_set_port_rename_callback +jack_set_graph_order_callback +jack_set_xrun_callback +jack_set_latency_callback +jack_set_freewheel +jack_set_buffer_size +jack_get_sample_rate +jack_get_buffer_size +jack_engine_takeover_timebase +jack_cpu_load +jack_port_register +jack_port_unregister +jack_port_get_buffer +jack_port_name +jack_port_short_name +jack_port_flags +jack_port_type +jack_port_type_id +jack_port_is_mine +jack_port_connected +jack_port_connected_to +jack_port_get_connections +jack_port_get_all_connections +jack_port_tie +jack_port_untie +jack_port_set_name +jack_port_rename +jack_port_set_alias +jack_port_unset_alias +jack_port_get_aliases +jack_port_request_monitor +jack_port_request_monitor_by_name +jack_port_ensure_monitor +jack_port_monitoring_input +jack_connect +jack_disconnect +jack_port_disconnect +jack_port_name_size +jack_port_type_size +jack_port_type_get_buffer_size +jack_port_set_latency +jack_port_get_latency_range +jack_port_set_latency_range +jack_recompute_total_latencies +jack_port_get_latency +jack_port_get_total_latency +jack_recompute_total_latency +jack_get_ports +jack_port_by_name +jack_port_by_id +jack_frames_since_cycle_start +jack_frame_time +jack_last_frame_time +jack_frames_to_time +jack_time_to_frames +jack_get_time +jack_set_error_function +jack_set_info_function +jack_free diff --git a/ports/jack2/portfile.cmake b/ports/jack2/portfile.cmake index 1c65a2167..f7319a2bf 100644 --- a/ports/jack2/portfile.cmake +++ b/ports/jack2/portfile.cmake @@ -1,25 +1,27 @@ vcpkg_fail_port_install(ON_TARGET "uwp") -vcpkg_check_linkage(ONLY_STATIC_LIBRARY) - vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO jackaudio/jack2 - REF b54a09bf7ef760d81fdb8544ad10e45575394624 # v1.9.14 - SHA512 a5f920ed1df71d9f5e3c4889ea2aa4d9ed9082d0b9070437a068e24a2caa5dffaa71b19352e9da056e9f23e930edab56816235ceb9293cc33d8870265f392c1d + REF v1.9.19 + SHA512 d8d5fe17e2984959546af3c53f044aa4648860e19ff8ffd54452e87fa6cdfd111f825c57e3df17cb8ed95de8392b6f354b12ded41e3e021a37f07b99a89ba18d HEAD_REF master ) -# Install headers and a statically built JackWeakAPI.c -file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) +# Install headers and a shim library with JackWeakAPI.c +file(COPY + "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" + "${CMAKE_CURRENT_LIST_DIR}/jack.def" + DESTINATION "${SOURCE_PATH}" +) -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" ) -vcpkg_install_cmake() +vcpkg_cmake_install() +vcpkg_fixup_pkgconfig() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") -file(INSTALL ${SOURCE_PATH}/README.rst DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +file(INSTALL "${SOURCE_PATH}/README.rst" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/jack2/vcpkg.json b/ports/jack2/vcpkg.json new file mode 100644 index 000000000..d10c200dd --- /dev/null +++ b/ports/jack2/vcpkg.json @@ -0,0 +1,17 @@ +{ + "name": "jack2", + "version-semver": "1.9.19", + "description": "Cross-platform API that enables device sharing and inter-application audio routing", + "homepage": "https://jackaudio.org/", + "supports": "!uwp", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} diff --git a/versions/baseline.json b/versions/baseline.json index 60a476e60..cf5bb0612 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -2765,7 +2765,7 @@ "port-version": 0 }, "jack2": { - "baseline": "1.9.14", + "baseline": "1.9.19", "port-version": 0 }, "jaeger-client-cpp": { diff --git a/versions/j-/jack2.json b/versions/j-/jack2.json index 9be1fdd14..4d9d85694 100644 --- a/versions/j-/jack2.json +++ b/versions/j-/jack2.json @@ -1,6 +1,11 @@ { "versions": [ { + "git-tree": "408805b50757c6f3e5585ca5fddf17df005dfb58", + "version-semver": "1.9.19", + "port-version": 0 + }, + { "git-tree": "a97592cbcb8260d6cae738bf5542f5895195c91b", "version-string": "1.9.14", "port-version": 0 |
