Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 706070 - dev-python/pybind11-2.4.3 should install cmake config files
Summary: dev-python/pybind11-2.4.3 should install cmake config files
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal with 1 vote (vote)
Assignee: Jason Zaman
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks: 622726
  Show dependency tree
 
Reported: 2020-01-22 07:47 UTC by Bernd
Modified: 2020-06-02 16:10 UTC (History)
1 user (show)

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


Attachments
emerge-info-pybind11-2.4.3.txt (emerge-info-pybind11-2.4.3.txt,14.14 KB, text/plain)
2020-01-22 07:50 UTC, Bernd
Details
pybind11-2.4.3.ebuild (pybind11-2.4.3.ebuild,2.15 KB, text/plain)
2020-01-28 17:43 UTC, Bernd
Details
pybind11-2.4.3-r1.ebuild (pybind11-2.4.3-r1.ebuild,1.56 KB, text/plain)
2020-03-31 05:38 UTC, Bernd
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Bernd 2020-01-22 07:47:53 UTC
The sources from pypi mirror do not contain the cmake config files, although they are present in upstream repo, and the distutils setup.py routine does not install them.
Upstream provides both a distutils setup.py as well as a CMakeLists.txt file together with cmake config files. Also the package being a interface binding library between C++ and Python and not a pure python library, maybe we could use the more powerful and configurable CMake install method for this package?

Reproducible: Always




The package in it's current form blocks the re-adding of FreeCAD. This package depends upon pybind11 cmake config files being present.
Also there was a (outdated 2.3.0) dev-util/pybind11 ebuild for this package on ::guru, maintained by me, which I removed yesterday, when I noticed, the package has been added to the portage tree. This version used the cmake install method and therefore installed the config files. I still have it in my overlay and will update it to version 2.4.3, but hopefully we can come to a solution, where this package can be used in several ways.

emerge --info output will be attached as a file.
Comment 1 Bernd 2020-01-22 07:50:01 UTC
Created attachment 603934 [details]
emerge-info-pybind11-2.4.3.txt

output of emerge --info =pybind11-2.4.3
Comment 2 Bernd 2020-01-28 17:43:43 UTC
Created attachment 605898 [details]
pybind11-2.4.3.ebuild

I've tried to set up an ebuild using distutils-r1 and cmake for the task. The test USE flag doesn't work for now with this version, because it needs scipy with python 3.{7,8} support, which I didn't get to build successfully, so I kept it commented for now.
Also, I found the headers are not needed to be installed for every python installation seperately, but only once directly into /usr/include. The setup.py file has an option for this and the cmake file will take care of installing the headers appropriately.
I've tested it against my freecad-0.18.4.ebuild, which needs pybind11 and it seems to work. Feel free to comment on it, use it or parts of it like you wish, or ping me back, if it's ok for you, if I open a PR with this ebuild.
Thank you!
Comment 3 Bernd 2020-01-28 18:16:45 UTC
Also please note, the attached ebuild uses the download from upstream github download area, instead of the file downloaded from pypi. The two tar balls differ, but the tar ball from the current version is still cached in the mirrors...
Comment 4 Bernd 2020-03-31 05:38:17 UTC
Created attachment 627672 [details]
pybind11-2.4.3-r1.ebuild

Clean up code, remove test completely for now.
Needs USE masking on doc USE flag for powerpc/ppc32 and arm64.
Comment 5 pi 2020-04-28 20:08:51 UTC
(In reply to Bernd from comment #3)
> Also please note, the attached ebuild uses the download from upstream github
> download area, instead of the file downloaded from pypi. The two tar balls
> differ, but the tar ball from the current version is still cached in the
> mirrors...

Thx for the hint. Finally I got all the dependencies solved to successfully build  FreeCAD. Great work.
Comment 6 Bernd 2020-04-28 20:10:52 UTC
@pi the ebuild is also in my overlay ::waebbl, together with a working FreeCAD ebuild
Comment 7 Rick Farina (Zero_Chaos) gentoo-dev 2020-06-02 16:10:20 UTC
fixed in 2.5.0, thanks!