From ebd8a65d271a3b7e2b6d255929ef99051c4cb076 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean-Micha=C3=ABl=20Celerier?= Date: Mon, 13 Jan 2025 20:21:43 -0500 Subject: [PATCH] python: build fixes --- bindings/python/CMakeLists.txt | 2 +- bindings/python/pylibremidi.cpp | 8 ++++---- cmake/libremidi.library.cmake | 1 + 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/bindings/python/CMakeLists.txt b/bindings/python/CMakeLists.txt index 7c29b28..f914daa 100644 --- a/bindings/python/CMakeLists.txt +++ b/bindings/python/CMakeLists.txt @@ -13,4 +13,4 @@ FetchContent_Declare( FetchContent_MakeAvailable(nanobind) nanobind_add_module(pylibremidi pylibremidi.cpp) -target_link_libraries(pylibremidi PRIVATE libremidi) +target_link_libraries(pylibremidi PUBLIC libremidi) diff --git a/bindings/python/pylibremidi.cpp b/bindings/python/pylibremidi.cpp index dae6353..76cc0e3 100644 --- a/bindings/python/pylibremidi.cpp +++ b/bindings/python/pylibremidi.cpp @@ -52,7 +52,7 @@ struct observer_poll_wrapper { observer observer; explicit observer_poll_wrapper(observer_configuration conf = {}) noexcept : conf{conf}, observer{this->process(std::move(conf))} {} - explicit observer_poll_wrapper(observer_configuration conf, std::any api_conf) : conf{conf}, observer{process(std::move(conf)), std::move(api_conf)} {} + explicit observer_poll_wrapper(observer_configuration conf, libremidi::observer_api_configuration api_conf) : conf{conf}, observer{process(std::move(conf)), std::move(api_conf)} {} observer_configuration process(observer_configuration &&obs) { if (obs.on_error) @@ -94,9 +94,9 @@ struct midi_in_poll_wrapper { midi_in midi_in; explicit midi_in_poll_wrapper(const input_configuration &conf) noexcept : orig_callbacks{conf}, midi_in{this->process(std::move(conf))} {} - explicit midi_in_poll_wrapper(input_configuration conf, std::any api_conf) : orig_callbacks{conf}, midi_in{this->process(std::move(conf)), std::move(api_conf)} {} + explicit midi_in_poll_wrapper(input_configuration conf, input_api_configuration api_conf) : orig_callbacks{conf}, midi_in{this->process(std::move(conf)), std::move(api_conf)} {} explicit midi_in_poll_wrapper(ump_input_configuration conf) noexcept : ump_callbacks{conf}, midi_in{this->process(std::move(conf))} {} - explicit midi_in_poll_wrapper(ump_input_configuration conf, std::any api_conf) : ump_callbacks{conf}, midi_in{this->process(std::move(conf)), std::move(api_conf)} {} + explicit midi_in_poll_wrapper(ump_input_configuration conf, input_api_configuration api_conf) : ump_callbacks{conf}, midi_in{this->process(std::move(conf)), std::move(api_conf)} {} input_configuration process(input_configuration obs) { orig_callbacks = obs; @@ -159,7 +159,7 @@ struct midi_out_poll_wrapper { explicit midi_out_poll_wrapper() noexcept : midi_out{} {} explicit midi_out_poll_wrapper(const output_configuration &conf) noexcept : orig_callbacks{conf}, midi_out{this->process(std::move(conf))} {} - explicit midi_out_poll_wrapper(output_configuration conf, std::any api_conf) : orig_callbacks{conf}, midi_out{this->process(std::move(conf)), std::move(api_conf)} {} + explicit midi_out_poll_wrapper(output_configuration conf, output_api_configuration api_conf) : orig_callbacks{conf}, midi_out{this->process(std::move(conf)), std::move(api_conf)} {} output_configuration process(output_configuration obs) { orig_callbacks = obs; diff --git a/cmake/libremidi.library.cmake b/cmake/libremidi.library.cmake index 6df4d4e..4053134 100644 --- a/cmake/libremidi.library.cmake +++ b/cmake/libremidi.library.cmake @@ -17,6 +17,7 @@ else() ) endif() add_library(libremidi::libremidi ALIAS libremidi) +target_compile_features(libremidi ${_public} cxx_std_${CMAKE_CXX_STANDARD}) ### Library configuration ### include(libremidi.warnings)