Overview
There is no need for the service, you can use as source url https://github.com/cbrunet/python-poppler/archive/v0.2.2.tar.gz
Also you need to pass our variables to the cmake it seems, see how I had to tweak it up for python-onnx, it is bit tougher. General gist is to not run the buildsystems using the setup.py <whatever> but prepare them in advance and then just let setup.py to utilize them.
Hi Tomáš, thanks for the comments.
I've analyzed the cmake build thoroughly and I cannot see the need to run this manually. All it does is redirecting the output to a "cpp" subfolder in the python module build folder.
I've added a patch to use the system pybind11 and some tweaks to have a verbose build. Consequently, pybind11 is excluded from _service (that I would like to keep for the sake of flexibility). That reduced the source tarball by ~400k.
Could you check the build log with the new builds, please. From my POV, that should work with multiple pythons as well.
The requirement is to use suse provided compiler flags which setup.py build is not doing. That by default is not fatal but hides issues and loses some of the hardening we enforce. Thats why it needs to be done separately.
Also saving 400 kb and using services instead of the tarball that is handy is still kinda pointless.
Well, as written, it does take the CXXFLAGS into account. I've enabled verbose builds to check for that fact. Okay, here's an excerpt (from a 15.2 build):
/usr/bin/c++ -Dembedded_file_EXPORTS -isystem /usr/include/python3.6m -isystem /usr/include/poppler/cpp -isystem /usr/include/poppler -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -g -DVERSION_INFO=\"0.2.2\" -g -fPIC -fvisibility=hidden -std=c++14 -o CMakeFiles/embedded_file.dir/src/cpp/embedded_file.cpp.o -c /home/abuild/rpmbuild/BUILD/python-poppler-0.2.2/src/cpp/embedded_file.cpp
As you can see, the usual compile flags are provided.
Again, the tarball still doesn't contain unit tests, but note, that exactly activating these tests has revealed a pretty severe reference vanished/garbage collector issue last week, resulting in segfaults. These segfaults didn't occur, if the unit tests were executed with the very same module installed (outside the build environment), that failed the build before...
Please see https://github.com/cbrunet/python-poppler/issues/19 for all the gory details.
If you insist in removing the disabled service, I'm going to revoke this request.