On Fri, Aug 02, 2019 at 07:03:17PM +0200, Bálint Réczey wrote:
> Control: tags -1 confirmed
> Severity: -1 wishlist
> 
> F. Poirotte <[email protected]> ezt írta (időpont: 2018.
> ápr. 7., Szo, 18:33):
> >
> > Package: libevent-dev
> > Version: 2.0.21-stable-3
> > Severity: normal
> >
> > Dear Maintainer,
> >
> > While bug #675320 added support for multi-arch for the main packages, it 
> > seems
> > the development package was overlooked. As such, it is not currently 
> > possible to
> > install the dev package for multiple architectures (eg. amd64 and i386) at 
> > the
> > same time.
> >
> > Trying to co-install multiple variants results in apt-get/aptitude trying 
> > to first
> > remove previously installed packages. Here's the trace when trying to 
> > install
> > the i386 variant on a system where the amd64 variant is already installed:
> >
> > $ sudo aptitude install libevent-dev:i386
> > The following NEW packages will be installed:
> >   libevent-core-2.0-5:i386{a} libevent-dev:i386{b} 
> > libevent-extra-2.0-5:i386{a} libevent-openssl-2.0-5:i386{a} 
> > libevent-pthreads-2.0-5:i386{a}
> > 0 packages upgraded, 5 newly installed, 0 to remove and 2 not upgraded.
> > Need to get 569 kB of archives. After unpacking 1,971 kB will be used.
> > The following packages have unmet dependencies:
> >  libevent-dev : Conflicts: libevent-dev:i386 but 2.0.21-stable-3 is to be 
> > installed
> >  libevent-dev:i386 : Conflicts: libevent-dev but 2.0.21-stable-3 is 
> > installed
> > The following actions will resolve these dependencies:
> >
> >      Remove the following packages:
> > 1)     libevent-dev [2.0.21-stable-3 (now, stable)]
> >
> >
> > Accept this solution? [Y/n/q/?] q
> >
> >
> > I checked the control file in testing/sid (libevent-2.1-6 (2.1.8-stable-4))
> > and the problem is also visible there.
> 
> Yes, this is correct.
> 
> Header files differ between architectures:
> 
> $ diffoscope libevent-dev_2.1.8-stable-4_*
> ...
> │ │ ├── ./usr/include/event2/event-config.h
> │ │ │ @@ -439,33 +439,33 @@
> │ │ │     your system. */
> │ │ │  /* #undef EVENT__PTHREAD_CREATE_JOINABLE */
> │ │ │
> │ │ │  /* The size of `int', as computed by sizeof. */
> │ │ │  #define EVENT__SIZEOF_INT 4
> │ │ │
> │ │ │  /* The size of `long', as computed by sizeof. */
> │ │ │ -#define EVENT__SIZEOF_LONG 8
> │ │ │ +#define EVENT__SIZEOF_LONG 4
> ...
> 
> This can be fixed, but the -dev packages are not co-installable currently.

This is a bit annoying, when using libevent-dev in a CI container aimed
at building for multiple architectures, we have to install the
arch-specific package version manually before each arch build job.

You mentioned it can be fixed. How would you envision that ? Ideally
upstream should geenrate a header file with SIZEOF macros, but that may
be hard to change as it could break some users.

-- 
Regards,

Laurent Pinchart

Reply via email to