diff options
Diffstat (limited to 'vcpkg/ports/jack2')
| -rw-r--r-- | vcpkg/ports/jack2/CMakeLists.txt | 33 | ||||
| -rw-r--r-- | vcpkg/ports/jack2/jack.def | 104 | ||||
| -rw-r--r-- | vcpkg/ports/jack2/portfile.cmake | 25 | ||||
| -rw-r--r-- | vcpkg/ports/jack2/vcpkg.json | 18 |
4 files changed, 180 insertions, 0 deletions
diff --git a/vcpkg/ports/jack2/CMakeLists.txt b/vcpkg/ports/jack2/CMakeLists.txt new file mode 100644 index 0000000..6c46d8d --- /dev/null +++ b/vcpkg/ports/jack2/CMakeLists.txt @@ -0,0 +1,33 @@ +cmake_minimum_required(VERSION 3.1) +project(jack VERSION 1.9 LANGUAGES C) + +include_directories(common) + +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}) + +include(GNUInstallDirs) +install(TARGETS jack + ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" + LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" + RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" +) + +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/vcpkg/ports/jack2/jack.def b/vcpkg/ports/jack2/jack.def new file mode 100644 index 0000000..5c2d48e --- /dev/null +++ b/vcpkg/ports/jack2/jack.def @@ -0,0 +1,104 @@ +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 +jack_midi_get_event_count +jack_midi_event_get +jack_midi_clear_buffer +jack_midi_max_event_size +jack_midi_event_reserve +jack_midi_event_write +jack_midi_get_lost_event_count + diff --git a/vcpkg/ports/jack2/portfile.cmake b/vcpkg/ports/jack2/portfile.cmake new file mode 100644 index 0000000..cc25416 --- /dev/null +++ b/vcpkg/ports/jack2/portfile.cmake @@ -0,0 +1,25 @@ +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO jackaudio/jack2 + REF "v${VERSION}" + SHA512 d93cb2bcc57b72b6815eed143de1092d14fe22542ae9a1f8480d9ed5f44b59c50f81279d18bdd84ff6276ddd71ca1aa64a1e46d61199a5eda0d873a356194ab4 + HEAD_REF master +) + +# 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_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" +) + +vcpkg_cmake_install() +vcpkg_fixup_pkgconfig() + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") + +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/COPYING") diff --git a/vcpkg/ports/jack2/vcpkg.json b/vcpkg/ports/jack2/vcpkg.json new file mode 100644 index 0000000..443204d --- /dev/null +++ b/vcpkg/ports/jack2/vcpkg.json @@ -0,0 +1,18 @@ +{ + "name": "jack2", + "version-semver": "1.9.22", + "description": "Cross-platform API that enables device sharing and inter-application audio routing", + "homepage": "https://jackaudio.org/", + "license": "GPL-2.0", + "supports": "!uwp", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} |