@@ -6,7 +6,7 @@ include(ExternalProject)
66# PortAudio
77##################################################
88
9- set (TOOLCHAIN_INSTALL_PREFIX_PORTAUDIO ${TOOLCHAIN_INSTALL_PREFIX} /portaudio )
9+ set (TOOLCHAIN_INSTALL_PREFIX_PORTAUDIO ${TOOLCHAIN_INSTALL_PREFIX_PORTAUDIO} )
1010
1111if (MSVC )
1212 if (TOOLCHAIN_BUILD_EXTERNALPROJECTS)
@@ -24,23 +24,22 @@ if (MSVC)
2424 INSTALL_COMMAND ${CMAKE_COMMAND} --build . --target install --config Debug
2525 COMMAND ${CMAKE_COMMAND} --build . --target install --config Release
2626 BUILD_BYPRODUCTS <INSTALL_DIR >/lib/${CMAKE_VS_PLATFORM_NAME} /portaudiod.lib
27- <INSTALL_DIR >/lib/${CMAKE_VS_PLATFORM_NAME} /portaudio.lib
27+ <INSTALL_DIR >/lib/${CMAKE_VS_PLATFORM_NAME} /portaudio.lib
2828 )
2929 ExternalProject_Get_Property (portaudio-src INSTALL_DIR )
30+
31+ add_library (PortAudio::portaudio STATIC IMPORTED GLOBAL )
32+ add_dependencies (PortAudio::portaudio portaudio-src )
3033 file (MAKE_DIRECTORY ${INSTALL_DIR} /include )
34+ target_include_directories (PortAudio::portaudio INTERFACE ${INSTALL_DIR} /include )
35+ set_target_properties (PortAudio::portaudio PROPERTIES
36+ IMPORTED_LOCATION_DEBUG ${INSTALL_DIR} /lib/portaudiod.lib
37+ IMPORTED_LOCATION ${INSTALL_DIR} /lib/portaudio.lib )
3138 else ()
32- set (INSTALL_DIR ${TOOLCHAIN_INSTALL_PREFIX_PORTAUDIO} )
39+ set (PortAudio_DIR ${TOOLCHAIN_INSTALL_PREFIX_PORTAUDIO} /lib/cmake/portaudio)
40+ find_package (PortAudio REQUIRED )
3341 endif ()
3442
35- add_library (portaudio STATIC IMPORTED GLOBAL )
36- if (TOOLCHAIN_BUILD_EXTERNALPROJECTS)
37- add_dependencies (portaudio portaudio-src )
38- endif ()
39- target_include_directories (portaudio INTERFACE ${INSTALL_DIR} /include )
40- set_target_properties (portaudio PROPERTIES
41- IMPORTED_LOCATION_DEBUG ${INSTALL_DIR} /lib/portaudiod.lib
42- IMPORTED_LOCATION ${INSTALL_DIR} /lib/portaudio.lib )
43-
4443elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin" )
4544
4645 if (TOOLCHAIN_BUILD_EXTERNALPROJECTS)
@@ -50,30 +49,28 @@ elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
5049 GIT_TAG 213c048
5150 UPDATE_COMMAND ""
5251 PREFIX ${TOOLCHAIN_BUILD_PREFIX} /portaudio
53- INSTALL_DIR ${TOOLCHAIN_INSTALL_PREFIX} /portaudio
52+ INSTALL_DIR ${TOOLCHAIN_INSTALL_PREFIX_PORTAUDIO}
5453 CMAKE_ARGS -DCMAKE_OSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET} -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR > -DCMAKE_OSX_ARCHITECTURES=${ARCHS} -DCMAKE_BUILD_TYPE=release -DPA_BUILD_SHARED_LIBS=OFF
5554 BUILD_COMMAND ${CMAKE_COMMAND} --build .
5655 BUILD_BYPRODUCTS <INSTALL_DIR >/lib/libportaudio.a
5756 )
5857 ExternalProject_Get_Property (portaudio-src INSTALL_DIR )
58+
59+ add_library (PortAudio::portaudio STATIC IMPORTED GLOBAL )
60+ add_dependencies (PortAudio::portaudio portaudio-src )
5961 file (MAKE_DIRECTORY ${INSTALL_DIR} /include )
62+ target_include_directories (PortAudio::portaudio INTERFACE ${INSTALL_DIR} /include )
63+ set_target_properties (PortAudio::portaudio PROPERTIES
64+ IMPORTED_LOCATION ${INSTALL_DIR} /lib/libportaudio.a )
65+ find_library (AUDIOTOOLBOX_LIBRARY AudioToolBox )
66+ find_library (AUDIOUNIT_LIBRARY AudioUnit )
67+ find_library (CARBON_LIBRARY Carbon )
68+ find_library (COREAUDIO_LIBRARY CoreAudio )
69+ target_link_libraries (PortAudio::portaudio INTERFACE ${CARBON_LIBRARY} ${AUDIOUNIT_LIBRARY} ${COREAUDIO_LIBRARY} ${AUDIOTOOLBOX_LIBRARY} )
6070 else ()
61- set (INSTALL_DIR ${TOOLCHAIN_INSTALL_PREFIX_PORTAUDIO} )
62- endif ()
63-
64- find_library (AUDIOTOOLBOX_LIBRARY AudioToolBox )
65- find_library (AUDIOUNIT_LIBRARY AudioUnit )
66- find_library (CARBON_LIBRARY Carbon )
67- find_library (COREAUDIO_LIBRARY CoreAudio )
68-
69- add_library (portaudio STATIC IMPORTED GLOBAL )
70- if (TOOLCHAIN_BUILD_EXTERNALPROJECTS)
71- add_dependencies (portaudio portaudio-src )
71+ set (PortAudio_DIR ${TOOLCHAIN_INSTALL_PREFIX_PORTAUDIO} /lib/cmake/portaudio)
72+ find_package (PortAudio REQUIRED )
7273 endif ()
73- target_include_directories (portaudio INTERFACE ${INSTALL_DIR} /include )
74- set_target_properties (portaudio PROPERTIES
75- IMPORTED_LOCATION ${INSTALL_DIR} /lib/libportaudio.a )
76- target_link_libraries (portaudio INTERFACE ${CARBON_LIBRARY} ${AUDIOUNIT_LIBRARY} ${COREAUDIO_LIBRARY} ${AUDIOTOOLBOX_LIBRARY} )
7774
7875elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux" )
7976
@@ -83,30 +80,28 @@ elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
8380 GIT_TAG 213c048
8481 UPDATE_COMMAND ""
8582 PREFIX ${TOOLCHAIN_BUILD_PREFIX} /portaudio
86- INSTALL_DIR ${TOOLCHAIN_INSTALL_PREFIX} /portaudio
83+ INSTALL_DIR ${TOOLCHAIN_INSTALL_PREFIX_PORTAUDIO}
8784 CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR > -DPA_USE_ALSA=ON -DPA_USE_PULSEAUDIO=ON -DPA_USE_JACK=OFF -DPA_USE_OSS=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DPA_BUILD_SHARED_LIBS=OFF
8885 BUILD_COMMAND ${CMAKE_COMMAND} --build .
8986 BUILD_BYPRODUCTS <INSTALL_DIR >/lib/libportaudio.a
9087 )
9188 ExternalProject_Get_Property (portaudio-src INSTALL_DIR )
89+
90+ add_library (PortAudio::portaudio STATIC IMPORTED GLOBAL )
91+ add_dependencies (PortAudio::portaudio portaudio-src )
9292 file (MAKE_DIRECTORY ${INSTALL_DIR} /include )
93- else ()
94- set (INSTALL_DIR ${TOOLCHAIN_INSTALL_PREFIX_PORTAUDIO} )
95- endif ()
93+ target_include_directories (PortAudio::portaudio INTERFACE ${INSTALL_DIR} /include )
94+ set_target_properties (PortAudio::portaudio PROPERTIES
95+ IMPORTED_LOCATION ${INSTALL_DIR} /lib/libportaudio.a )
96+ # Ubuntu: libasound2-dev
97+ find_library (ASOUND_LIBRARY asound )
98+ # Ubuntu: libpulse-dev
99+ find_library (PULSE_LIBRARY pulse )
100+ target_link_libraries (PortAudio::portaudio INTERFACE ${ASOUND_LIBRARY} ${PULSE_LIBRARY} )
96101
97- add_library ( portaudio STATIC IMPORTED GLOBAL )
98- if (TOOLCHAIN_BUILD_EXTERNALPROJECTS )
99- add_dependencies ( portaudio portaudio-src )
102+ else ( )
103+ set (PortAudio_DIR ${TOOLCHAIN_INSTALL_PREFIX_PORTAUDIO} /lib/cmake/portaudio )
104+ find_package ( PortAudio REQUIRED )
100105 endif ()
101106
102- # Ubuntu: libasound2-dev
103- find_library (ASOUND_LIBRARY asound )
104- # Ubuntu: libpulse-dev
105- find_library (PULSE_LIBRARY pulse )
106-
107- target_include_directories (portaudio INTERFACE ${INSTALL_DIR} /include )
108- set_target_properties (portaudio PROPERTIES
109- IMPORTED_LOCATION ${INSTALL_DIR} /lib/libportaudio.a )
110- target_link_libraries (portaudio INTERFACE ${ASOUND_LIBRARY} ${PULSE_LIBRARY} )
111-
112107endif ()
0 commit comments