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

Log Summary:
-------------------------------------------------------------------------------
[...]
 1041 |                 (void) chdir(basedir);
      |                        ^~~~~~~~~~~~~~
scan.c:1051:16: warning: ignoring return value of ‘chdir’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
 1051 |         (void) chdir(basedir);
      |                ^~~~~~~~~~~~~~
scan.c:1052:16: warning: ignoring return value of ‘chdir’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
 1052 |         (void) chdir(prefix);
      |                ^~~~~~~~~~~~~
In file included from supcdefs.h:77:
supcmeat.c: In function ‘recvreg’:
sup.h:147:25: warning: ‘/BACKUP/’ directive writing 8 bytes into a region of size between 1 and 2000 [-Wformat-overflow=]
  147 | #define FILEBACKUP      "%s/BACKUP/%s"
      |                         ^~~~~~~~~~~~~~
supcmeat.c:1004:42: note: in expansion of macro ‘FILEBACKUP’
1004 | (void) sprintf(filename, FILEBACKUP, dirpart, filepart);
      |                                          ^~~~~~~~~~
sup.h:147:28: note: format string is defined here
  147 | #define FILEBACKUP      "%s/BACKUP/%s"
      |                            ^~~~~~~~
In function ‘sprintf’,
    inlined from ‘recvreg’ at supcmeat.c:1004:10:
/usr/include/aarch64-linux-gnu/bits/stdio2.h:30:10: note: ‘__builtin___sprintf_chk’ output between 9 and 4007 bytes into a destination of size 2000
   30 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   31 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   32 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
supcmeat.c: In function ‘recvreg’:
sup.h:146:25: warning: ‘/BACKUP’ directive writing 7 bytes into a region of size between 1 and 2000 [-Wformat-overflow=]
  146 | #define FILEBKDIR       "%s/BACKUP"
      |                         ^~~~~~~~~~~
supcmeat.c:1007:45: note: in expansion of macro ‘FILEBKDIR’
 1007 |                         (void) sprintf(buf, FILEBKDIR, dirpart);
      |                                             ^~~~~~~~~
sup.h:146:28: note: format string is defined here
  146 | #define FILEBKDIR       "%s/BACKUP"
      |                            ^~~~~~~
In function ‘sprintf’,
    inlined from ‘recvreg’ at supcmeat.c:1007:11:
/usr/include/aarch64-linux-gnu/bits/stdio2.h:30:10: note: ‘__builtin___sprintf_chk’ output between 8 and 2007 bytes into a destination of size 2000
   30 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   31 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   32 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
ar r libextra.a atoo.o expand.o ffilecopy.o filecopy.o nxtarg.o path.o quit.o read_line.o run.o estrdup.o skipto.o vprintf.o setproctitle.o
ar: creating libextra.a
supfilesrv.c: In function ‘main’:
supfilesrv.c:404:17: warning: ignoring return value of ‘daemon’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  404 |                 daemon(0, 0);
      |                 ^~~~~~~~~~~~
supfilesrv.c: In function ‘srvsetup’:
supfilesrv.c:935:24: warning: ignoring return value of ‘chdir’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  935 |                 (void) chdir(basedir);
      |                        ^~~~~~~~~~~~~~
ranlib libextra.a
supfilesrv.c: In function ‘srvfinishup’:
supfilesrv.c:1511:16: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
 1511 |         (void) write(logfd, tmpbuf, (p - tmpbuf));
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scan.c: In function ‘chkscanfile’:
scan.c:947:34: warning: ‘.temp’ directive writing 5 bytes into a region of size between 1 and 2000 [-Wformat-overflow=]
  947 |         (void) sprintf(tname, "%s.temp", fname);
      |                                  ^~~~~
In file included from /usr/include/stdio.h:970,
                 from libc.h:85,
                 from supcdefs.h:59,
                 from scan.c:101:
In function ‘sprintf’,
    inlined from ‘chkscanfile’ at scan.c:947:9:
/usr/include/aarch64-linux-gnu/bits/stdio2.h:30:10: note: ‘__builtin___sprintf_chk’ output between 6 and 2005 bytes into a destination of size 2000
   30 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   31 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   32 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
scan.c: In function ‘makescanfile’:
scan.c:966:34: warning: ‘.temp’ directive writing 5 bytes into a region of size between 1 and 2000 [-Wformat-overflow=]
  966 |         (void) sprintf(tname, "%s.temp", fname);
      |                                  ^~~~~
In function ‘sprintf’,
    inlined from ‘makescanfile’ at scan.c:966:9:
/usr/include/aarch64-linux-gnu/bits/stdio2.h:30:10: note: ‘__builtin___sprintf_chk’ output between 6 and 2005 bytes into a destination of size 2000
   30 |   return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   31 |                                   __glibc_objsize (__s), __fmt,
      |                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   32 |                                   __va_arg_pack ());
      |                                   ~~~~~~~~~~~~~~~~~
cc -UCMUCS -UCMU -UMACH -DVAR_TMP -DHAS_DAEMON -DHAS_POSIX_DIR -DNEED_SETPROCTITLE -DLIBWRAP -I. -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -o sup supcmain.o supcvers.o supcparse.o supcname.o supcmisc.o supcmeat.o scm.o scmio.o stree.o log.o supmsg.o netcrypt.o libextra.a -lcrypt -lwrap cc -UCMUCS -UCMU -UMACH -DVAR_TMP -DHAS_DAEMON -DHAS_POSIX_DIR -DNEED_SETPROCTITLE -DLIBWRAP -I. -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -o supscan supscan.o stree.o scan.o libextra.a -lcrypt -lwrap cc -UCMUCS -UCMU -UMACH -DVAR_TMP -DHAS_DAEMON -DHAS_POSIX_DIR -DNEED_SETPROCTITLE -DLIBWRAP -I. -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -o supfilesrv supfilesrv.o scan.o scm.o scmio.o stree.o log.o supmsg.o netcrypt.o wrap_pwd.o libextra.a libextra.a -lcrypt -lwrap
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   dh_auto_test
   create-stamp debian/debhelper-build-stamp
   dh_prep
   dh_installdirs
   debian/rules override_dh_auto_install
make[1]: Entering directory '/<<PKGBUILDDIR>>'
dh_auto_install -- PREFIX=/<<PKGBUILDDIR>>/debian/sup/usr
make -j8 install DESTDIR=/<<PKGBUILDDIR>>/debian/sup AM_UPDATE_INFO_DIR=no "INSTALL=install --strip-program=true" PREFIX=/<<PKGBUILDDIR>>/debian/sup/usr
make[2]: Entering directory '/<<PKGBUILDDIR>>'
install -c -m 555 -o bin -g bin sup supscan supfilesrv /<<PKGBUILDDIR>>/debian/sup/usr/bin install: cannot change ownership of '/<<PKGBUILDDIR>>/debian/sup/usr/bin/sup': Operation not permitted install: cannot change ownership of '/<<PKGBUILDDIR>>/debian/sup/usr/bin/supscan': Operation not permitted install: cannot change ownership of '/<<PKGBUILDDIR>>/debian/sup/usr/bin/supfilesrv': Operation not permitted
make[2]: *** [Makefile:138: install] Error 1
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
dh_auto_install: error: make -j8 install DESTDIR=/<<PKGBUILDDIR>>/debian/sup AM_UPDATE_INFO_DIR=no "INSTALL=install --strip-program=true" PREFIX=/<<PKGBUILDDIR>>/debian/sup/usr returned exit code 2
make[1]: *** [debian/rules:14: override_dh_auto_install] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:6: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
Build finished at 2024-11-18T16:22:43Z

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


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/1046742.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 via email to