Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 482874 - media-gfx/blender-2.68a - CMake Error at build_files/cmake/macros.cmake:174 (add_library): Cannot find source file: /usr/include/eigen3/Eigen/src/Core/Product.h
Summary: media-gfx/blender-2.68a - CMake Error at build_files/cmake/macros.cmake:174 (...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Julian Ospald
URL:
Whiteboard:
Keywords: PATCH
Depends on:
Blocks:
 
Reported: 2013-08-29 03:22 UTC by Andrew Savchenko
Modified: 2013-10-29 10:17 UTC (History)
4 users (show)

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


Attachments
build.log (build.log,15.58 KB, text/x-log)
2013-08-29 03:22 UTC, Andrew Savchenko
Details
environment (environment,158.58 KB, text/plain)
2013-08-29 03:22 UTC, Andrew Savchenko
Details
emerge --info (emerge.info,8.43 KB, text/plain)
2013-08-29 03:23 UTC, Andrew Savchenko
Details
blender-2.68-eigen-checks.patch (blender-2.68-eigen-checks.patch,1.21 KB, patch)
2013-08-29 08:05 UTC, Andrew Savchenko
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Savchenko gentoo-dev 2013-08-29 03:22:20 UTC
Hello,

blender-2.68a fails to build with dev-cpp/eigen-3.2.0 (from science overlay):

CMake Error at build_files/cmake/macros.cmake:174 (add_library):                                                                                                              
  Cannot find source file:                                                                                                                                                    
                                                                                                                                                                              
    /usr/include/eigen3/Eigen/src/Core/Product.h                                                                                                                              
                                                                                                                                                                              
  Tried extensions .c .C .c++ .cc .cpp .cxx .m .M .mm .h .hh .h++ .hm .hpp                                                                                                    
  .hxx .in .txx                                                                                                                                                               
Call Stack (most recent call first):                                                                                                                                          
  build_files/cmake/macros.cmake:189 (blender_add_lib_nolist)                                                                                                                 
  intern/itasc/CMakeLists.txt:356 (blender_add_lib)
Comment 1 Andrew Savchenko gentoo-dev 2013-08-29 03:22:38 UTC
Created attachment 357290 [details]
build.log
Comment 2 Andrew Savchenko gentoo-dev 2013-08-29 03:22:59 UTC
Created attachment 357292 [details]
environment
Comment 3 Andrew Savchenko gentoo-dev 2013-08-29 03:23:37 UTC
Created attachment 357294 [details]
emerge --info
Comment 4 Andrew Savchenko gentoo-dev 2013-08-29 08:05:07 UTC
Created attachment 357298 [details, diff]
blender-2.68-eigen-checks.patch

Blender-2.68a itself is API-compatible with eigen-3.2.0. The problem is in braindead cmake checks for eigen: it checks all headers, even those not used by blender directly. This problem can be fixed by removing offending checks. Afterwards blender builds and works fine.
Comment 5 Markus Walter 2013-09-15 11:58:14 UTC
I can confirm this problem on ~amd64, eigen-3.1.4 from science overlay works fine.
Comment 6 Bernd Feige 2013-10-29 08:32:19 UTC
(In reply to Andrew Savchenko from comment #4)
> Created attachment 357298 [details, diff] [details, diff]
> blender-2.68-eigen-checks.patch
> 
> Blender-2.68a itself is API-compatible with eigen-3.2.0. The problem is in
> braindead cmake checks for eigen: it checks all headers, even those not used
> by blender directly. This problem can be fixed by removing offending checks.
> Afterwards blender builds and works fine.

Confirmed here as well (~amd64, science overlay). Actually I'd suggest that current files/05-blender-2.68-unbundle-eigen3.patch should be modified - currently it fixes the paths to all individual include files to /usr/include (in intern/itasc/CMakeLists.txt) but it should actually simply remove these "source" lines. cmake is supposed to check included files itself.

Best regards,
Bernd
Comment 7 Julian Ospald 2013-10-29 10:17:35 UTC
science overlay looks unmaintained, it gives errors on cache generation and creates a lot of blockers for me, so don't expect me to test anything against that overlay

however, the header checks are definitely useless


+  29 Oct 2013; Julian Ospald <hasufell@gentoo.org>
+  files/05-blender-2.68-unbundle-eigen3.patch:
+  supposedly fix bug 482874