forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
6 changed files
with
332 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
DIST libsoundio-1.0.0.tar.gz 112139 SHA256 f05d87916266b6b32020c3e13b78ce9f3a758c43c8f8c8bbaf37578d99e1d3e2 SHA512 d0a0eda701d99ef658ee2858dbf4be2ec872d74bc1c9d05ed5484adcc17e774530c150fcd86cd1213a8dceb6373dfd3319a2c97c506ada0cdfe0f02551c0ddd0 WHIRLPOOL 1720e8eb64dc407a17dfbc9ccc8406184e0fa8c5bcc799553e5af181c9faebc0d0ba75fab0c8d9f6332fec6db1711ae9d6afe4be0e970fd5e9b526511b0a8965 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
From 85c219067579e299f9faddd2c24836cf96cc245b Mon Sep 17 00:00:00 2001 | ||
From: Andrew Kelley <[email protected]> | ||
Date: Thu, 3 Sep 2015 14:05:19 -0700 | ||
Subject: [PATCH] build: fix build on linux with clang | ||
|
||
closes #8 | ||
--- | ||
src/alsa.cpp | 4 ++-- | ||
1 file changed, 2 insertions(+), 2 deletions(-) | ||
|
||
diff --git a/src/alsa.cpp b/src/alsa.cpp | ||
index 18ef1de..8e779a6 100644 | ||
--- a/src/alsa.cpp | ||
+++ b/src/alsa.cpp | ||
@@ -1016,7 +1016,7 @@ static int instream_wait_for_poll(SoundIoInStreamPrivate *is) { | ||
} | ||
} | ||
|
||
-void outstream_thread_run(void *arg) { | ||
+static void outstream_thread_run(void *arg) { | ||
SoundIoOutStreamPrivate *os = (SoundIoOutStreamPrivate *) arg; | ||
SoundIoOutStream *outstream = &os->pub; | ||
SoundIoOutStreamAlsa *osa = &os->backend_data.alsa; | ||
@@ -1367,7 +1367,7 @@ static int outstream_start_alsa(SoundIoPrivate *si, SoundIoOutStreamPrivate *os) | ||
return 0; | ||
} | ||
|
||
-int outstream_begin_write_alsa(SoundIoPrivate *si, SoundIoOutStreamPrivate *os, | ||
+static int outstream_begin_write_alsa(SoundIoPrivate *si, SoundIoOutStreamPrivate *os, | ||
struct SoundIoChannelArea **out_areas, int *frame_count) | ||
{ | ||
*out_areas = nullptr; |
182 changes: 182 additions & 0 deletions
182
media-libs/libsoundio/files/libsoundio-1.0.0_examples_tests.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,182 @@ | ||
From a3dd080fda5a3581de0602b5887cda87dca2a915 Mon Sep 17 00:00:00 2001 | ||
From: hasufell <[email protected]> | ||
Date: Sat, 5 Sep 2015 14:07:22 +0200 | ||
Subject: [PATCH] Make building examples and tests optional | ||
|
||
--- | ||
CMakeLists.txt | 136 +++++++++++++++++++++++++++++++-------------------------- | ||
1 file changed, 74 insertions(+), 62 deletions(-) | ||
|
||
diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
index c109af4..7fa8247 100644 | ||
--- a/CMakeLists.txt | ||
+++ b/CMakeLists.txt | ||
@@ -25,6 +25,8 @@ set(LIBSOUNDIO_VERSION "${LIBSOUNDIO_VERSION_MAJOR}.${LIBSOUNDIO_VERSION_MINOR}. | ||
message("Configuring libsoundio version ${LIBSOUNDIO_VERSION}") | ||
|
||
option(BUILD_STATIC_LIBS "Build static libraries" ON) | ||
+option(BUILD_EXAMPLE_PROGRAMS "Build example programs" ON) | ||
+option(BUILD_TESTS "Build tests" ON) | ||
option(ENABLE_JACK "Enable JACK backend" ON) | ||
option(ENABLE_PULSEAUDIO "Enable PulseAudio backend" ON) | ||
option(ENABLE_ALSA "Enable ALSA backend" ON) | ||
@@ -254,80 +256,88 @@ install(FILES | ||
|
||
# Example Programs | ||
|
||
-add_executable(sio_sine example/sio_sine.c) | ||
-set_target_properties(sio_sine PROPERTIES | ||
- LINKER_LANGUAGE C | ||
- COMPILE_FLAGS ${EXAMPLE_CFLAGS}) | ||
-target_link_libraries(sio_sine libsoundio_shared) | ||
-install(TARGETS sio_sine DESTINATION ${CMAKE_INSTALL_BINDIR}) | ||
+if(BUILD_EXAMPLE_PROGRAMS) | ||
+ add_executable(sio_sine example/sio_sine.c) | ||
+ set_target_properties(sio_sine PROPERTIES | ||
+ LINKER_LANGUAGE C | ||
+ COMPILE_FLAGS ${EXAMPLE_CFLAGS}) | ||
+ target_link_libraries(sio_sine libsoundio_shared) | ||
+ install(TARGETS sio_sine DESTINATION ${CMAKE_INSTALL_BINDIR}) | ||
|
||
-add_executable(sio_list_devices example/sio_list_devices.c) | ||
-set_target_properties(sio_list_devices PROPERTIES | ||
- LINKER_LANGUAGE C | ||
- COMPILE_FLAGS ${EXAMPLE_CFLAGS}) | ||
-target_link_libraries(sio_list_devices libsoundio_shared) | ||
-install(TARGETS sio_list_devices DESTINATION ${CMAKE_INSTALL_BINDIR}) | ||
+ add_executable(sio_list_devices example/sio_list_devices.c) | ||
+ set_target_properties(sio_list_devices PROPERTIES | ||
+ LINKER_LANGUAGE C | ||
+ COMPILE_FLAGS ${EXAMPLE_CFLAGS}) | ||
+ target_link_libraries(sio_list_devices libsoundio_shared) | ||
+ install(TARGETS sio_list_devices DESTINATION ${CMAKE_INSTALL_BINDIR}) | ||
|
||
-add_executable(sio_microphone example/sio_microphone.c) | ||
-set_target_properties(sio_microphone PROPERTIES | ||
- LINKER_LANGUAGE C | ||
- COMPILE_FLAGS ${EXAMPLE_CFLAGS}) | ||
-target_link_libraries(sio_microphone libsoundio_shared) | ||
-install(TARGETS sio_microphone DESTINATION ${CMAKE_INSTALL_BINDIR}) | ||
+ add_executable(sio_microphone example/sio_microphone.c) | ||
+ set_target_properties(sio_microphone PROPERTIES | ||
+ LINKER_LANGUAGE C | ||
+ COMPILE_FLAGS ${EXAMPLE_CFLAGS}) | ||
+ target_link_libraries(sio_microphone libsoundio_shared) | ||
+ install(TARGETS sio_microphone DESTINATION ${CMAKE_INSTALL_BINDIR}) | ||
|
||
-add_executable(sio_record example/sio_record.c) | ||
-set_target_properties(sio_record PROPERTIES | ||
- LINKER_LANGUAGE C | ||
- COMPILE_FLAGS ${EXAMPLE_CFLAGS}) | ||
-target_link_libraries(sio_record libsoundio_shared) | ||
-install(TARGETS sio_record DESTINATION ${CMAKE_INSTALL_BINDIR}) | ||
+ add_executable(sio_record example/sio_record.c) | ||
+ set_target_properties(sio_record PROPERTIES | ||
+ LINKER_LANGUAGE C | ||
+ COMPILE_FLAGS ${EXAMPLE_CFLAGS}) | ||
+ target_link_libraries(sio_record libsoundio_shared) | ||
+ install(TARGETS sio_record DESTINATION ${CMAKE_INSTALL_BINDIR}) | ||
+endif() | ||
|
||
+if(BUILD_TESTS) | ||
+ include_directories( | ||
+ "${CMAKE_SOURCE_DIR}/test" | ||
+ ) | ||
|
||
-add_executable(unit_tests "${CMAKE_SOURCE_DIR}/test/unit_tests.cpp" ${LIBSOUNDIO_SOURCES}) | ||
-target_link_libraries(unit_tests LINK_PUBLIC ${LIBSOUNDIO_LIBS}) | ||
-set_target_properties(unit_tests PROPERTIES | ||
- LINKER_LANGUAGE C | ||
- COMPILE_FLAGS ${TEST_CFLAGS} | ||
- LINK_FLAGS ${TEST_LDFLAGS} | ||
-) | ||
+ add_executable(unit_tests "${CMAKE_SOURCE_DIR}/test/unit_tests.cpp" ${LIBSOUNDIO_SOURCES}) | ||
+ target_link_libraries(unit_tests LINK_PUBLIC ${LIBSOUNDIO_LIBS}) | ||
+ set_target_properties(unit_tests PROPERTIES | ||
+ LINKER_LANGUAGE C | ||
+ COMPILE_FLAGS ${TEST_CFLAGS} | ||
+ LINK_FLAGS ${TEST_LDFLAGS} | ||
+ ) | ||
|
||
-add_executable(latency "${CMAKE_SOURCE_DIR}/test/latency.cpp" ${LIBSOUNDIO_SOURCES}) | ||
-target_link_libraries(latency LINK_PUBLIC ${LIBSOUNDIO_LIBS}) | ||
-set_target_properties(latency PROPERTIES | ||
- LINKER_LANGUAGE C | ||
- COMPILE_FLAGS ${LIB_CFLAGS} | ||
-) | ||
+ add_executable(latency "${CMAKE_SOURCE_DIR}/test/latency.cpp" ${LIBSOUNDIO_SOURCES}) | ||
+ target_link_libraries(latency LINK_PUBLIC ${LIBSOUNDIO_LIBS}) | ||
+ set_target_properties(latency PROPERTIES | ||
+ LINKER_LANGUAGE C | ||
+ COMPILE_FLAGS ${LIB_CFLAGS} | ||
+ ) | ||
|
||
-add_executable(underflow test/underflow.c) | ||
-set_target_properties(underflow PROPERTIES | ||
- LINKER_LANGUAGE C | ||
- COMPILE_FLAGS ${EXAMPLE_CFLAGS}) | ||
-target_link_libraries(underflow libsoundio_shared) | ||
+ add_executable(underflow test/underflow.c) | ||
+ set_target_properties(underflow PROPERTIES | ||
+ LINKER_LANGUAGE C | ||
+ COMPILE_FLAGS ${EXAMPLE_CFLAGS}) | ||
+ target_link_libraries(underflow libsoundio_shared) | ||
|
||
-add_executable(backend_disconnect_recover test/backend_disconnect_recover.c) | ||
-set_target_properties(backend_disconnect_recover PROPERTIES | ||
- LINKER_LANGUAGE C | ||
- COMPILE_FLAGS ${EXAMPLE_CFLAGS}) | ||
-target_link_libraries(backend_disconnect_recover libsoundio_shared) | ||
+ add_executable(backend_disconnect_recover test/backend_disconnect_recover.c) | ||
+ set_target_properties(backend_disconnect_recover PROPERTIES | ||
+ LINKER_LANGUAGE C | ||
+ COMPILE_FLAGS ${EXAMPLE_CFLAGS}) | ||
+ target_link_libraries(backend_disconnect_recover libsoundio_shared) | ||
|
||
-add_executable(overflow test/overflow.c) | ||
-set_target_properties(overflow PROPERTIES | ||
- LINKER_LANGUAGE C | ||
- COMPILE_FLAGS ${EXAMPLE_CFLAGS}) | ||
-target_link_libraries(overflow libsoundio_shared) | ||
+ add_executable(overflow test/overflow.c) | ||
+ set_target_properties(overflow PROPERTIES | ||
+ LINKER_LANGUAGE C | ||
+ COMPILE_FLAGS ${EXAMPLE_CFLAGS}) | ||
+ target_link_libraries(overflow libsoundio_shared) | ||
|
||
|
||
|
||
-add_custom_target(coverage | ||
- DEPENDS unit_tests | ||
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR} | ||
- COMMAND lcov --directory . --zerocounters --rc lcov_branch_coverage=1 | ||
- COMMAND ./unit_tests | ||
- COMMAND lcov --directory . --capture --output-file coverage.info --rc lcov_branch_coverage=1 | ||
- COMMAND lcov --remove coverage.info '/usr/*' --output-file coverage.info.cleaned --rc lcov_branch_coverage=1 | ||
- COMMAND genhtml -o coverage coverage.info.cleaned --rc lcov_branch_coverage=1 | ||
- COMMAND rm coverage.info coverage.info.cleaned | ||
-) | ||
+ add_custom_target(coverage | ||
+ DEPENDS unit_tests | ||
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR} | ||
+ COMMAND lcov --directory . --zerocounters --rc lcov_branch_coverage=1 | ||
+ COMMAND ./unit_tests | ||
+ COMMAND lcov --directory . --capture --output-file coverage.info --rc lcov_branch_coverage=1 | ||
+ COMMAND lcov --remove coverage.info '/usr/*' --output-file coverage.info.cleaned --rc lcov_branch_coverage=1 | ||
+ COMMAND genhtml -o coverage coverage.info.cleaned --rc lcov_branch_coverage=1 | ||
+ COMMAND rm coverage.info coverage.info.cleaned | ||
+ ) | ||
+endif() | ||
+ | ||
|
||
add_custom_target(doc | ||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR} | ||
@@ -342,6 +352,8 @@ message("\n" | ||
"* Install Directory : ${CMAKE_INSTALL_PREFIX}\n" | ||
"* Build Type : ${CMAKE_BUILD_TYPE}\n" | ||
"* Build static libs : ${BUILD_STATIC_LIBS}\n" | ||
+ "* Build examples : ${BUILD_EXAMPLE_PROGRAMS}\n" | ||
+ "* Build tests : ${BUILD_TESTS}\n" | ||
) | ||
|
||
message( |
52 changes: 52 additions & 0 deletions
52
media-libs/libsoundio/files/libsoundio-1.0.0_static-libs.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
From 0a20aec2a14dcfbcbc741d2002985073094634d8 Mon Sep 17 00:00:00 2001 | ||
From: Diogo Pereira <[email protected]> | ||
Date: Fri, 4 Sep 2015 17:21:54 +0100 | ||
Subject: [PATCH] Make building static libs optional | ||
|
||
--- | ||
CMakeLists.txt | 18 +++++++++++------- | ||
1 file changed, 11 insertions(+), 7 deletions(-) | ||
|
||
diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
index 0e66834..c109af4 100644 | ||
--- a/CMakeLists.txt | ||
+++ b/CMakeLists.txt | ||
@@ -24,6 +24,7 @@ set(LIBSOUNDIO_VERSION_PATCH 0) | ||
set(LIBSOUNDIO_VERSION "${LIBSOUNDIO_VERSION_MAJOR}.${LIBSOUNDIO_VERSION_MINOR}.${LIBSOUNDIO_VERSION_PATCH}") | ||
message("Configuring libsoundio version ${LIBSOUNDIO_VERSION}") | ||
|
||
+option(BUILD_STATIC_LIBS "Build static libraries" ON) | ||
option(ENABLE_JACK "Enable JACK backend" ON) | ||
option(ENABLE_PULSEAUDIO "Enable PulseAudio backend" ON) | ||
option(ENABLE_ALSA "Enable ALSA backend" ON) | ||
@@ -237,13 +238,15 @@ target_link_libraries(libsoundio_shared LINK_PUBLIC ${LIBSOUNDIO_LIBS}) | ||
install(TARGETS libsoundio_shared DESTINATION ${CMAKE_INSTALL_LIBDIR}) | ||
|
||
|
||
-add_library(libsoundio_static STATIC ${LIBSOUNDIO_SOURCES}) | ||
-set_target_properties(libsoundio_static PROPERTIES | ||
- OUTPUT_NAME soundio | ||
- COMPILE_FLAGS ${LIB_CFLAGS} | ||
- LINKER_LANGUAGE C | ||
-) | ||
-install(TARGETS libsoundio_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) | ||
+if(BUILD_STATIC_LIBS) | ||
+ add_library(libsoundio_static STATIC ${LIBSOUNDIO_SOURCES}) | ||
+ set_target_properties(libsoundio_static PROPERTIES | ||
+ OUTPUT_NAME soundio | ||
+ COMPILE_FLAGS ${LIB_CFLAGS} | ||
+ LINKER_LANGUAGE C | ||
+ ) | ||
+ install(TARGETS libsoundio_static DESTINATION ${CMAKE_INSTALL_LIBDIR}) | ||
+endif() | ||
|
||
install(FILES | ||
${LIBSOUNDIO_HEADERS} | ||
@@ -338,6 +341,7 @@ message("\n" | ||
"--------------------\n" | ||
"* Install Directory : ${CMAKE_INSTALL_PREFIX}\n" | ||
"* Build Type : ${CMAKE_BUILD_TYPE}\n" | ||
+ "* Build static libs : ${BUILD_STATIC_LIBS}\n" | ||
) | ||
|
||
message( |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
# Copyright 1999-2015 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
# $Id$ | ||
|
||
EAPI=5 | ||
|
||
inherit cmake-multilib | ||
|
||
DESCRIPTION="C99 library providing cross-platform audio input and output." | ||
HOMEPAGE="http://libsound.io/" | ||
SRC_URI="http://libsound.io/release/${P}.tar.gz" | ||
|
||
LICENSE="MIT" | ||
SLOT="0/1" | ||
KEYWORDS="~amd64" | ||
IUSE="alsa coreaudio examples pulseaudio static-libs" | ||
|
||
DEPEND="alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] ) | ||
pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )" | ||
RDEPEND="${DEPEND}" | ||
|
||
# All of these patches have been merged upstream (#8, #16, #20) | ||
PATCHES=( "${FILESDIR}/${P}_clang.patch" | ||
"${FILESDIR}/${P}_static-libs.patch" | ||
"${FILESDIR}/${P}_examples_tests.patch" ) | ||
|
||
# ENABLE_JACK does not support the current version of jack1 | ||
# See https://github.com/andrewrk/libsoundio/issues/11 | ||
multilib_src_configure() { | ||
local mycmakeargs=( | ||
$(cmake-utils_use_enable alsa ALSA) | ||
$(cmake-utils_use_enable coreaudio COREAUDIO) | ||
-DENABLE_JACK=OFF | ||
$(cmake-utils_use_enable pulseaudio PULSEAUDIO) | ||
-DENABLE_WASAPI=OFF | ||
$(cmake-utils_use static-libs BUILD_STATIC_LIBS) | ||
-DBUILD_EXAMPLE_PROGRAMS=$(multilib_native_usex examples "ON" "OFF") | ||
-DBUILD_TESTS=OFF | ||
) | ||
cmake-utils_src_configure | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> | ||
<pkgmetadata> | ||
<herd>proxy-maintainers</herd> | ||
<maintainer> | ||
<email>[email protected]</email> | ||
<name>Diogo Pereira</name> | ||
<description>Proxy maintainer. Assign bugs to him.</description> | ||
</maintainer> | ||
<longdescription lang="en"> | ||
C99 library providing cross-platform audio input and output. The API is | ||
suitable for real-time software such as digital audio workstations as | ||
well as consumer software such as music players. | ||
</longdescription> | ||
<upstream> | ||
<maintainer status="active"> | ||
<email>[email protected]</email> | ||
<name>Andrew Kelley</name> | ||
</maintainer> | ||
<remote-id type="github">andrewrk/libsoundio</remote-id> | ||
<bugs-to>https://github.com/andrewrk/libsoundio/issues</bugs-to> | ||
<doc lang="en">http://libsound.io/doc/</doc> | ||
</upstream> | ||
</pkgmetadata> |