diff options
author | Matteo Bernardini <ponce@slackbuilds.org> | 2017-06-21 17:21:33 +0200 |
---|---|---|
committer | Robby Workman <rworkman@slackbuilds.org> | 2021-04-17 23:36:01 -0500 |
commit | f06b903da26bdf1c821ffa834fdb01e42d5a7ffb (patch) | |
tree | 602d4d947c1b3a14aec6aa2fd6a2302163e69fe4 /libraries/libclaw | |
parent | 6e4d95d2af5aa963e73cef138db4f84f596439d9 (diff) |
libraries/libclaw: Patches for the newer gcc.
Signed-off-by: Matteo Bernardini <ponce@slackbuilds.org>
Diffstat (limited to 'libraries/libclaw')
-rw-r--r-- | libraries/libclaw/lib.patch | 11 | ||||
-rw-r--r-- | libraries/libclaw/libclaw.SlackBuild | 6 | ||||
-rw-r--r-- | libraries/libclaw/patches/01_libclaw-1.7.4-libdir.patch | 36 | ||||
-rw-r--r-- | libraries/libclaw/patches/02_libclaw-1.7.4-gcc62.patch | 89 | ||||
-rw-r--r-- | libraries/libclaw/patches/03_libclaw-1.7.4-gcc7.patch | 36 |
5 files changed, 164 insertions, 14 deletions
diff --git a/libraries/libclaw/lib.patch b/libraries/libclaw/lib.patch deleted file mode 100644 index 8ea8694e1aa0..000000000000 --- a/libraries/libclaw/lib.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- libclaw-1.7.4/CMakeLists.orig.txt 2015-05-14 17:54:05.443919651 +0300 -+++ libclaw-1.7.4/CMakeLists.txt 2015-05-14 17:54:22.925701098 +0300 -@@ -30,7 +30,7 @@ - set( CLAW_CODE_DIR claw/code/ ) - set( CLAW_INCLUDE_DIRECTORY "${CMAKE_INSTALL_PREFIX}/include/" ) - set( CLAW_INSTALLDIR_SOURCE include/claw/ ) --set( CLAW_INSTALLDIR_LIB lib/ ) -+set( CLAW_INSTALLDIR_LIB lib64/ ) - set( CLAW_INSTALLDIR_DOC share/doc/libclaw${CLAW_VERSION_MAJOR}/ ) - set( CLAW_TRANSLATIONS_INSTALL_DIR "share/locale" ) - set( CLAW_EXECUTABLE_DIR bin/ ) diff --git a/libraries/libclaw/libclaw.SlackBuild b/libraries/libclaw/libclaw.SlackBuild index 1cee1fa69117..7b426f6acec3 100644 --- a/libraries/libclaw/libclaw.SlackBuild +++ b/libraries/libclaw/libclaw.SlackBuild @@ -69,9 +69,8 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; -if [ "$ARCH" = "x86_64" ]; then - patch -p1 < $CWD/lib.patch -fi +# Apply some patches from fedora +for i in $CWD/patches/*.patch ; do patch -p1 < $i ; done mkdir -p build cd build @@ -79,6 +78,7 @@ cd build -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \ -DCMAKE_INSTALL_PREFIX=/usr \ + -DLIB_SUFFIX=$LIBDIRSUFFIX \ -DCMAKE_BUILD_TYPE=Release .. make make install DESTDIR=$PKG diff --git a/libraries/libclaw/patches/01_libclaw-1.7.4-libdir.patch b/libraries/libclaw/patches/01_libclaw-1.7.4-libdir.patch new file mode 100644 index 000000000000..7e1172f22ba4 --- /dev/null +++ b/libraries/libclaw/patches/01_libclaw-1.7.4-libdir.patch @@ -0,0 +1,36 @@ +diff -up libclaw-1.7.4/claw-config.in.libdir libclaw-1.7.4/claw-config.in +--- libclaw-1.7.4/claw-config.in.libdir 2013-07-03 13:34:38.000000000 -0600 ++++ libclaw-1.7.4/claw-config.in 2016-12-29 16:58:52.140591117 -0700 +@@ -140,7 +140,7 @@ while test $# -gt 0; do + echo -I$CLAW_INCLUDE_DIRECTORY + ;; + --libs) +- libdirs="-L${exec_prefix}/lib " ++ libdirs="-L${exec_prefix}/@CLAW_INSTALLDIR_LIB@ " + + echo -n "$libdirs" + echo $(print_libraries) +diff -up libclaw-1.7.4/CMakeLists.txt.libdir libclaw-1.7.4/CMakeLists.txt +--- libclaw-1.7.4/CMakeLists.txt.libdir 2016-12-29 16:50:24.124507641 -0700 ++++ libclaw-1.7.4/CMakeLists.txt 2016-12-29 16:50:24.137508590 -0700 +@@ -30,7 +30,7 @@ endif(SVN_ENTRIES) + set( CLAW_CODE_DIR claw/code/ ) + set( CLAW_INCLUDE_DIRECTORY "${CMAKE_INSTALL_PREFIX}/include/" ) + set( CLAW_INSTALLDIR_SOURCE include/claw/ ) +-set( CLAW_INSTALLDIR_LIB lib/ ) ++set( CLAW_INSTALLDIR_LIB "lib${LIB_SUFFIX}/" ) + set( CLAW_INSTALLDIR_DOC share/doc/libclaw${CLAW_VERSION_MAJOR}/ ) + set( CLAW_TRANSLATIONS_INSTALL_DIR "share/locale" ) + set( CLAW_EXECUTABLE_DIR bin/ ) +diff -up libclaw-1.7.4/cmake-module/CMakeLists.txt.libdir libclaw-1.7.4/cmake-module/CMakeLists.txt +--- libclaw-1.7.4/cmake-module/CMakeLists.txt.libdir 2013-07-03 13:34:38.000000000 -0600 ++++ libclaw-1.7.4/cmake-module/CMakeLists.txt 2016-12-29 16:50:24.148509393 -0700 +@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 2.6) + project(claw:cmake-modules) + + if( NOT CLAW_CMAKE_MODULES_INSTALL_PATH ) +- set( CLAW_CMAKE_MODULES_INSTALL_PATH "share/cmake/libclaw" ) ++ set( CLAW_CMAKE_MODULES_INSTALL_PATH "lib${LIB_SUFFIX}/cmake/libclaw" ) + endif( NOT CLAW_CMAKE_MODULES_INSTALL_PATH ) + + set( CLAW_CMAKE_MODULES diff --git a/libraries/libclaw/patches/02_libclaw-1.7.4-gcc62.patch b/libraries/libclaw/patches/02_libclaw-1.7.4-gcc62.patch new file mode 100644 index 000000000000..e1da77043db4 --- /dev/null +++ b/libraries/libclaw/patches/02_libclaw-1.7.4-gcc62.patch @@ -0,0 +1,89 @@ +From a13a75306bba55538ba7d5188ffc1a7eb34f173b Mon Sep 17 00:00:00 2001 +From: Lubomir Rintel <lkundrak@v3.sk> +Date: Mon, 28 Nov 2016 10:21:33 +0100 +Subject: [PATCH 1/2] Deal with correct getline() type +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + + libclaw-1.7.4/claw/code/configuration_file.cpp: + In member function ‘bool claw::configuration_file::get_line(std::istream&, + const claw::configuration_file::syntax_description&, std::__cxx11::string&) const’: + libclaw-1.7.4/claw/code/configuration_file.cpp:444:39: error: cannot convert + ‘std::basic_istream<char>’ to ‘bool’ in initialization + bool result = text::getline(is, line); +--- + claw/code/configuration_file.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/claw/code/configuration_file.cpp b/claw/code/configuration_file.cpp +index e7bb26a..3839cff 100644 +--- a/claw/code/configuration_file.cpp ++++ b/claw/code/configuration_file.cpp +@@ -441,7 +441,7 @@ claw::configuration_file::file_end() const + bool claw::configuration_file::get_line + ( std::istream& is, const syntax_description& syntax, std::string& line ) const + { +- bool result = text::getline(is, line); ++ bool result = text::getline(is, line).good(); + + if ( result ) + { +-- +2.9.3 + +From cadc97d9626307d2f1fcf113099c9c4ca0f7cf6b Mon Sep 17 00:00:00 2001 +From: Lubomir Rintel <lkundrak@v3.sk> +Date: Mon, 28 Nov 2016 10:09:33 +0100 +Subject: [PATCH 2/2] Do something random to make C++ happy +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + + In file included from /usr/include/boost/bind.hpp:22:0, libclaw-1.7.4/claw/code/tween/single_tweener.cpp:32: + /usr/include/boost/bind/bind.hpp: In instantiation of ‘void boost::_bi::list2<A1, A2>::operator()(boost::_bi::type<void>, F&, A&, int) [with F = void (*)(double&, double&); A = boost::_bi::rrlist1<double>; A1 = boost::reference_wrapper<double>; A2 = boost::arg<1>]’: + /usr/include/boost/bind/bind.hpp:1234:50: required from ‘boost::_bi::bind_t<R, F, L>::result_type boost::_bi::bind_t<R, F, L>::operator()(A1&&) [with A1 = double; R = void; F = void (*)(double&, double&); L = boost::_bi::list2<boost::reference_wrapper<double>, boost::arg<1> >; boost::_bi::bind_t<R, F, L>::result_type = void]’ + /usr/include/boost/function/function_template.hpp:159:11: required from ‘static void boost::detail::function::void_function_obj_invoker1<FunctionObj, R, T0>::invoke(boost::detail::function::function_buffer&, T0) [with FunctionObj = boost::_bi::bind_t<void, void (*)(double&, double&), boost::_bi::list2<boost::reference_wrapper<double>, boost::arg<1> > >; R = void; T0 = double]’ + /usr/include/boost/function/function_template.hpp:937:38: required from ‘void boost::function1<R, T1>::assign_to(Functor) [with Functor = boost::_bi::bind_t<void, void (*)(double&, double&), boost::_bi::list2<boost::reference_wrapper<double>, boost::arg<1> > >; R = void; T0 = double]’ + /usr/include/boost/function/function_template.hpp:727:7: required from ‘boost::function1<R, T1>::function1(Functor, typename boost::enable_if_c<(! boost::is_integral<Functor>::value), int>::type) [with Functor = boost::_bi::bind_t<void, void (*)(double&, double&), boost::_bi::list2<boost::reference_wrapper<double>, boost::arg<1> > >; R = void; T0 = double; typename boost::enable_if_c<(! boost::is_integral<Functor>::value), int>::type = int]’ + /usr/include/boost/function/function_template.hpp:1073:16: required from ‘boost::function<R(T0)>::function(Functor, typename boost::enable_if_c<(! boost::is_integral<Functor>::value), int>::type) [with Functor = boost::_bi::bind_t<void, void (*)(double&, double&), boost::_bi::list2<boost::reference_wrapper<double>, boost::arg<1> > >; R = void; T0 = double; typename boost::enable_if_c<(! boost::is_integral<Functor>::value), int>::type = int]’ + /usr/include/boost/function/function_template.hpp:1126:5: required from ‘typename boost::enable_if_c<(! boost::is_integral<Functor>::value), boost::function<R(T0)>&>::type boost::function<R(T0)>::operator=(Functor) [with Functor = boost::_bi::bind_t<void, void (*)(double&, double&), boost::_bi::list2<boost::reference_wrapper<double>, boost::arg<1> > >; R = void; T0 = double; typename boost::enable_if_c<(! boost::is_integral<Functor>::value), boost::function<R(T0)>&>::type = boost::function<void(double)>&]’ + libclaw-1.7.4/claw/code/tween/single_tweener.cpp:125:62: required from here + /usr/include/boost/bind/bind.hpp:319:35: error: invalid initialization of non-const reference of type ‘double&’ from an rvalue of type ‘double’ + unwrapper<F>::unwrap(f, 0)(a[base_type::a1_], a[base_type::a2_]); + ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CMakeFiles/claw_tween-static.dir/build.make:89: recipe for target 'CMakeFiles/claw_tween-static.dir/claw/code/tween/single_tweener.cpp.o' failed +--- + claw/code/tween/single_tweener.cpp | 2 +- + claw/tween/single_tweener.hpp | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/claw/code/tween/single_tweener.cpp b/claw/code/tween/single_tweener.cpp +index 2a3c7fe..d173eec 100644 +--- a/claw/code/tween/single_tweener.cpp ++++ b/claw/code/tween/single_tweener.cpp +@@ -241,7 +241,7 @@ double claw::tween::single_tweener::do_update( double dt ) + const double result = dt - t; + m_date += t; + +- const double val( get_value() ); ++ double val( get_value() ); + + m_callback(val); + +diff --git a/claw/tween/single_tweener.hpp b/claw/tween/single_tweener.hpp +index 9f05671..f730cfa 100644 +--- a/claw/tween/single_tweener.hpp ++++ b/claw/tween/single_tweener.hpp +@@ -51,7 +51,7 @@ namespace claw + public: + /** \brief The type of the function called when the single_tweener is + updated. */ +- typedef boost::function<void (double)> update_function; ++ typedef boost::function<void (double&)> update_function; + + /** \brief The type of the function used to compute the new value. */ + typedef boost::function<double (double)> easing_function; +-- +2.9.3 + diff --git a/libraries/libclaw/patches/03_libclaw-1.7.4-gcc7.patch b/libraries/libclaw/patches/03_libclaw-1.7.4-gcc7.patch new file mode 100644 index 000000000000..dd89e3e256c0 --- /dev/null +++ b/libraries/libclaw/patches/03_libclaw-1.7.4-gcc7.patch @@ -0,0 +1,36 @@ +Patch taken from upstream and edited for use in Fedora: + +commit 6033275773313fe052f6e222321a8ec87587fbe6 +Author: Julien Jorge <julien.jorge@iscool-e.com> +Date: Thu Apr 24 20:39:18 2014 +0200 + + Fix various errors pointed by clang on iOS. + +diff --git a/claw/impl/box_2d.tpp b/claw/impl/box_2d.tpp +index e4b6936..71f3883 100644 +--- a/claw/impl/box_2d.tpp ++++ b/claw/impl/box_2d.tpp +@@ -136,8 +136,8 @@ template<typename U> + claw::math::box_2d<U> claw::math::box_2d<T>::cast_value_type_to() const + { + return claw::math::box_2d<U> +- ( first_point.cast_value_type_to<U>(), +- second_point.cast_value_type_to<U>() ); ++ ( first_point.template cast_value_type_to<U>(), ++ second_point.template cast_value_type_to<U>() ); + } // box_2d::cast_value_type_to() + + /*----------------------------------------------------------------------------*/ +diff --git a/claw/impl/rectangle.tpp b/claw/impl/rectangle.tpp +index 9e6f14a..3c3c8f3 100644 +--- a/claw/impl/rectangle.tpp ++++ b/claw/impl/rectangle.tpp +@@ -140,7 +140,7 @@ template<typename U> + claw::math::rectangle<U> claw::math::rectangle<T>::cast_value_type_to() const + { + return claw::math::rectangle<U> +- ( position.cast_value_type_to<U>(), (U)width, (U)height ); ++ ( position.template cast_value_type_to<U>(), (U)width, (U)height ); + } // rectangle::cast_value_type_to() + + /*----------------------------------------------------------------------------*/ |