Skip to content

Commit c7b4968

Browse files
committed
Merge #19553: build: pass -fcommon when building genisoimage
2a701a1 build: pass -fcommon when building genisoimage (fanquake) Pull request description: Starting with the 10.1 release, GCC [defaults to -fno-common](https://gcc.gnu.org/gcc-10/porting_to.html). This causes linking issues when building genisoimage: ```bash [ 98%] Building C object genisoimage/CMakeFiles/genisoimage.dir/checksum.o [100%] Linking C executable genisoimage /usr/bin/ld: CMakeFiles/genisoimage.dir/apple.o:(.bss+0x0): multiple definition of `outfile'; CMakeFiles/genisoimage.dir/genisoimage.o:(.bss+0x0): first defined here /usr/bin/ld: CMakeFiles/genisoimage.dir/boot.o:(.bss+0x0): multiple definition of `outfile'; CMakeFiles/genisoimage.dir/genisoimage.o:(.bss+0x0): first defined here /usr/bin/ld: CMakeFiles/genisoimage.dir/desktop.o:(.bss+0x0): multiple definition of `outfile'; CMakeFiles/genisoimage.dir/genisoimage.o:(.bss+0x0): first defined here /usr/bin/ld: CMakeFiles/genisoimage.dir/dvd_file.o:(.bss+0x0): multiple definition of `outfile'; CMakeFiles/genisoimage.dir/genisoimage.o:(.bss+0x0): first defined here ``` Rather than patching genisoimage further, just pass -fcommon to preserve the legacy GCC behaviour. Noticed [while testing #19530](bitcoin/bitcoin#19530 (comment)). ACKs for top commit: laanwj: ACK 2a701a1 hebasto: ACK 2a701a1, tested on Fedora 32 (x86_64, GCC 10.1.1): Tree-SHA512: 0e6dd1b4c7c3f5b6997616da27a7ea54f757c81677766ee6813c776356527787a32b959f834e699fee9798553b13bcb142469f442c5e7a04f810f2c06e3a9505
2 parents 2031aa9 + 2a701a1 commit c7b4968

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

depends/packages/native_cdrkit.mk

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,10 @@ define $(package)_preprocess_cmds
99
patch -p1 < $($(package)_patch_dir)/cdrkit-deterministic.patch
1010
endef
1111

12+
# Starting with 10.1, GCC defaults to -fno-common, resulting in linking errors.
13+
# Pass -fcommon to retain the legacy behaviour.
1214
define $(package)_config_cmds
13-
cmake -DCMAKE_INSTALL_PREFIX=$(build_prefix)
15+
cmake -DCMAKE_INSTALL_PREFIX=$(build_prefix) -DCMAKE_C_FLAGS="-fcommon"
1416
endef
1517

1618
define $(package)_build_cmds

0 commit comments

Comments
 (0)