Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 673440 - =media-libs/osl-1.9.9[partio,abi_x86_32] - .../work/OpenShadingLanguage-Release-1.9.9/src/liboslexec/pointcloud.cpp:386:5: error: static assertion failed: Only will work if Partio ParticleIndex is the size of a size_t
Summary: =media-libs/osl-1.9.9[partio,abi_x86_32] - .../work/OpenShadingLanguage-Relea...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Adrian
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-12-19 15:33 UTC by Bernd
Modified: 2020-03-22 18:24 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge-info-chroot32.txt (emerge-info-chroot32.txt,5.49 KB, text/plain)
2018-12-19 15:35 UTC, Bernd
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Bernd 2018-12-19 15:33:37 UTC
When testing a possible patch for bug #669508 inside a 32bit chroot, I came across the following error:

[  7%] Building CXX object src/liboslexec/CMakeFiles/oslexec.dir/pointcloud.cpp.o
cd /var/tmp/portage/media-libs/osl-1.9.9/work/osl-1.9.9_build/src/liboslexec && /usr/bin/i686-pc-linux-gnu-g++ -DOIIO_NO_SSE=1 -DOSL_FAST_MATH=1 -DOSL_LLVM_FULL_VERSION=\"6.0.1\" -DOSL_LLVM_VERSION=60 -DUSE_BOOST_WAVE=1 -DUSE_PARTIO=1 -DUSE_STD_REGEX -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -Doslexec_EXPORTS -I/var/tmp/portage/media-libs/osl-1.9.9/work/osl-1.9.9_build/include -I/var/tmp/portage/media-libs/osl-1.9.9/work/OpenShadingLanguage-Release-1.9.9/src/include -isystem /usr/lib/llvm/6/include -I/usr/include/i686-pc-linux-gnu -I/usr/include/i686-pc-linux-gnu/OpenEXR -I/var/tmp/portage/media-libs/osl-1.9.9/work/OpenShadingLanguage-Release-1.9.9/src/liboslcomp -I/var/tmp/portage/media-libs/osl-1.9.9/work/osl-1.9.9_build/src/liboslexec -I/var/tmp/portage/media-libs/osl-1.9.9/work/OpenShadingLanguage-Release-1.9.9/src/liboslexec   -DNDEBUG -O2 -march=i686 -pipe -msse2 -fno-rtti -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -fPIC   -Wall -fno-math-errno -fvisibility=hidden -fvisibility-inlines-hidden -Wno-error=strict-overflow -Wno-error=unused-local-typedefs -Wno-unused-local-typedefs -Wno-unused-result -Wno-error=misleading-indentation -std=c++11 -o CMakeFiles/oslexec.dir/pointcloud.cpp.o -c /var/tmp/portage/media-libs/osl-1.9.9/work/OpenShadingLanguage-Release-1.9.9/src/liboslexec/pointcloud.cpp
/var/tmp/portage/media-libs/osl-1.9.9/work/OpenShadingLanguage-Release-1.9.9/src/liboslexec/pointcloud.cpp: In member function ‘virtual int OSL_v1_9::RendererServices::pointcloud_get(OSL_v1_9::ShaderGlobals*, OpenImageIO_v1_8::ustring, size_t*, int, OpenImageIO_v1_8::ustring, OpenImageIO_v1_8::TypeDesc, void*)’:
/var/tmp/portage/media-libs/osl-1.9.9/work/OpenShadingLanguage-Release-1.9.9/src/liboslexec/pointcloud.cpp:386:5: error: static assertion failed: Only will work if Partio ParticleIndex is the size of a size_t
     static_assert (sizeof(size_t) == sizeof(Partio::ParticleIndex),
     ^~~~~~~~~~~~~

When I checked the latest partio-1.5.4 sources, I found ParticleIndex to be declared like

//! Opaque random access method to a single particle. No number is implied or guaranteed.
typedef uint64_t ParticleIndex;

On 64bit machines this might evaluate to the same size as size_t, but not on 32bit arches. BTW in a 64bit clean chroot, osl compiled against partio-1.5.4.

I have two ideas on how this issue could be solved:
a) remove x86 arch from partio
b) mask partio USE flag on osl for x86 arches
Further ideas are appreciated!

The packages were emerged like
(chroot 32) artus / # emerge -pqv =media-libs/partio-1.5.4::gentoo
[ebuild   R   ] media-libs/partio-1.5.4  USE="-doc" PYTHON_SINGLE_TARGET="python3_6 -python2_7 -python3_4 -python3_5" PYTHON_TARGETS="python2_7 python3_6 -python3_4 -python3_5" 

and

(chroot 32) artus / # emerge -pqv =media-libs/osl-1.9.9::gentoo-git
[ebuild  N    ] media-libs/osl-1.9.9  USE="partio -doc -test" CPU_FLAGS_X86="-avx -avx2 -avx512f -f16c -sse2 -sse3 -sse4_1 -sse4_2 -ssse3"
Comment 1 Bernd 2018-12-19 15:35:16 UTC
Created attachment 558160 [details]
emerge-info-chroot32.txt

emerge --info from the 32bit chroot environment.
Comment 2 Larry the Git Cow gentoo-dev 2020-03-22 18:24:17 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=644803619331091d1288fb46d35d86eb25834ca8

commit 644803619331091d1288fb46d35d86eb25834ca8
Author:     Andreas Sturmlechner <asturm@gentoo.org>
AuthorDate: 2020-03-22 18:22:02 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2020-03-22 18:24:00 +0000

    media-libs/osl: Drop 1.8.12, 1.9.6 and 1.9.9
    
    Closes: https://bugs.gentoo.org/666698
    Closes: https://bugs.gentoo.org/669508
    Closes: https://bugs.gentoo.org/673440
    Package-Manager: Portage-2.3.94, Repoman-2.3.21
    Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>

 media-libs/osl/Manifest                           |   3 -
 media-libs/osl/files/osl-1.8.12-cmake-fixes.patch | 332 ----------------------
 media-libs/osl/osl-1.8.12.ebuild                  |  70 -----
 media-libs/osl/osl-1.9.6.ebuild                   |  69 -----
 media-libs/osl/osl-1.9.9.ebuild                   |  68 -----
 5 files changed, 542 deletions(-)