EasyRPG / packaging

Config files used for different distributions to build EasyRPG packages
7 stars 2 forks source link

OBS: How to check for needed rebuilds? #2

Open carstene1ns opened 8 years ago

carstene1ns commented 8 years ago

Currently, the builds of Player and liblcf(0) stay the same until someone rebuilds them manually. Distribution packages are updated in the meantime. For most shared libraries it makes no difference as the api does not change (i.e. recent SDL updates) However, ICU will insert it's version information and this forces us to do a rebuild after each ICU update.

For Arch Linux this needs to increment the $pkgrel in the PKGBUILD and I pay attention for updates to the ICU package, so Player will not be 'broken' for long hopefully. But this needs to be taken care of for the other distributions as well.

fdelapena commented 8 years ago

Wow, aren't ICU package changes ABI compatible even between pkgrel changes? This looks pretty nonsense :weary: How is liblcf/player breaking when this happens? Is it not possible to require a version or later like pkg-config do but for distro packages configuration? :disappointed: I don't remember a mass package rebuild in distros I use because of this... strange. Some distros have a package update monitor system... in case of requiring this, it should be distro (and version) specific.

Ghabry commented 8 years ago

ICU appends the version number to all function calls.

This can be disabled globally via U_DISABLE_RENAMING but the system lib must be compiled with this

Could you check the exported symbols on Debian and Fedora?

fdelapena commented 8 years ago

Fedora:

$ strings /usr/lib64/libicui18n.so | grep ucsdet_detect
ucsdet_detect_54
ucsdet_detectAll_54

However, ICU major version shouldn't change in non-rolling distros. I guess this issue only happens in rolling. e.g. openSUSE tumbleweed and Arch and only around every 6 months, current schedule is in the ICU homepage below the table of contents (right side):

2015-10-07  56 Release (56.1)
2016-01-30  57 Milestone 1 (tag only)
2016-03-09  57 Release Candidate
2016-03-23  57 Release (57.1)

But I guess this particular issue has nothing to do with carstene1ns mentions.

carstene1ns commented 2 years ago

Another issue is expired signatures, like #13 mentioned. Maybe a "cron job" with monthly (or whenever the signatures expire) rebuild is sufficient for now.