Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

_SoapySDR.so / SoapySDRPYTHON_wrap.h reproducible builds issue #428

Open
bmwiedemann opened this issue Jan 7, 2024 · 1 comment
Open

Comments

@bmwiedemann
Copy link

While working on reproducible builds for openSUSE, I found that
our soapy-sdr 0.8.1 build output can vary, unless we run non-parallel builds.

There is some race condition in the build-system about how the python and python3 files are created.

-/usr/src/debug/SoapySDR-soapy-sdr-0.8.1/build/python 0 (none) 40755 root root 0 4294967295
-/usr/src/debug/SoapySDR-soapy-sdr-0.8.1/build/python/CMakeFiles 0 (none) 40755 root root 0 4294967295
-/usr/src/debug/SoapySDR-soapy-sdr-0.8.1/build/python/CMakeFiles/_SoapySDR.dir 0 (none) 40755 root root 0 4294967295
-/usr/src/debug/SoapySDR-soapy-sdr-0.8.1/build/python/CMakeFiles/_SoapySDR.dir/SoapySDRPYTHON_wrap.cxx 0 (none) 100644 root root 0 4294967295
-/usr/src/debug/SoapySDR-soapy-sdr-0.8.1/build/python/CMakeFiles/_SoapySDR.dir/SoapySDRPYTHON_wrap.h 0 (none) 100644 root root 0 4294967295
+/usr/src/debug/SoapySDR-soapy-sdr-0.8.1/build/python3 0 (none) 40755 root root 0 4294967295
+/usr/src/debug/SoapySDR-soapy-sdr-0.8.1/build/python3/CMakeFiles 0 (none) 40755 root root 0 4294967295
+/usr/src/debug/SoapySDR-soapy-sdr-0.8.1/build/python3/CMakeFiles/SoapySDR3.dir 0 (none) 40755 root root 0 4294967295
+/usr/src/debug/SoapySDR-soapy-sdr-0.8.1/build/python3/CMakeFiles/SoapySDR3.dir/SoapySDRPYTHON_wrap.cxx 0 (none) 100644 root root 0 4294967295
+/usr/src/debug/SoapySDR-soapy-sdr-0.8.1/build/python3/CMakeFiles/SoapySDR3.dir/SoapySDRPYTHON_wrap.h 0 (none) 100644 root root 0 4294967295

Is there a way to always generate the python3 variant after the python one?

@guruofquality
Copy link
Contributor

The swig/python directory should operate as its own CMake project

So once soapysdr the c++ library is built and installed, you can invoke swig/python/ in parallel to build against as many different python installations as needed

That what I had done for other build systems at least

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants