The patch looks really simple. Great! Do you think it'd be worthwhile updating the PR [1] (or opening a new one)? Perhaps the kokkos devs can figure out why the remaining tests are failing.
Cheers, Nico [1] https://github.com/kokkos/kokkos/pull/410 On Fri, Dec 9, 2016 at 8:18 AM Graham Inggs <gin...@debian.org> wrote: > Attached is an updated version of kokkos-32-bit.patch against upstream > 12.10.1. > It turns out that once the templates were fixed, the overloaded > function declarations were not needed. > > Builds and test of Kokkos-only and all Trilinos packages on 64-bit > architectures are not affected. > > On 32-bit architectures that have an 8-byte compare-and-swap > implementation (e.g. armhf and i386), a Kokkos-only build is > successful, but 1 out of the 21 unit tests, > KokkosCore_UnitTest_Serial_MPI_1, fails. > KokkosCore_UnitTest_Serial_MPI_1 includes 60 tests and of these only 4 > fail with errors like: > > Value of: result[i].value[j] > Actual: 5.00005e+09 > Expected: (ScalarType) correct > Which is: 7.05083e+08 > > A build of all Trilinos packages fails with a few errors similar to > the following: > > packages/tpetra/core/test/Distributor/createfromsendsandrecvs.cpp:315:61: > error: conversion from ‘Teuchos::ArrayView<const unsigned int>’ to > non-scalar type ‘Teuchos::ArrayView<const long unsigned int>’ > requested > ArrayView<const long unsigned int> c = dist.getLengthsFrom(); > > > For a Kokkos-only build, which saves a huge amount of time (thanks > Nico!), make the following changes to debian/rules: > > --- a/debian/rules > +++ b/debian/rules > @@ -93,8 +93,9 @@ > -DTrilinos_INSTALL_INCLUDE_DIR:PATH=include/trilinos/ \ > -DTrilinos_USE_GNUINSTALLDIRS:BOOL=ON \ > -DTrilinos_ENABLE_DEVELOPMENT_MODE:BOOL=OFF \ > - -DTrilinos_ENABLE_ALL_PACKAGES:BOOL=ON \ > - -DTrilinos_ENABLE_SECONDARY_TESTED_CODE:BOOL=ON \ > + -DTrilinos_ENABLE_ALL_PACKAGES:BOOL=OFF \ > + -DTrilinos_ENABLE_SECONDARY_TESTED_CODE:BOOL=OFF \ > + -DTrilinos_ENABLE_Kokkos:BOOL=ON \ > -DTrilinos_ASSERT_MISSING_PACKAGES:BOOL=OFF \ > -DTrilinos_ENABLE_EXPLICIT_INSTANTIATION:BOOL=ON \ > -DTrilinos_ENABLE_CTrilinos:BOOL=OFF \ >