Source: krb5 Version: 1.21.3-5 Severity: minor Tags: trixie sid ftbfs User: [email protected] Usertags: ftbfs-shuffle
Hi, GNU Make now has a --shuffle option that simulates non-deterministic ordering of target prerequisites. See https://trofi.github.io/posts/238-new-make-shuffle-mode.html and also previous work in Debian by Santiago Vila: https://people.debian.org/~sanvila/make-shuffle/ This package fails to build with make --shuffle=reverse. This is likely to be caused by a missing dependency in debian/rules or an upstream Makefile. More information about this mass bug filing is available at https://wiki.debian.org/qa.debian.org/FTBFS/Shuffle Relevant part (hopefully): > make[6]: Entering directory > '/build/reproducible-path/krb5-1.21.3/build/lib/krb5/krb' > Makefile:468: update target 'parse_host_string.o' due to: target does not > exist > gcc -DHAVE_CONFIG_H -DLIBDIR=\"/usr/lib/x86_64-linux-gnu\" > -DDYNOBJEXT=\".so\" -I../../../include -I../../../../src/include > -I../../../../src/lib/krb5/krb/../os -I../../../../src -DKRB5_DEPRECATED=1 > -DKRB5_PRIVATE -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 > -Werror=implicit-function-declaration > -ffile-prefix-map=/build/reproducible-path/krb5-1.21.3=. > -fstack-protector-strong -fstack-clash-protection -Wformat > -Werror=format-security -fcf-protection -Wall -Wcast-align -Wshadow > -Wmissing-prototypes -Wno-format-zero-length -Woverflow -Wstrict-overflow > -Wmissing-format-attribute -Wmissing-prototypes -Wreturn-type > -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label > -Wunused-variable -Wunused-value -Wunknown-pragmas -Wsign-compare > -Werror=uninitialized -Wno-maybe-uninitialized -Werror=pointer-arith > -Werror=int-conversion -Werror=incompatible-pointer-types > -Werror=discarded-qualifiers -Werror=implicit-int > -Werror=declaration-after-statement -Werror-implicit-function-declaration > -pthread -c ../../../../src/lib/krb5/krb/parse_host_string.c > Makefile:468: update target 't_parse_host_string.o' due to: target does not > exist > gcc -DHAVE_CONFIG_H -DLIBDIR=\"/usr/lib/x86_64-linux-gnu\" > -DDYNOBJEXT=\".so\" -I../../../include -I../../../../src/include > -I../../../../src/lib/krb5/krb/../os -I../../../../src -DKRB5_DEPRECATED=1 > -DKRB5_PRIVATE -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 > -Werror=implicit-function-declaration > -ffile-prefix-map=/build/reproducible-path/krb5-1.21.3=. > -fstack-protector-strong -fstack-clash-protection -Wformat > -Werror=format-security -fcf-protection -Wall -Wcast-align -Wshadow > -Wmissing-prototypes -Wno-format-zero-length -Woverflow -Wstrict-overflow > -Wmissing-format-attribute -Wmissing-prototypes -Wreturn-type > -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label > -Wunused-variable -Wunused-value -Wunknown-pragmas -Wsign-compare > -Werror=uninitialized -Wno-maybe-uninitialized -Werror=pointer-arith > -Werror=int-conversion -Werror=incompatible-pointer-types > -Werror=discarded-qualifiers -Werror=implicit-int > -Werror=declaration-after-statement -Werror-implicit-function-declaration > -pthread -c ../../../../src/lib/krb5/krb/t_parse_host_string.c > Makefile:1050: update target 't_parse_host_string' due to: target does not > exist > gcc -L../../../lib -g -O2 -Werror=implicit-function-declaration > -ffile-prefix-map=/build/reproducible-path/krb5-1.21.3=. > -fstack-protector-strong -fstack-clash-protection -Wformat > -Werror=format-security -fcf-protection -Wl,-z,relro -o t_parse_host_string > t_parse_host_string.o parse_host_string.o -lcmocka \ > -lkrb5 -lk5crypto -lcom_err -lkrb5support -lkeyutils -lresolv > Makefile:1132: update target 'check-cmocka' due to: target does not exist > LD_LIBRARY_PATH=`echo -L../../../lib | sed -e "s/-L//g" -e "s/ /:/g"` > KRB5_CONFIG=../../../../src/config-files/krb5.conf LC_ALL=C > ./t_parse_host_string > /dev/null > [ PASSED ] 15 test(s). > [ PASSED ] 7 test(s). > Makefile:468: update target 't_vfy_increds.o' due to: target does not exist > gcc -DHAVE_CONFIG_H -DLIBDIR=\"/usr/lib/x86_64-linux-gnu\" > -DDYNOBJEXT=\".so\" -I../../../include -I../../../../src/include > -I../../../../src/lib/krb5/krb/../os -I../../../../src -DKRB5_DEPRECATED=1 > -DKRB5_PRIVATE -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 > -Werror=implicit-function-declaration > -ffile-prefix-map=/build/reproducible-path/krb5-1.21.3=. > -fstack-protector-strong -fstack-clash-protection -Wformat > -Werror=format-security -fcf-protection -Wall -Wcast-align -Wshadow > -Wmissing-prototypes -Wno-format-zero-length -Woverflow -Wstrict-overflow > -Wmissing-format-attribute -Wmissing-prototypes -Wreturn-type > -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label > -Wunused-variable -Wunused-value -Wunknown-pragmas -Wsign-compare > -Werror=uninitialized -Wno-maybe-uninitialized -Werror=pointer-arith > -Werror=int-conversion -Werror=incompatible-pointer-types > -Werror=discarded-qualifiers -Werror=implicit-int > -Werror=declaration-after-statement -Werror-implicit-function-declaration > -pthread -c ../../../../src/lib/krb5/krb/t_vfy_increds.c > Makefile:1057: update target 't_vfy_increds' due to: target does not exist > gcc -L../../../lib -g -O2 -Werror=implicit-function-declaration > -ffile-prefix-map=/build/reproducible-path/krb5-1.21.3=. > -fstack-protector-strong -fstack-clash-protection -Wformat > -Werror=format-security -fcf-protection -Wl,-z,relro -o t_vfy_increds > t_vfy_increds.o -lkrb5 -lk5crypto -lcom_err -lkrb5support -lkeyutils > -lresolv > Makefile:468: update target 't_get_etype_info.o' due to: target does not exist > gcc -DHAVE_CONFIG_H -DLIBDIR=\"/usr/lib/x86_64-linux-gnu\" > -DDYNOBJEXT=\".so\" -I../../../include -I../../../../src/include > -I../../../../src/lib/krb5/krb/../os -I../../../../src -DKRB5_DEPRECATED=1 > -DKRB5_PRIVATE -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 > -Werror=implicit-function-declaration > -ffile-prefix-map=/build/reproducible-path/krb5-1.21.3=. > -fstack-protector-strong -fstack-clash-protection -Wformat > -Werror=format-security -fcf-protection -Wall -Wcast-align -Wshadow > -Wmissing-prototypes -Wno-format-zero-length -Woverflow -Wstrict-overflow > -Wmissing-format-attribute -Wmissing-prototypes -Wreturn-type > -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label > -Wunused-variable -Wunused-value -Wunknown-pragmas -Wsign-compare > -Werror=uninitialized -Wno-maybe-uninitialized -Werror=pointer-arith > -Werror=int-conversion -Werror=incompatible-pointer-types > -Werror=discarded-qualifiers -Werror=implicit-int > -Werror=declaration-after-statement -Werror-implicit-function-declaration > -pthread -c ../../../../src/lib/krb5/krb/t_get_etype_info.c > Makefile:1078: update target 't_get_etype_info' due to: target does not exist > gcc -L../../../lib -g -O2 -Werror=implicit-function-declaration > -ffile-prefix-map=/build/reproducible-path/krb5-1.21.3=. > -fstack-protector-strong -fstack-clash-protection -Wformat > -Werror=format-security -fcf-protection -Wl,-z,relro -o t_get_etype_info > t_get_etype_info.o -lkrb5 -lk5crypto -lcom_err -lkrb5support -lkeyutils > -lresolv > Makefile:468: update target 't_expire_warn.o' due to: target does not exist > gcc -DHAVE_CONFIG_H -DLIBDIR=\"/usr/lib/x86_64-linux-gnu\" > -DDYNOBJEXT=\".so\" -I../../../include -I../../../../src/include > -I../../../../src/lib/krb5/krb/../os -I../../../../src -DKRB5_DEPRECATED=1 > -DKRB5_PRIVATE -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 > -Werror=implicit-function-declaration > -ffile-prefix-map=/build/reproducible-path/krb5-1.21.3=. > -fstack-protector-strong -fstack-clash-protection -Wformat > -Werror=format-security -fcf-protection -Wall -Wcast-align -Wshadow > -Wmissing-prototypes -Wno-format-zero-length -Woverflow -Wstrict-overflow > -Wmissing-format-attribute -Wmissing-prototypes -Wreturn-type > -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label > -Wunused-variable -Wunused-value -Wunknown-pragmas -Wsign-compare > -Werror=uninitialized -Wno-maybe-uninitialized -Werror=pointer-arith > -Werror=int-conversion -Werror=incompatible-pointer-types > -Werror=discarded-qualifiers -Werror=implicit-int > -Werror=declaration-after-statement -Werror-implicit-function-declaration > -pthread -c ../../../../src/lib/krb5/krb/t_expire_warn.c > Makefile:1054: update target 't_expire_warn' due to: target does not exist > gcc -L../../../lib -g -O2 -Werror=implicit-function-declaration > -ffile-prefix-map=/build/reproducible-path/krb5-1.21.3=. > -fstack-protector-strong -fstack-clash-protection -Wformat > -Werror=format-security -fcf-protection -Wl,-z,relro -o t_expire_warn > t_expire_warn.o -lkrb5 -lk5crypto -lcom_err -lkrb5support -lkeyutils > -lresolv > Makefile:1126: update target 'check-pytests' due to: target does not exist > PYTHONPATH=../../../../src/util VALGRIND="" python3 > ../../../../src/lib/krb5/krb/t_expire_warn.py > PYTHONPATH=../../../../src/util VALGRIND="" python3 > ../../../../src/lib/krb5/krb/t_vfy_increds.py > PYTHONPATH=../../../../src/util VALGRIND="" python3 > ../../../../src/lib/krb5/krb/t_in_ccache_patypes.py > Traceback (most recent call last): > File > "/build/reproducible-path/krb5-1.21.3/build/lib/krb5/krb/../../../../src/lib/krb5/krb/t_in_ccache_patypes.py", > line 34, in <module> > realm.run(['./t_in_ccache', 'nopreauth', 'pass']) > ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > File "/build/reproducible-path/krb5-1.21.3/src/util/k5test.py", line 1045, > in run > return _run_cmd(args, env, **keywords) > File "/build/reproducible-path/krb5-1.21.3/src/util/k5test.py", line 739, > in _run_cmd > proc = subprocess.Popen(args, stdin=infile, stdout=subprocess.PIPE, > stderr=subprocess.STDOUT, env=env, > universal_newlines=True) > File "/usr/lib/python3.13/subprocess.py", line 1039, in __init__ > self._execute_child(args, executable, preexec_fn, close_fds, > ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > pass_fds, cwd, env, > ^^^^^^^^^^^^^^^^^^^ > ...<5 lines>... > gid, gids, uid, umask, > ^^^^^^^^^^^^^^^^^^^^^^ > start_new_session, process_group) > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > File "/usr/lib/python3.13/subprocess.py", line 1854, in _execute_child > self._posix_spawn(args, executable, env, restore_signals, close_fds, > ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > p2cread, p2cwrite, > ^^^^^^^^^^^^^^^^^^ > c2pread, c2pwrite, > ^^^^^^^^^^^^^^^^^^ > errread, errwrite) > ^^^^^^^^^^^^^^^^^^ > File "/usr/lib/python3.13/subprocess.py", line 1798, in _posix_spawn > self.pid = os.posix_spawn(executable, args, env, **kwargs) > ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > FileNotFoundError: [Errno 2] No such file or directory: './t_in_ccache' > For details, see: > /build/reproducible-path/krb5-1.21.3/build/lib/krb5/krb/testlog > Or re-run this test script with the -v flag: > cd /build/reproducible-path/krb5-1.21.3/build/lib/krb5/krb > PYTHONPATH=/build/reproducible-path/krb5-1.21.3/src/util /usr/bin/python3 > ../../../../src/lib/krb5/krb/t_in_ccache_patypes.py -v > > Use --debug=NUM to run a command under a debugger. Use > --stop-after=NUM to stop after a daemon is started in order to > attach to it with a debugger. Use --help to see other > options. > make[6]: *** [Makefile:1128: check-pytests] Error 1 shuffle=reverse > make[6]: Leaving directory > '/build/reproducible-path/krb5-1.21.3/build/lib/krb5/krb' > make[5]: *** [Makefile:1112: check-recurse] Error 1 shuffle=reverse > make[5]: Leaving directory > '/build/reproducible-path/krb5-1.21.3/build/lib/krb5' > make[4]: *** [Makefile:973: check-recurse] Error 1 shuffle=reverse > make[4]: Leaving directory '/build/reproducible-path/krb5-1.21.3/build/lib' > make[3]: *** [Makefile:1521: check-recurse] Error 1 shuffle=reverse > make[3]: Leaving directory '/build/reproducible-path/krb5-1.21.3/build' > dh_auto_test: error: cd build && make -j1 check "TESTSUITEFLAGS=-j1 > --verbose" VERBOSE=1 returned exit code 2 The full build log is available from: http://qa-logs.debian.net/2025/05/05/shuffle/reverse/krb5_1.21.3-5_unstable_reverse.log If you reassign this bug to another package, please mark it as 'affects'-ing this package. See https://www.debian.org/Bugs/server-control#affects

