This was verified on Jammy with -proposed
(1:5.0.0~git2209-g5a7b9ce67-0ubuntu1.1). Here's how:

$ lxc launch ubuntu-daily:22.04 c1
Creating c1
Starting c1

root@c1:~# apt-get update
...
root@c1:~# apt-get install -Vy liblxc-dev
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
   libfuse2 (2.9.9-5ubuntu3)
   liblxc-common (1:5.0.0~git2209-g5a7b9ce67-0ubuntu1)
   liblxc1 (1:5.0.0~git2209-g5a7b9ce67-0ubuntu1)
   lxcfs (5.0.0-0ubuntu2)
   uidmap (1:4.8.1-2ubuntu2.1)
The following NEW packages will be installed:
   libfuse2 (2.9.9-5ubuntu3)
   liblxc-common (1:5.0.0~git2209-g5a7b9ce67-0ubuntu1)
   liblxc-dev (1:5.0.0~git2209-g5a7b9ce67-0ubuntu1)
   liblxc1 (1:5.0.0~git2209-g5a7b9ce67-0ubuntu1)
   lxcfs (5.0.0-0ubuntu2)
   uidmap (1:4.8.1-2ubuntu2.1)
0 upgraded, 6 newly installed, 0 to remove and 0 not upgraded.
Need to get 1462 kB of archives.
...

root@c1:~# dpkg -l | grep liblxc-dev
ii  liblxc-dev                      1:5.0.0~git2209-g5a7b9ce67-0ubuntu1     
amd64        Linux Containers userspace tools (development)
root@c1:~# grep LXC_DEVEL /usr/include/lxc/version.h
#define LXC_DEVEL 1


# enable -proposed

root@c1:~# apt-get update
...
root@c1:~# apt-get install -Vy liblxc-dev
...
The following packages will be upgraded:
   liblxc-common (1:5.0.0~git2209-g5a7b9ce67-0ubuntu1 => 
1:5.0.0~git2209-g5a7b9ce67-0ubuntu1.1)
   liblxc-dev (1:5.0.0~git2209-g5a7b9ce67-0ubuntu1 => 
1:5.0.0~git2209-g5a7b9ce67-0ubuntu1.1)
   liblxc1 (1:5.0.0~git2209-g5a7b9ce67-0ubuntu1 => 
1:5.0.0~git2209-g5a7b9ce67-0ubuntu1.1)
3 upgraded, 0 newly installed, 0 to remove and 32 not upgraded.
Need to get 1268 kB of archives.
...

root@c1:~# grep LXC_DEVEL /usr/include/lxc/version.h
#define LXC_DEVEL 0

** Tags removed: verification-needed-jammy
** Tags added: verification-done-jammy

-- 
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:
  [SRU] liblxc-dev was built with LXC_DEVEL=1 in Ubuntu 22.04 and later
  releases

Status in lxc package in Ubuntu:
  Fix Released
Status in lxc source package in Jammy:
  Fix Committed
Status in lxc source package in Mantic:
  Fix Committed
Status in lxc source package in Noble:
  Fix Released

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     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to