Hi, > From: Bartosz Golaszewski <brgl@xxxxxxxx> > > On Mon, Oct 12, 2020 at 5:18 PM SZ Lin (林上智) <SZ.Lin@xxxxxxxx> wrote: > > > > Hi, > > > > <snip> > > > > > I personally don't care much about how desktop distros handle this - > > > I'm mostly interested in bespoke embedded distros built with yocto > > > or buildroot. I'm Cc'ing SZ Lin who maintains the libgpiod debian package. > > > > Nowadays, many embedded distros are derived from Debian, such as > > Raspberry Pi OS (previously called Raspbian). Moreover, the > > meta-debian [1] provides the recipes for the Poky build system to build images > using Debian source packages within the Yocto project [2]. > > > > [1] https://github.com/meta-debian/meta-debian > > [2] > > https://www.yoctoproject.org/learn-items/deby-reproducible-and-maintai > > nable-embedded-linux-environment-with-poky/ > > > > > > > > SZ Lin: libgpiod will get a new major release in the following > > > months > > > - the API will become v2.x and ABI v3.x - do you think it's > > > important to make it possible for two major versions of libgpiod to > > > live together in a single system? I > > > > It's possible, but I think it's *no strongly needed* and there are no > > other Debian packages depend on libgpiod, as shown below. > > > > === > > apt rdepends libgpiod2 > > libgpiod2 > > Reverse Depends: > > Depends: libgpiod-dev (= 1.5.2-1) > > Depends: python3-libgpiod (= 1.5.2-1) > > Depends: gpiod (>= 1.5.1) > > === > > > > All of the above binary packages are built from the same (libgpiod) source > package. > > > > > would like to avoid having to rename everything and use libgpiod2.0 > > > everywhere - this information is already stored in the API version. > > > Does debian support something like yocto's virtual providers maybe? > > > How do you see this for a desktop distro. > > > > I'm not familiar with Yocto's mechanism, but in this case, the ABI > > changes seem that are not backward-compatible; we normally require > > changing the SONAME of the library and the shared library package name. > > > > For the SONAME it's clear: current libgpiod.so.2 will become libgpiod.so.3. For > the library package name: this is already handled by distros - for instance the > package in debian is called libgpiod2. I guess it will become libgpiod3 then. I > think we're good in that regard then. Exactly, we're on the same page. SZ > > Bartosz