Open twaik opened 1 year ago
This would indeed be a good improvement
@Grimler91 Can we cache and save somewhere build folder? I think it will be usable to make something like make test
for reverse dependencies of packages to make sure them really work with updated packages and there are no undefined reference to
errors or segmentation faults after packages upgrades. Maybe we can create something like additional apt repo only for CI with these saved packages caches.
It is hard to implement it. There is no common way to get SOVERSION for a package. Maybe it is possible to implement a function named termux_step_check_soversion
, and make this function overridable. Maintainers should write a function to get and check it.
By the way, only a little packages enable SOVERSION in their soname, to get rid of the conflict with system libraries, such as libglvnd
and libxml2
. cmake
and other configure tools disable it to let some other tools (such as Android Studio) find them, because only files with suffix .so
will be packaged in APK. We don't package libraries in APK, so I think it is possible for us to enable SOVERSION for every libraries.
It is hard to implement it.
Actually it is pretty easy. Auto-updater script can download old package and compare libraries with SOVERSION in $PREFIX/lib with current build environment.
It will not affect libraries that do not support SOVERSION.
I still don't think it is necessary to do this. Only a little packages enable SOVERSION in their soname. You can list them with apt-file
. As the auto updater always try to build a package before committing, adding SOVERSION check in termux_step_pre_configure
will do the same thing.
Problem description
Currently auto-updater bot simply check if the build succeeds, but in the case if library changes it's soversion reverse dependencies will be broken.
What steps will reproduce the bug?
Nothing, auto-updater bot does it on its own.
What is the expected behavior?
No response
System information
No response