aboutsummaryrefslogtreecommitdiff
path: root/depends/patches
diff options
context:
space:
mode:
Diffstat (limited to 'depends/patches')
-rw-r--r--depends/patches/boost/darwin_boost_atomic-1.patch35
-rw-r--r--depends/patches/boost/darwin_boost_atomic-2.patch55
-rw-r--r--depends/patches/native_cdrkit/cdrkit-deterministic.patch86
-rw-r--r--depends/patches/qt/fix-xcb-include-order.patch21
-rw-r--r--depends/patches/qt/mac-qmake.conf23
-rw-r--r--depends/patches/qt/qt5-tablet-osx.patch20
6 files changed, 240 insertions, 0 deletions
diff --git a/depends/patches/boost/darwin_boost_atomic-1.patch b/depends/patches/boost/darwin_boost_atomic-1.patch
new file mode 100644
index 0000000000..97f59cb7e4
--- /dev/null
+++ b/depends/patches/boost/darwin_boost_atomic-1.patch
@@ -0,0 +1,35 @@
+diff --git a/include/boost/atomic/detail/cas128strong.hpp b/include/boost/atomic/detail/cas128strong.hpp
+index 906c13e..dcb4d7d 100644
+--- a/include/boost/atomic/detail/cas128strong.hpp
++++ b/include/boost/atomic/detail/cas128strong.hpp
+@@ -196,15 +196,17 @@ class base_atomic<T, void, 16, Sign>
+
+ public:
+ BOOST_DEFAULTED_FUNCTION(base_atomic(void), {})
+- explicit base_atomic(value_type const& v) BOOST_NOEXCEPT : v_(0)
++ explicit base_atomic(value_type const& v) BOOST_NOEXCEPT
+ {
++ memset(&v_, 0, sizeof(v_));
+ memcpy(&v_, &v, sizeof(value_type));
+ }
+
+ void
+ store(value_type const& value, memory_order order = memory_order_seq_cst) volatile BOOST_NOEXCEPT
+ {
+- storage_type value_s = 0;
++ storage_type value_s;
++ memset(&value_s, 0, sizeof(value_s));
+ memcpy(&value_s, &value, sizeof(value_type));
+ platform_fence_before_store(order);
+ platform_store128(value_s, &v_);
+@@ -247,7 +249,9 @@ class base_atomic<T, void, 16, Sign>
+ memory_order success_order,
+ memory_order failure_order) volatile BOOST_NOEXCEPT
+ {
+- storage_type expected_s = 0, desired_s = 0;
++ storage_type expected_s, desired_s;
++ memset(&expected_s, 0, sizeof(expected_s));
++ memset(&desired_s, 0, sizeof(desired_s));
+ memcpy(&expected_s, &expected, sizeof(value_type));
+ memcpy(&desired_s, &desired, sizeof(value_type));
+
diff --git a/depends/patches/boost/darwin_boost_atomic-2.patch b/depends/patches/boost/darwin_boost_atomic-2.patch
new file mode 100644
index 0000000000..ca50765200
--- /dev/null
+++ b/depends/patches/boost/darwin_boost_atomic-2.patch
@@ -0,0 +1,55 @@
+diff --git a/include/boost/atomic/detail/gcc-atomic.hpp b/include/boost/atomic/detail/gcc-atomic.hpp
+index a130590..4af99a1 100644
+--- a/include/boost/atomic/detail/gcc-atomic.hpp
++++ b/include/boost/atomic/detail/gcc-atomic.hpp
+@@ -958,14 +958,16 @@ class base_atomic<T, void, 16, Sign>
+
+ public:
+ BOOST_DEFAULTED_FUNCTION(base_atomic(void), {})
+- explicit base_atomic(value_type const& v) BOOST_NOEXCEPT : v_(0)
++ explicit base_atomic(value_type const& v) BOOST_NOEXCEPT
+ {
++ memset(&v_, 0, sizeof(v_));
+ memcpy(&v_, &v, sizeof(value_type));
+ }
+
+ void store(value_type const& v, memory_order order = memory_order_seq_cst) volatile BOOST_NOEXCEPT
+ {
+- storage_type tmp = 0;
++ storage_type tmp;
++ memset(&tmp, 0, sizeof(tmp));
+ memcpy(&tmp, &v, sizeof(value_type));
+ __atomic_store_n(&v_, tmp, atomics::detail::convert_memory_order_to_gcc(order));
+ }
+@@ -980,7 +982,8 @@ class base_atomic<T, void, 16, Sign>
+
+ value_type exchange(value_type const& v, memory_order order = memory_order_seq_cst) volatile BOOST_NOEXCEPT
+ {
+- storage_type tmp = 0;
++ storage_type tmp;
++ memset(&tmp, 0, sizeof(tmp));
+ memcpy(&tmp, &v, sizeof(value_type));
+ tmp = __atomic_exchange_n(&v_, tmp, atomics::detail::convert_memory_order_to_gcc(order));
+ value_type res;
+@@ -994,7 +997,9 @@ class base_atomic<T, void, 16, Sign>
+ memory_order success_order,
+ memory_order failure_order) volatile BOOST_NOEXCEPT
+ {
+- storage_type expected_s = 0, desired_s = 0;
++ storage_type expected_s, desired_s;
++ memset(&expected_s, 0, sizeof(expected_s));
++ memset(&desired_s, 0, sizeof(desired_s));
+ memcpy(&expected_s, &expected, sizeof(value_type));
+ memcpy(&desired_s, &desired, sizeof(value_type));
+ const bool success = __atomic_compare_exchange_n(&v_, &expected_s, desired_s, false,
+@@ -1010,7 +1015,9 @@ class base_atomic<T, void, 16, Sign>
+ memory_order success_order,
+ memory_order failure_order) volatile BOOST_NOEXCEPT
+ {
+- storage_type expected_s = 0, desired_s = 0;
++ storage_type expected_s, desired_s;
++ memset(&expected_s, 0, sizeof(expected_s));
++ memset(&desired_s, 0, sizeof(desired_s));
+ memcpy(&expected_s, &expected, sizeof(value_type));
+ memcpy(&desired_s, &desired, sizeof(value_type));
+ const bool success = __atomic_compare_exchange_n(&v_, &expected_s, desired_s, true,
diff --git a/depends/patches/native_cdrkit/cdrkit-deterministic.patch b/depends/patches/native_cdrkit/cdrkit-deterministic.patch
new file mode 100644
index 0000000000..8ab0993dc4
--- /dev/null
+++ b/depends/patches/native_cdrkit/cdrkit-deterministic.patch
@@ -0,0 +1,86 @@
+--- cdrkit-1.1.11.old/genisoimage/tree.c 2008-10-21 19:57:47.000000000 -0400
++++ cdrkit-1.1.11/genisoimage/tree.c 2013-12-06 00:23:18.489622668 -0500
+@@ -1139,8 +1139,9 @@
+ scan_directory_tree(struct directory *this_dir, char *path,
+ struct directory_entry *de)
+ {
+- DIR *current_dir;
++ int current_file;
+ char whole_path[PATH_MAX];
++ struct dirent **d_list;
+ struct dirent *d_entry;
+ struct directory *parent;
+ int dflag;
+@@ -1164,7 +1165,8 @@
+ this_dir->dir_flags |= DIR_WAS_SCANNED;
+
+ errno = 0; /* Paranoia */
+- current_dir = opendir(path);
++ //current_dir = opendir(path);
++ current_file = scandir(path, &d_list, NULL, alphasort);
+ d_entry = NULL;
+
+ /*
+@@ -1173,12 +1175,12 @@
+ */
+ old_path = path;
+
+- if (current_dir) {
++ if (current_file >= 0) {
+ errno = 0;
+- d_entry = readdir(current_dir);
++ d_entry = d_list[0];
+ }
+
+- if (!current_dir || !d_entry) {
++ if (current_file < 0 || !d_entry) {
+ int ret = 1;
+
+ #ifdef USE_LIBSCHILY
+@@ -1191,8 +1193,8 @@
+ de->isorec.flags[0] &= ~ISO_DIRECTORY;
+ ret = 0;
+ }
+- if (current_dir)
+- closedir(current_dir);
++ if(d_list)
++ free(d_list);
+ return (ret);
+ }
+ #ifdef ABORT_DEEP_ISO_ONLY
+@@ -1208,7 +1210,7 @@
+ errmsgno(EX_BAD, "use Rock Ridge extensions via -R or -r,\n");
+ errmsgno(EX_BAD, "or allow deep ISO9660 directory nesting via -D.\n");
+ }
+- closedir(current_dir);
++ free(d_list);
+ return (1);
+ }
+ #endif
+@@ -1250,13 +1252,13 @@
+ * The first time through, skip this, since we already asked
+ * for the first entry when we opened the directory.
+ */
+- if (dflag)
+- d_entry = readdir(current_dir);
++ if (dflag && current_file >= 0)
++ d_entry = d_list[current_file];
+ dflag++;
+
+- if (!d_entry)
++ if (current_file < 0)
+ break;
+-
++ current_file--;
+ /* OK, got a valid entry */
+
+ /* If we do not want all files, then pitch the backups. */
+@@ -1348,7 +1350,7 @@
+ insert_file_entry(this_dir, whole_path, d_entry->d_name);
+ #endif /* APPLE_HYB */
+ }
+- closedir(current_dir);
++ free(d_list);
+
+ #ifdef APPLE_HYB
+ /*
diff --git a/depends/patches/qt/fix-xcb-include-order.patch b/depends/patches/qt/fix-xcb-include-order.patch
new file mode 100644
index 0000000000..bf6c6dca36
--- /dev/null
+++ b/depends/patches/qt/fix-xcb-include-order.patch
@@ -0,0 +1,21 @@
+--- old/qtbase/src/plugins/platforms/xcb/xcb-plugin.pro 2014-07-30 18:17:27.384458441 -0400
++++ new/qtbase/src/plugins/platforms/xcb/xcb-plugin.pro 2014-07-30 18:18:28.620459303 -0400
+@@ -101,10 +101,6 @@
+ }
+ }
+
+-DEFINES += $$QMAKE_DEFINES_XCB
+-LIBS += $$QMAKE_LIBS_XCB
+-QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_XCB
+-
+ CONFIG += qpa/genericunixfontdatabase
+
+ contains(QT_CONFIG, dbus) {
+@@ -141,3 +137,7 @@
+ INCLUDEPATH += ../../../3rdparty/xkbcommon/xkbcommon/
+ }
+ }
++
++DEFINES += $$QMAKE_DEFINES_XCB
++LIBS += $$QMAKE_LIBS_XCB
++INCLUDEPATH += $$QMAKE_CFLAGS_XCB
diff --git a/depends/patches/qt/mac-qmake.conf b/depends/patches/qt/mac-qmake.conf
new file mode 100644
index 0000000000..f7302265bc
--- /dev/null
+++ b/depends/patches/qt/mac-qmake.conf
@@ -0,0 +1,23 @@
+MAKEFILE_GENERATOR = UNIX
+CONFIG += app_bundle incremental global_init_link_order lib_version_first plugin_no_soname absolute_library_soname
+QMAKE_INCREMENTAL_STYLE = sublib
+include(../common/macx.conf)
+include(../common/gcc-base-mac.conf)
+include(../common/clang.conf)
+include(../common/clang-mac.conf)
+QMAKE_MAC_SDK_PATH=$${MAC_SDK_PATH}
+QMAKE_XCODE_VERSION=4.3
+QMAKE_XCODE_DEVELOPER_PATH=/Developer
+QMAKE_MACOSX_DEPLOYMENT_TARGET = $${MAC_MIN_VERSION}
+QMAKE_MAC_SDK=macosx
+QMAKE_MAC_SDK.macosx.path = $$QMAKE_MAC_SDK_PATH
+QMAKE_MAC_SDK.macosx.platform_name = macosx
+QMAKE_CFLAGS += -target $${MAC_TARGET}
+QMAKE_OBJECTIVE_CFLAGS += $$QMAKE_CFLAGS
+QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
+QMAKE_LFLAGS += -target $${MAC_TARGET}
+QMAKE_AR = $${CROSS_COMPILE}ar cq
+QMAKE_RANLIB=$${CROSS_COMPILE}ranlib
+QMAKE_LIBTOOL=$${CROSS_COMPILE}libtool
+QMAKE_INSTALL_NAME_TOOL=$${CROSS_COMPILE}install_name_tool
+load(qt_config)
diff --git a/depends/patches/qt/qt5-tablet-osx.patch b/depends/patches/qt/qt5-tablet-osx.patch
new file mode 100644
index 0000000000..7deabf8d4e
--- /dev/null
+++ b/depends/patches/qt/qt5-tablet-osx.patch
@@ -0,0 +1,20 @@
+--- old/qtbase/src/widgets/kernel/qwidgetwindow.cpp 2014-09-05 20:45:18.717570370 -0400
++++ new/qtbase/src/widgets/kernel/qwidgetwindow.cpp 2014-09-05 20:52:38.653576561 -0400
+@@ -57,7 +57,7 @@
+ Q_WIDGETS_EXPORT extern bool qt_tab_all_widgets();
+
+ QWidget *qt_button_down = 0; // widget got last button-down
+-static QWidget *qt_tablet_target = 0;
++static QPointer<QWidget> qt_tablet_target = 0;
+
+ // popup control
+ QWidget *qt_popup_down = 0; // popup that contains the pressed widget
+@@ -96,8 +96,6 @@
+
+ QWidgetWindow::~QWidgetWindow()
+ {
+- if (m_widget == qt_tablet_target)
+- qt_tablet_target = 0;
+ }
+
+ #ifndef QT_NO_ACCESSIBILITY