[Pkg-freeipa-devel] Bug#1089367: libmozilla-ldap-perl: Supporting rootless builds by default

Niels Thykier niels at thykier.net
Sat Dec 7 19:34:48 GMT 2024


Source: libmozilla-ldap-perl
Version: 1.5.3-3
Severity: important
Tags: ftbfs
Justification: FTBFS
X-Debbugs-Cc: niels at thykier.net
User: niels at thykier.net
Usertags: rrr-no-as-default-issue

Dear maintainer,

During a test rebuild for building packages with
`Rules-Requires-Root: no` as the default in `dpkg`,
libmozilla-ldap-perl failed to rebuild.

Log Summary:
-------------------------------------------------------------------------------
[...]
  1105 | berptrptr2avref(struct berval **bval)
       | ^~~~~~~~~~~~~~~
API.c:300:1: warning: ‘perldap_calloc’ defined but not used 
[-Wunused-function]
   300 | perldap_calloc(size_t number, size_t size)
       | ^~~~~~~~~~~~~~
In file included from API.c:92:
constant.h:72:1: warning: ‘not_here’ defined but not used 
[-Wunused-function]
    72 | not_here(s)
       | ^~~~~~~~
In file included from /usr/lib/aarch64-linux-gnu/perl/5.40/CORE/perl.h:6225,
                  from API.c:61:
API.c: In function ‘XS_Mozilla__LDAP__API_ldap_memcache_get’:
/usr/lib/aarch64-linux-gnu/perl/5.40/CORE/embed.h:726:49: warning: 
‘cachep’ may be used uninitialized [-Wmaybe-uninitialized]
   726 | # define sv_setiv(a,b) 
Perl_sv_setiv(aTHX_ a,b)
       | 
^~~~~~~~~~~~~~~~~~~~~~~~
API.c:3235:9: note: in expansion of macro ‘sv_setiv’
  3235 |         sv_setiv(ST(1), PTR2IV(cachep));
       |         ^~~~~~~~
API.c:3226:25: note: ‘cachep’ was declared here
  3226 |         LDAPMemCache ** cachep;
       |                         ^~~~~~
In function ‘perldap_ldap_create_virtuallist_control’,
     inlined from 
‘XS_Mozilla__LDAP__API_ldap_create_virtuallist_control’ at API.c:2303:11:
API.c:496:11: warning: ‘ctrlp’ may be used uninitialized 
[-Wmaybe-uninitialized]
   496 |     ret = ldap_create_vlv_control(ld, &ldvlvinfo, ctrlp);
       |           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
API.c: In function ‘XS_Mozilla__LDAP__API_ldap_create_virtuallist_control’:
API.c:2300:25: note: ‘ctrlp’ was declared here
  2300 |         LDAPControl **  ctrlp;
       |                         ^~~~~
API.c: In function ‘XS_Mozilla__LDAP__API_ldap_memcache_init’:
/usr/lib/aarch64-linux-gnu/perl/5.40/CORE/embed.h:726:49: warning: 
‘cachep’ may be used uninitialized [-Wmaybe-uninitialized]
   726 | # define sv_setiv(a,b) 
Perl_sv_setiv(aTHX_ a,b)
       | 
^~~~~~~~~~~~~~~~~~~~~~~~
API.c:3266:9: note: in expansion of macro ‘sv_setiv’
  3266 |         sv_setiv(ST(3), PTR2IV(cachep));
       |         ^~~~~~~~
API.c:3257:25: note: ‘cachep’ was declared here
  3257 |         LDAPMemCache ** cachep;
       |                         ^~~~~~
API.c: In function ‘XS_Mozilla__LDAP__API_ldap_parse_entrychange_control’:
/usr/lib/aarch64-linux-gnu/perl/5.40/CORE/embed.h:726:49: warning: 
‘chgnumpresentp’ may be used uninitialized [-Wmaybe-uninitialized]
   726 | # define sv_setiv(a,b) 
Perl_sv_setiv(aTHX_ a,b)
       | 
^~~~~~~~~~~~~~~~~~~~~~~~
API.c:3784:9: note: in expansion of macro ‘sv_setiv’
  3784 |         sv_setiv(ST(4), (IV)chgnumpresentp);
       |         ^~~~~~~~
API.c:3774:17: note: ‘chgnumpresentp’ was declared here
  3774 |         int     chgnumpresentp;
       |                 ^~~~~~~~~~~~~~
/usr/lib/aarch64-linux-gnu/perl/5.40/CORE/embed.h:726:49: warning: 
‘chgtypep’ may be used uninitialized [-Wmaybe-uninitialized]
   726 | # define sv_setiv(a,b) 
Perl_sv_setiv(aTHX_ a,b)
       | 
^~~~~~~~~~~~~~~~~~~~~~~~
API.c:3780:9: note: in expansion of macro ‘sv_setiv’
  3780 |         sv_setiv(ST(2), (IV)chgtypep);
       |         ^~~~~~~~
API.c:3772:25: note: ‘chgtypep’ was declared here
  3772 |         my_chgtype_t    chgtypep;
       |                         ^~~~~~~~
/usr/lib/aarch64-linux-gnu/perl/5.40/CORE/embed.h:730:49: warning: 
‘prevdnp’ may be used uninitialized [-Wmaybe-uninitialized]
   730 | # define sv_setpv(a,b) 
Perl_sv_setpv(aTHX_ a,b)
       | 
^~~~~~~~~~~~~~~~~~~~~~~~
API.c:3782:9: note: in expansion of macro ‘sv_setpv’
  3782 |         sv_setpv((SV*)ST(3), prevdnp);
       |         ^~~~~~~~
API.c:3773:17: note: ‘prevdnp’ was declared here
  3773 |         char *  prevdnp;
       |                 ^~~~~~~
In function ‘perldap_ldap_create_sort_control’,
     inlined from ‘XS_Mozilla__LDAP__API_ldap_create_sort_control’ at 
API.c:2256:11:
API.c:408:39: warning: ‘ctrlp’ may be used uninitialized 
[-Wmaybe-uninitialized]
   408 |     if ( sortKeyList == NULL || ctrlp == NULL ) {
       |                                       ^
API.c: In function ‘XS_Mozilla__LDAP__API_ldap_create_sort_control’:
API.c:2253:25: note: ‘ctrlp’ was declared here
  2253 |         LDAPControl **  ctrlp;
       |                         ^~~~~
In function ‘perldap_ldap_create_persistentsearch_control’,
     inlined from 
‘XS_Mozilla__LDAP__API_ldap_create_persistentsearch_control’ at 
API.c:2229:11:
API.c:359:15: warning: ‘ctrlp’ may be used uninitialized 
[-Wmaybe-uninitialized]
   359 |     if (ctrlp == NULL || (changetypes & 
~(LDAP_CONTROL_PERSIST_ENTRY_CHANGE_ADD |
       |               ^
API.c: In function 
‘XS_Mozilla__LDAP__API_ldap_create_persistentsearch_control’:
API.c:2226:25: note: ‘ctrlp’ was declared here
  2226 |         LDAPControl **  ctrlp;
       |                         ^~~~~
rm -f blib/arch/auto/Mozilla/LDAP/API/API.so
aarch64-linux-gnu-gcc  -shared -L/usr/local/lib -fstack-protector-strong 
  API.o  -o blib/arch/auto/Mozilla/LDAP/API/API.so  \
    -lldap -llber -lnss3 -lnssutil3 -lsmime3 -lssl3 -lplds4 -lplc4 
-lnspr4   \
   chmod 755 blib/arch/auto/Mozilla/LDAP/API/API.so
Manifying 5 pod documents
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
touch build-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_clean: warning: dh_clean -k is deprecated; use dh_prep instead
dh_clean: warning: This feature will be removed in compat 12.
/usr/bin/make test
make[1]: Entering directory '/<<PKGBUILDDIR>>'
"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- API.bs 
blib/arch/auto/Mozilla/LDAP/API/API.bs 644
PERL_DL_NONLAZY=1 "/usr/bin/perl" "-MExtUtils::Command::MM" 
"-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 
'blib/lib', 'blib/arch')" t/*.t
t/api.t .... ok
t/conn.t ... ok
t/entry.t .. ok
t/ldif.t ... ok
t/utils.t .. ok
All tests successful.
Files=5, Tests=5,  0 wallclock secs ( 0.03 usr  0.01 sys +  0.05 cusr 
0.03 csys =  0.12 CPU)
Result: PASS
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
/usr/bin/make install 
DESTDIR=/<<PKGBUILDDIR>>/debian/libmozilla-ldap-perl PREFIX=/usr
make[1]: Entering directory '/<<PKGBUILDDIR>>'
"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- API.bs 
blib/arch/auto/Mozilla/LDAP/API/API.bs 644
Manifying 5 pod documents
Files found in blib/arch: installing files in blib/lib into architecture 
dependent library tree
Installing 
/<<PKGBUILDDIR>>/debian/libmozilla-ldap-perl/usr/lib/aarch64-linux-gnu/perl5/5.40/auto/Mozilla/LDAP/API/API.so
Installing 
/<<PKGBUILDDIR>>/debian/libmozilla-ldap-perl/usr/lib/aarch64-linux-gnu/perl5/5.40/auto/Mozilla/LDAP/API/autosplit.ix
Installing 
/<<PKGBUILDDIR>>/debian/libmozilla-ldap-perl/usr/lib/aarch64-linux-gnu/perl5/5.40/Mozilla/LDAP/LDIF.pm
Installing 
/<<PKGBUILDDIR>>/debian/libmozilla-ldap-perl/usr/lib/aarch64-linux-gnu/perl5/5.40/Mozilla/LDAP/API.pm
Installing 
/<<PKGBUILDDIR>>/debian/libmozilla-ldap-perl/usr/lib/aarch64-linux-gnu/perl5/5.40/Mozilla/LDAP/Conn.pm
Installing 
/<<PKGBUILDDIR>>/debian/libmozilla-ldap-perl/usr/lib/aarch64-linux-gnu/perl5/5.40/Mozilla/LDAP/Entry.pm
Installing 
/<<PKGBUILDDIR>>/debian/libmozilla-ldap-perl/usr/lib/aarch64-linux-gnu/perl5/5.40/Mozilla/LDAP/Utils.pm
Installing 
/<<PKGBUILDDIR>>/debian/libmozilla-ldap-perl/usr/share/man/man3/Mozilla::LDAP::Conn.3pm
Installing 
/<<PKGBUILDDIR>>/debian/libmozilla-ldap-perl/usr/share/man/man3/Mozilla::LDAP::Entry.3pm
Installing 
/<<PKGBUILDDIR>>/debian/libmozilla-ldap-perl/usr/share/man/man3/Mozilla::LDAP::LDIF.3pm
Installing 
/<<PKGBUILDDIR>>/debian/libmozilla-ldap-perl/usr/share/man/man3/Mozilla::LDAP::API.3pm
Installing 
/<<PKGBUILDDIR>>/debian/libmozilla-ldap-perl/usr/share/man/man3/Mozilla::LDAP::Utils.3pm
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
touch install-stamp
dh_testdir
dh_testroot
dh_installexamples examples/*
dh_installdocs CREDITS README dh_installchangelogs ChangeLog
dh_strip -a
strip: unable to copy file 
'debian/libmozilla-ldap-perl/usr/lib/aarch64-linux-gnu/perl5/5.40/auto/Mozilla/LDAP/API/API.so'; 
reason: Permission denied
dh_strip: error: strip --remove-section=.comment --remove-section=.note 
debian/libmozilla-ldap-perl/usr/lib/aarch64-linux-gnu/perl5/5.40/auto/Mozilla/LDAP/API/API.so 
returned exit code 1
dh_strip: error: Aborting due to earlier error
make: *** [debian/rules:50: binary-arch] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit 
status 2
--------------------------------------------------------------------------------
Build finished at 2024-11-17T03:02:53Z

-------------------------------------------------------------------------------


The above is just how the build ends and not necessarily the most
relevant part. If required, the full build log is available here:

https://people.debian.org/~nthykier/rrr-no-as-default/logs/1011334.gz

You can find common solutions at
https://people.debian.org/~nthykier/rrr-no-as-default/docs/solutions.md

If this is really a bug in one of the build-depends, please use
reassign and affects, so that this is still visible in the BTS web
page for this package.

If this package is listed in
https://people.debian.org/~nthykier/rrr-no-as-default/docs/static-ownership.list,
then please just set `Rules-Requires-Root: binary-targets` to the source
stanza of `debian/control` as a fix to this bug.

If this package is listed in
https://people.debian.org/~nthykier/rrr-no-as-default/docs/maybe-misbuilds.list,
then the package was deemed at risk for misbuilding (having wrong
ownership) but had a FTBFS problem we tested it. Please test whether the
package works with `Rules-Requires-Root: no` validating that the
resulting deb has the correct ownership for all paths in the deb.

The goal is to have the default changed in `dpkg` either in `Trixie` or
`Forky`, depending on progress and feasibility with the release schedule
for Trixie.

For more information on this bug filing, please see:
https://lists.debian.org/debian-dpkg/2024/11/msg00016.html

Thanks,


PS: The builds were performed in mid-November. If you fixed the problem
between between then and this bug being filed, then please just close
the bug with the version it was fixed in.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/pkg-freeipa-devel/attachments/20241207/ea50a58d/attachment-0001.sig>


More information about the Pkg-freeipa-devel mailing list