From e211345f89f4dad6117a77b84d8bd37509cff70a Mon Sep 17 00:00:00 2001 From: cat Date: Wed, 3 Sep 2025 07:12:14 +0300 Subject: [PATCH] Put fillers to empty files for now --- CMakeLists.txt | 58 ++++++++++++++++++++++++++++++++++++++ ChargeAudioConfig.cmake.in | 6 ++++ src/Audio.cpp | 3 ++ src/ChargeAudio.hpp | 1 + 4 files changed, 68 insertions(+) create mode 100644 CMakeLists.txt create mode 100644 ChargeAudioConfig.cmake.in create mode 100644 src/Audio.cpp create mode 100644 src/ChargeAudio.hpp diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..d2a621f --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,58 @@ +cmake_minimum_required(VERSION 3.10) + +project(ChargeAudio VERSION 1.0) + +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_MODULE_PATH "modules/" ${CMAKE_MODULE_PATH}) +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall") +if(CMAKE_BUILD_TYPE STREQUAL "Debug") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -fsanitize=address") +endif() + +add_subdirectory(lib/miniaudio) + +find_package(Corrade REQUIRED Main) +find_package(Magnum REQUIRED) +find_package(PkgConfig REQUIRED) +pkg_check_modules(AVFORMAT REQUIRED libavformat) +pkg_check_modules(AVCODEC REQUIRED libavcodec) +pkg_check_modules(AVUTIL REQUIRED libavutil) +pkg_check_modules(SWRESAMPLE REQUIRED libswresample) + +add_library(ChargeAudio SHARED "src/ChargeAudio.hpp" "src/Audio.cpp") + +target_link_libraries( + ChargeAudio + PRIVATE Corrade::Main Magnum::Magnum ${AVFORMAT_LIBRARIES} + ${AVCODEC_LIBRARIES} ${AVUTIL_LIBRARIES} ${SWRESAMPLE_LIBRARIES}) + +target_include_directories( + ChargeAudio PUBLIC $ + $) + +# Library +install( + TARGETS ChargeAudio + EXPORT ChargeAudioTargets + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib + RUNTIME DESTINATION bin) + +# include +install(FILES src/ChargeAudio.hpp DESTINATION include/Charge) + +install( + EXPORT ChargeAudioTargets + FILE ChargeAudioTargets.cmake + NAMESPACE ChargeAudio:: + DESTINATION lib/cmake/ChargeAudio) + +include(CMakePackageConfigHelpers) + +configure_package_config_file( + ${CMAKE_CURRENT_SOURCE_DIR}/ChargeAudioConfig.cmake.in + "${CMAKE_CURRENT_BINARY_DIR}/ChargeAudioConfig.cmake" + INSTALL_DESTINATION lib/cmake/ChargeAudio) + +install(FILES "${CMAKE_CURRENT_BINARY_DIR}/ChargeAudioConfig.cmake" + DESTINATION lib/cmake/ChargeAudio) diff --git a/ChargeAudioConfig.cmake.in b/ChargeAudioConfig.cmake.in new file mode 100644 index 0000000..0aa5709 --- /dev/null +++ b/ChargeAudioConfig.cmake.in @@ -0,0 +1,6 @@ +@PACKAGE_INIT@ + +include("${CMAKE_CURRENT_LIST_DIR}/ChargeAudioTargets.cmake") +message(STATUS "Found ChargeAudio!") + +check_required_components(ChargeAudio) diff --git a/src/Audio.cpp b/src/Audio.cpp new file mode 100644 index 0000000..ec5455c --- /dev/null +++ b/src/Audio.cpp @@ -0,0 +1,3 @@ +#include "ChargeAudio.hpp" + +int placeHolder() { return 0; } diff --git a/src/ChargeAudio.hpp b/src/ChargeAudio.hpp new file mode 100644 index 0000000..a4c4cf3 --- /dev/null +++ b/src/ChargeAudio.hpp @@ -0,0 +1 @@ +int placeHolder();