Ok, I'm attaching a debdiff for Noble.
Changelog:
Import LXC 5.0.3
- imported LXC 5.0.3 original sources
- dropped all debian/patches which are present in the LXC 5.0.3 already
- added autopkgtest to ensure that LXC_DEVEL is always 0
- aligned package names with the Debian ones:
* lxc-utils and lxc1 are now transitional to lxc
* lxc takes a place of lxc-utils and ships lxc-* utilities
* liblxc-dev is now transitional to lxc-dev
* lxc-dev takes a place of liblxc-dev and ships liblxc headers
* upgrade path fixes by Simon Deziel
Big thanks to Simon Deziel and Stéphane Graber for advices and help.
Tested by Simon Déziel and me using PPA:
https://launchpad.net/~mihalicyn/+archive/ubuntu/lxc-test-ppa
Git tree (both are equal):
https://git.launchpad.net/~mihalicyn/ubuntu/+source/lxc/log/?h=ubuntu/noble-devel
https://github.com/mihalicyn/lxc-pkg-ubuntu/commits/ubuntu/noble-devel
** Patch added: "debdiff for noble"
https://bugs.launchpad.net/ubuntu/+source/lxc/+bug/2039873/+attachment/5723397/+files/noble_5.0.1_to_5.0.3_debdiff.diff
--
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to lxc in Ubuntu.
https://bugs.launchpad.net/bugs/2039873
Title:
liblxc-dev was built with LXC_DEVEL=1 in Ubuntu 22.04 and later
releases
Status in lxc package in Ubuntu:
Confirmed
Bug description:
[ Impact ]
LXC 5.0.0 was built with LXC_DEVEL=1 set for Jammy. But for release
build we should have LXC_DEVEL=0.
LXC_DEVEL is a variable that appears in the /usr/include/lxc/version.h
and then can be (and actually it is) used by other projects to detect
if liblxc-dev is a development build or stable.
Having LXC_DEVEL=1 makes problems for the users who want to build projects
those are depend on liblxc
from source (for example, LXD, go-lxc:
https://github.com/canonical/lxd/pull/12420).
Q: Why it was not a problem for so long?
A: Because LXC API was stable for a long time, but recently we have extended
liblxc API (https://github.com/lxc/lxc/pull/4260) and dependant package go-lxc
was updated too (https://github.com/lxc/go-lxc/pull/166).
This change was developed properly to be backward compatible with the old
versions of liblxc. But, there is a problem. If LXC_DEVEL=1 then the macro
check VERSION_AT_LEAST
(https://github.com/lxc/go-lxc/blob/ccae595aa49e779f7ecc9250329967aa546acd31/lxc-binding.h#L7)
is disabled. That's why we should *not* have LXC_DEVEL=1 for *any* release
build of LXC.
[ Test Plan ]
Install liblxc-dev package and check /usr/include/lxc/version.h file
LXC_DEVEL should be 0
[ Where problems could occur ]
Theoretically, build of a software which depends on liblxc-dev may start to
fail
if it assumes that LXC_DEVEL is 1.
[ Other Info ]
-
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/lxc/+bug/2039873/+subscriptions
--
Mailing list: https://launchpad.net/~touch-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~touch-packages
More help : https://help.launchpad.net/ListHelp