[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1089442: stfl: Supporting rootless builds by default



Source: stfl
Version: 0.22-4
Severity: important
Tags: ftbfs
Justification: FTBFS
X-Debbugs-Cc: niels@thykier.net
User: niels@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`,
stfl failed to rebuild.

Log Summary:
-------------------------------------------------------------------------------
[...]
mkdir -p /<<PKGBUILDDIR>>/debian/tmp/usr/include
install -m 644 libstfl.a /<<PKGBUILDDIR>>/debian/tmp/usr/lib
install -m 644 stfl.h /<<PKGBUILDDIR>>/debian/tmp/usr/include/
install -m 644 stfl.pc /<<PKGBUILDDIR>>/debian/tmp/usr/lib/pkgconfig/
install -m 644 libstfl.so.0.22 /<<PKGBUILDDIR>>/debian/tmp/usr/lib
ln -fs libstfl.so.0.22 /<<PKGBUILDDIR>>/debian/tmp/usr/lib/libstfl.so
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
# perl
/usr/bin/make -C perl5 install DESTDIR=/<<PKGBUILDDIR>>/debian/tmp PREFIX=/usr
make[1]: Entering directory '/<<PKGBUILDDIR>>/perl5'
"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- stfl.bs blib/arch/auto/stfl/stfl.bs 644 Files found in blib/arch: installing files in blib/lib into architecture dependent library tree Installing /<<PKGBUILDDIR>>/debian/tmp/usr/lib/aarch64-linux-gnu/perl5/5.40/auto/stfl/stfl.so Installing /<<PKGBUILDDIR>>/debian/tmp/usr/lib/aarch64-linux-gnu/perl5/5.40/example.pl Installing /<<PKGBUILDDIR>>/debian/tmp/usr/lib/aarch64-linux-gnu/perl5/5.40/stfl.pm
make[1]: Leaving directory '/<<PKGBUILDDIR>>/perl5'
sed -e 's;@PERL_ARCHLIB@;/usr/lib/aarch64-linux-gnu/perl5/5.40;g' debian/libstfl-perl.install.in > debian/libstfl-perl.install
# ruby
dh_ruby --install

┌──────────────────────────────────────────────────────────────────────────────┐
│ libstfl-ruby: Install files
└──────────────────────────────────────────────────────────────────────────────┘


┌──────────────────────────────────────────────────────────────────────────────┐
│ libstfl-ruby: Build native extensions for ruby3.1
└──────────────────────────────────────────────────────────────────────────────┘

/usr/bin/ruby3.1 /usr/lib/ruby/vendor_ruby/gem2deb/extension_builder.rb /<<PKGBUILDDIR>>/ruby debian/libstfl-ruby
current directory: /<<PKGBUILDDIR>>/ruby
["/usr/bin/ruby3.1", "-I/usr/lib/ruby/vendor_ruby", "extconf.rb"]
../swig/basedecls.i:51: Warning 801: Wrong class name (corrected to `Stfl_form') ../swig/basedecls.i:51: Warning 801: Wrong class name (corrected to `Stfl_form')
creating Makefile
current directory: /<<PKGBUILDDIR>>/ruby
["make", "V=1", "CC=gcc -fdebug-prefix-map=/<<PKGBUILDDIR>>/ruby=.", "CXX=g++ -fdebug-prefix-map=/<<PKGBUILDDIR>>/ruby=.", "DESTDIR=", "sitearchdir=./.gem.20241118-337-goshao", "sitelibdir=./.gem.20241118-337-goshao", "clean"]
make[1]: Entering directory '/<<PKGBUILDDIR>>/ruby'
rm -f rm -fr stfl.so false *.o  *.bak mkmf.log .*.time
make[1]: Leaving directory '/<<PKGBUILDDIR>>/ruby'
current directory: /<<PKGBUILDDIR>>/ruby
["make", "V=1", "CC=gcc -fdebug-prefix-map=/<<PKGBUILDDIR>>/ruby=.", "CXX=g++ -fdebug-prefix-map=/<<PKGBUILDDIR>>/ruby=.", "DESTDIR=", "sitearchdir=./.gem.20241118-337-goshao", "sitelibdir=./.gem.20241118-337-goshao"]
make[1]: Entering directory '/<<PKGBUILDDIR>>/ruby'
gcc -fdebug-prefix-map=/<<PKGBUILDDIR>>/ruby=. -I. -I/usr/include/aarch64-linux-gnu/ruby-3.1.0 -I/usr/include/ruby-3.1.0/ruby/backward -I/usr/include/ruby-3.1.0 -I. -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=BUILDDIR=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fPIC -I.. -fPIC -o stfl_wrap.o -c stfl_wrap.c
rm -f stfl.so
gcc -fdebug-prefix-map=/<<PKGBUILDDIR>>/ruby=. -shared -o stfl.so stfl_wrap.o -L. -L/usr/lib/aarch64-linux-gnu -L. -Wl,-z,relro -Wl,-z,now -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed -Wl,-z,relro -Wl,-z,now -lruby-3.1 -lm -lc ../libstfl.a -lncursesw
make[1]: Leaving directory '/<<PKGBUILDDIR>>/ruby'
current directory: /<<PKGBUILDDIR>>/ruby
["make", "V=1", "CC=gcc -fdebug-prefix-map=/<<PKGBUILDDIR>>/ruby=.", "CXX=g++ -fdebug-prefix-map=/<<PKGBUILDDIR>>/ruby=.", "DESTDIR=", "sitearchdir=./.gem.20241118-337-goshao", "sitelibdir=./.gem.20241118-337-goshao", "install"]
make[1]: Entering directory '/<<PKGBUILDDIR>>/ruby'
/bin/mkdir -p . ./.gem.20241118-337-goshao
exit > .sitearchdir.time
/usr/bin/install -c -m 0755 stfl.so ./.gem.20241118-337-goshao
make[1]: Leaving directory '/<<PKGBUILDDIR>>/ruby'
current directory: /<<PKGBUILDDIR>>/ruby
["make", "V=1", "CC=gcc -fdebug-prefix-map=/<<PKGBUILDDIR>>/ruby=.", "CXX=g++ -fdebug-prefix-map=/<<PKGBUILDDIR>>/ruby=.", "DESTDIR=", "sitearchdir=./.gem.20241118-337-goshao", "sitelibdir=./.gem.20241118-337-goshao", "clean"]
make[1]: Entering directory '/<<PKGBUILDDIR>>/ruby'
rm -f rm -fr stfl.so false *.o  *.bak mkmf.log .*.time
make[1]: Leaving directory '/<<PKGBUILDDIR>>/ruby'
current directory: /<<PKGBUILDDIR>>/ruby
/usr/bin/ruby3.1 -I/usr/lib/ruby/vendor_ruby extconf.rb
current directory: /<<PKGBUILDDIR>>/ruby
make V\=1 CC\=gcc\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>/ruby\=. CXX\=g++\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>/ruby\=. DESTDIR\= sitearchdir\=./.gem.20241118-337-goshao sitelibdir\=./.gem.20241118-337-goshao clean
current directory: /<<PKGBUILDDIR>>/ruby
make V\=1 CC\=gcc\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>/ruby\=. CXX\=g++\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>/ruby\=. DESTDIR\= sitearchdir\=./.gem.20241118-337-goshao sitelibdir\=./.gem.20241118-337-goshao
current directory: /<<PKGBUILDDIR>>/ruby
make V\=1 CC\=gcc\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>/ruby\=. CXX\=g++\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>/ruby\=. DESTDIR\= sitearchdir\=./.gem.20241118-337-goshao sitelibdir\=./.gem.20241118-337-goshao install
current directory: /<<PKGBUILDDIR>>/ruby
make V\=1 CC\=gcc\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>/ruby\=. CXX\=g++\ -fdebug-prefix-map\=/<<PKGBUILDDIR>>/ruby\=. DESTDIR\= sitearchdir\=./.gem.20241118-337-goshao sitelibdir\=./.gem.20241118-337-goshao clean

┌──────────────────────────────────────────────────────────────────────────────┐
│ libstfl-ruby: Install Rubygems integration metadata
└──────────────────────────────────────────────────────────────────────────────┘

/usr/bin/ruby3.1 /usr/bin/gem2deb-test-runner

┌──────────────────────────────────────────────────────────────────────────────┐
│ Run tests for ruby3.1: no test suite!
└──────────────────────────────────────────────────────────────────────────────┘


┌──────────────────────────────────────────────────────────────────────────────┐
│ dh_ruby --install finished
└──────────────────────────────────────────────────────────────────────────────┘

dh_testdir
dh_testroot
dh_installchangelogs
dh_installdocs
dh_installexamples -plibstfl-dev example.c example.stfl
dh_install
dh_installman
dh_link
dh_strip
strip: unable to copy file 'debian/libstfl-perl/usr/lib/aarch64-linux-gnu/perl5/5.40/auto/stfl/stfl.so'; reason: Permission denied dh_strip: error: strip --remove-section=.comment --remove-section=.note debian/libstfl-perl/usr/lib/aarch64-linux-gnu/perl5/5.40/auto/stfl/stfl.so returned exit code 1
dh_strip: error: Aborting due to earlier error
make: *** [debian/rules:64: binary-arch] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
Build finished at 2024-11-18T16:08:19Z

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


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/1046498.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.

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature


Reply to: