Supercollider is FTBFS
Felipe Sateler
fsateler at gmail.com
Tue Sep 10 23:12:42 UTC 2013
In all archs except i386 and amd64 :(
So far I have the following that works, but is very suboptimal,
because it links with atomic and thread even when not necessary.
Probably the correct thing would be to test for
BOOST_ATOMIC_FLAG_LOCK_FREE and if it is defined then add the
libraries.
Unfortunately this patch mixes two things: one, it enables use of
system lockfree (it is in boost 1.54 at least), but also adds the
libraries when needed in non x86 archs.
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -225,7 +225,7 @@
if(SYSTEM_BOOST)
set(Boost_USE_MULTITHREADED ON)
- find_package( Boost 1.50.0 COMPONENTS thread system filesystem
program_options regex test_exec_monitor )
+ find_package( Boost 1.50.0 COMPONENTS thread system filesystem
program_options regex test_exec_monitor atomic)
endif()
if (Boost_FOUND)
--- a/lang/CMakeLists.txt
+++ b/lang/CMakeLists.txt
@@ -6,7 +6,6 @@
${YAMLCPP_INCLUDE_DIR}
- ${CMAKE_SOURCE_DIR}/external_libraries/boost-lockfree
${CMAKE_SOURCE_DIR}/external_libraries/threadpool
${CMAKE_SOURCE_DIR}/external_libraries/TLSF-2.4.6/src
LangSource/Bison)
@@ -207,7 +206,7 @@
endif()
if (Boost_FOUND)
- target_link_libraries(libsclang ${Boost_THREAD_LIBRARY}
${Boost_SYSTEM_LIBRARY} ${Boost_REGEX_LIBRARY}
${Boost_FILESYSTEM_LIBRARY})
+ target_link_libraries(libsclang ${Boost_THREAD_LIBRARY}
${Boost_SYSTEM_LIBRARY} ${Boost_REGEX_LIBRARY}
${Boost_FILESYSTEM_LIBRARY})
endif()
if (SCLANG_SERVER)
--- a/server/CMakeLists.txt
+++ b/server/CMakeLists.txt
@@ -4,7 +4,6 @@
endif()
include_directories(${CMAKE_SOURCE_DIR}/external_libraries
- ${CMAKE_SOURCE_DIR}/external_libraries/boost-lockfree
${CMAKE_SOURCE_DIR}/external_libraries/nova-simd
${CMAKE_SOURCE_DIR}/external_libraries/nova-tt
)
--- a/server/supernova/CMakeLists.txt
+++ b/server/supernova/CMakeLists.txt
@@ -159,7 +159,7 @@
target_link_libraries(libsupernova oscpack tlsf ${PTHREADS_LIBRARIES})
if (Boost_FOUND)
- target_link_libraries(libsupernova ${Boost_SYSTEM_LIBRARY}
${Boost_FILESYSTEM_LIBRARY} ${Boost_PROGRAM_OPTIONS_LIBRARY})
+ target_link_libraries(libsupernova ${Boost_SYSTEM_LIBRARY}
${Boost_FILESYSTEM_LIBRARY} ${Boost_PROGRAM_OPTIONS_LIBRARY}
${Boost_ATOMIC_LIBRARY})
else()
target_link_libraries(libsupernova boost_system boost_filesystem
boost_program_options)
endif()
--- a/testsuite/supernova/CMakeLists.txt
+++ b/testsuite/supernova/CMakeLists.txt
@@ -45,7 +45,6 @@
${CMAKE_SOURCE_DIR}/server/supernova
${CMAKE_SOURCE_DIR}/external_libraries/boost
${CMAKE_SOURCE_DIR}/external_libraries/boost_endian
- ${CMAKE_SOURCE_DIR}/external_libraries/boost-lockfree
${CMAKE_SOURCE_DIR}/external_libraries/oscpack
${CMAKE_SOURCE_DIR}/external_libraries/
${CMAKE_SOURCE_DIR}/external_libraries/nova-tt
--- a/server/scsynth/CMakeLists.txt
+++ b/server/scsynth/CMakeLists.txt
@@ -207,7 +207,7 @@
endif()
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
- target_link_libraries(libscsynth rt)
+ target_link_libraries(libscsynth rt ${Boost_THREAD_LIBRARY})
endif()
file(GLOB_RECURSE all_headers ../../*hpp)
--
Saludos,
Felipe Sateler
More information about the pkg-multimedia-maintainers
mailing list