Control: tags -1 patch

Hi,

I'm providing patches to fix tiledarray FTBFS (even though the underlying
causes are not completely clear to me at the moment).

Juhani Numminen kirjoitti 12.12.2017 klo 12:16:

> /usr/include/c++/7/utility:168:12: error: partial specialization of 'struct 
> std::__is_tuple_like_impl<std::pair<_T1, _T2> >' after instantiation of 
> 'struct std::__is_tuple_like_impl<std::pair<long unsigned int, long unsigned 
> int> >' [-fpermissive]

For that, please see specialization-after-instantiation.patch. I suspect
that is something similar to #883987.

Adrian Bunk kirjoitti 28.9.2017 klo 12:02:

> /usr/lib/cmake/tiledarray/tiledarray-targets.cmake needs to be rebuilt 
> with the multiarch libblas.so location.

This also caused the build to fail because of those non-multiarch paths,
and took me some effort to work around. I couldn't understand why the
variable LAPACK_LIBRARIES unconditionally contained /usr/lib/lapack.so and
/usr/lib/blas.so, so in the end I just removed the problematic use of
that variable; see dependencies.patch.


Regards
Juhani
Description: #include <utility> before anything else to avoid error
 This might actually a bug in boost or libstdc++. The message is:
 In file included from /usr/include/c++/7/bits/unique_ptr.h:36:0,
                  from /usr/include/c++/7/memory:80,
                  from /usr/include/boost/config/no_tr1/memory.hpp:21,
                  from /usr/include/boost/smart_ptr/shared_ptr.hpp:23,
                  from /usr/include/boost/shared_ptr.hpp:17,
                  from /usr/include/boost/test/tools/assertion_result.hpp:21,
                  from /usr/include/boost/test/tools/old/impl.hpp:20,
                  from /usr/include/boost/test/test_tools.hpp:46,
                  from /usr/include/boost/test/unit_test.hpp:18,
                  from /build/tiledarray-0.6.0/obj-x86_64-linux-gnu/tests/unit_test_config.h:32,
                  from /build/tiledarray-0.6.0/tests/tiled_range1.cpp:21:
 /usr/include/c++/7/utility:168:12: error: partial specialization of
 'struct std::__is_tuple_like_impl<std::pair<_T1, _T2> >' after instantiation of
 'struct std::__is_tuple_like_impl<std::pair<long unsigned int, long unsigned int> >'
Author: Juhani Numminen <juhaninummin...@gmail.com>
Bug-Debian: https://bugs.debian.org/853682
Last-Update: 2017-12-19

--- a/tests/tiled_range1.cpp
+++ b/tests/tiled_range1.cpp
@@ -17,6 +17,7 @@
  *
  */
 
+#include <utility>
 #include "TiledArray/tiled_range1.h"
 #include "unit_test_config.h"
 #include "range_fixture.h"
--- a/tests/tiled_range.cpp
+++ b/tests/tiled_range.cpp
@@ -17,6 +17,7 @@
  *
  */
 
+#include <utility>
 #include "TiledArray/tiled_range.h"
 #include "tiledarray.h"
 #include "unit_test_config.h"
Description: Fix build failure and invalid tiledarray-targets.cmake
 LAPACK_LIBRARIES seems to uncoditionally contain /usr/lib/lapack.so and
 /usr/lib/blas.so but those libraries have been moved to multiarch paths.
Author: Juhani Numminen <juhaninummin...@gmail.com>
Bug-Debian: https://bugs.debian.org/853682
Last-Update: 2017-12-19

--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -166,7 +166,7 @@
 string (REPLACE " " ";" CMAKE_CXX_FLAG_LIST "${CMAKE_CXX_FLAGS}")
 target_compile_options(tiledarray PUBLIC 
    $<TARGET_PROPERTY:MADworld,INTERFACE_COMPILE_OPTIONS>;${CMAKE_CXX_FLAG_LIST})
-target_link_libraries(tiledarray PUBLIC "${LAPACK_LIBRARIES}" MADworld)
+target_link_libraries(tiledarray PUBLIC -llapack -lblas MADworld)
 
 # Add library to the list of installed components
 install(TARGETS tiledarray EXPORT tiledarray COMPONENT tiledarray

Reply via email to