mirror of
https://github.com/microsoft/vcpkg.git
synced 2025-01-18 20:03:02 +08:00
[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
This commit is contained in:
parent
e7c0115660
commit
3ab8c74874
@ -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")
|
||||
|
@ -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
|
||||
|
96
ports/jack2/jack.def
Normal file
96
ports/jack2/jack.def
Normal file
@ -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
|
@ -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})
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
# 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_install_cmake()
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH "${SOURCE_PATH}"
|
||||
)
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
vcpkg_cmake_install()
|
||||
vcpkg_fixup_pkgconfig()
|
||||
|
||||
file(INSTALL ${SOURCE_PATH}/README.rst DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
||||
|
||||
file(INSTALL "${SOURCE_PATH}/README.rst" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
||||
|
17
ports/jack2/vcpkg.json
Normal file
17
ports/jack2/vcpkg.json
Normal file
@ -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
|
||||
}
|
||||
]
|
||||
}
|
@ -2765,7 +2765,7 @@
|
||||
"port-version": 0
|
||||
},
|
||||
"jack2": {
|
||||
"baseline": "1.9.14",
|
||||
"baseline": "1.9.19",
|
||||
"port-version": 0
|
||||
},
|
||||
"jaeger-client-cpp": {
|
||||
|
@ -1,5 +1,10 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"git-tree": "408805b50757c6f3e5585ca5fddf17df005dfb58",
|
||||
"version-semver": "1.9.19",
|
||||
"port-version": 0
|
||||
},
|
||||
{
|
||||
"git-tree": "a97592cbcb8260d6cae738bf5542f5895195c91b",
|
||||
"version-string": "1.9.14",
|
||||
|
Loading…
Reference in New Issue
Block a user