Skip to content

Fix GCC 14 build

Eric Long requested to merge hack3ric/bup:gcc-14-fix into main
  • configure fails complaining about cc not usable: checking the C compiler (cc) does not compile code properly without much information. It turns out to be missing int return type of main function in a bunch of test source code. This is fixed in https://github.com/bup/bup/commit/ac289c3536ab3786a82d8f3b708b0d52d5a57be9 but is not released.

  • ./configure and make uses CFLAGS twice; clear one of them to suppress the following error:

cc -Wno-implicit-int -I/usr/include/python3.12 -I/usr/include/python3.12 -fno-strict-overflow -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -g -ffile-prefix-map=/build/python/src=/usr/src/debug/python -flto=auto -ffat-lto-objects -DNDEBUG -g -O3 -Wall -Wno-unused-command-line-argument -D_FILE_OFFSET_BITS=64 -Wno-unknown-pragmas -Wsign-compare -O2 -Wall -Werror -Wformat=2 -MMD -MP -I/build/bup/src/bup-0.33.3/src -I src  -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -g -ffile-prefix-map=/build/bup/src=/usr/src/debug/bup -flto=auto dev/python.c src/bup/compat.c src/bup/io.c -L/usr/lib -lpython3.12 -ldl -lm  -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs -flto=auto -fPIE -o dev/python-proposed                                                                                                                                                                                            
<command-line>: error: "_FORTIFY_SOURCE" redefined [-Werror]                                                                                                                                              
<command-line>: note: this is the location of the previous definition
cc1: note: unrecognized command-line option ‘-Wno-unused-command-line-argument’ may have been intended to silence earlier diagnostics                                                                     
cc1: all warnings being treated as errors

Merge request reports