2016-02-23 23:30:24 +00:00
|
|
|
Description: Various build system fixes
|
|
|
|
This fixes issues with underlinking and build libobs with -fvisibility=hidden
|
2016-02-25 19:42:32 +00:00
|
|
|
to hide internal symbols. It also disables -msse*.
|
2016-02-23 23:30:24 +00:00
|
|
|
Author: Sebastian Ramacher <sramacher@debian.org>
|
|
|
|
Last-Update: 2016-02-24
|
|
|
|
|
|
|
|
--- a/libobs/CMakeLists.txt
|
|
|
|
+++ b/libobs/CMakeLists.txt
|
|
|
|
@@ -13,6 +13,8 @@
|
|
|
|
|
|
|
|
if(UNIX)
|
|
|
|
find_package(DBus QUIET)
|
|
|
|
+ find_package(XCB COMPONENTS XCB REQUIRED)
|
|
|
|
+ find_package(X11)
|
|
|
|
else()
|
|
|
|
set(HAVE_DBUS "0")
|
|
|
|
endif()
|
|
|
|
@@ -125,6 +127,23 @@
|
|
|
|
${DBUS_LIBRARIES})
|
|
|
|
endif()
|
|
|
|
|
|
|
|
+ include_directories(
|
|
|
|
+ ${XCB_INCLUDE_DIRS}
|
|
|
|
+ ${X11_XCB_INCLUDE_DIRS}
|
|
|
|
+ ${X11_X11_INCLUDE_PATH})
|
|
|
|
+
|
|
|
|
+ add_definitions(
|
|
|
|
+ ${XCB_DEFINITIONS}
|
|
|
|
+ ${X11_XCB_DEFINITIONS})
|
|
|
|
+
|
|
|
|
+ set(libobs_PLATFORM_DEPS
|
|
|
|
+ ${libobs_PLATFORM_DEPS}
|
|
|
|
+ ${XCB_LIBRARIES}
|
|
|
|
+ ${X11_XCB_LIBRARIES}
|
|
|
|
+ ${X11_X11_LIB}
|
|
|
|
+ m
|
|
|
|
+ dl)
|
|
|
|
+
|
|
|
|
if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
|
|
|
|
# use the sysinfo compatibility library on bsd
|
|
|
|
find_package(Libsysinfo REQUIRED)
|
2016-02-25 19:41:52 +00:00
|
|
|
@@ -346,15 +365,11 @@
|
|
|
|
PUBLIC
|
|
|
|
HAVE_OBSCONFIG_H)
|
2016-02-23 23:30:24 +00:00
|
|
|
|
2016-02-25 19:41:52 +00:00
|
|
|
-if(NOT MSVC)
|
|
|
|
- target_compile_options(libobs
|
|
|
|
- PUBLIC
|
|
|
|
- -mmmx
|
|
|
|
- -msse
|
|
|
|
- -msse2)
|
2016-02-23 23:30:24 +00:00
|
|
|
+if(UNIX)
|
|
|
|
+ set_source_files_properties(${libobs_SOURCES} PROPERTIES
|
|
|
|
+ COMPILE_FLAGS "-fvisibility=hidden")
|
2016-02-25 19:41:52 +00:00
|
|
|
endif()
|
2016-02-23 23:30:24 +00:00
|
|
|
|
2016-02-25 19:41:52 +00:00
|
|
|
-
|
2016-02-23 23:30:24 +00:00
|
|
|
target_compile_options(libobs
|
|
|
|
PUBLIC
|
2016-02-25 19:41:52 +00:00
|
|
|
"${THREADS_DEFINITIONS}")
|
2016-02-23 23:30:24 +00:00
|
|
|
--- a/obs/CMakeLists.txt
|
|
|
|
+++ b/obs/CMakeLists.txt
|
|
|
|
@@ -81,16 +81,13 @@
|
|
|
|
find_package(XCB COMPONENTS XCB REQUIRED RANDR REQUIRED XINERAMA REQUIRED)
|
|
|
|
|
|
|
|
include_directories(
|
|
|
|
- ${XCB_INCLUDE_DIRS}
|
|
|
|
- ${X11_XCB_INCLUDE_DIRS})
|
|
|
|
+ ${XCB_INCLUDE_DIRS})
|
|
|
|
|
|
|
|
add_definitions(
|
|
|
|
- ${XCB_DEFINITIONS}
|
|
|
|
- ${X11_XCB_DEFINITIONS})
|
|
|
|
+ ${XCB_DEFINITIONS})
|
|
|
|
|
|
|
|
set(obs_PLATFORM_LIBRARIES
|
|
|
|
${XCB_LIBRARIES}
|
|
|
|
- ${X11_XCB_LIBRARIES}
|
|
|
|
Qt5::X11Extras)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
--- a/libobs/util/c99defs.h
|
|
|
|
+++ b/libobs/util/c99defs.h
|
|
|
|
@@ -50,7 +50,7 @@
|
|
|
|
|
|
|
|
#define EXPORT __declspec(dllexport)
|
|
|
|
#else
|
|
|
|
-#define EXPORT
|
|
|
|
+#define EXPORT __attribute__((visibility("default")))
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if _MSC_VER && _MSC_VER < 0x0708
|