build: default to DWARF v4 when debugging
Modern compilers all default to v4, and more recent ones, i.e Clang 14+ and GCC 11+ default to v5.
The default DWARF version has increased from DWARFv4 to DWARFv5.
For targets that produce DWARF debugging information GCC now defaults to DWARF version 5.
One noticable difference will be a decent disk space saving when debugging, i.e on master using:
./autogen.sh && ./configure --enable-debug && make src/bitcoind -j9 && ls -lhS src/
total 929M
322M libbitcoin_node.a
176M libbitcoin_wallet.a
144M bitcoind
67M libbitcoin_common.a
44M libbitcoin_util.a
15M libbitcoin_node_a-net_processing.o
14M libbitcoin_node_a-validation.o
vs with -g4
total 800M
270M libbitcoin_node.a
153M libbitcoin_wallet.a
141M bitcoind
58M libbitcoin_common.a
31M libbitcoin_util.a
14M libbitcoin_node_a-net_processing.o
13M libbitcoin_node_a-validation.o
Guix Build (arm64):
0abad61bdf0e757d2f4f6d945da4beb045f90b9e68b1922df3eeb24f15a5b700 guix-build-a311688d84c3/output/arm-linux-gnueabihf/SHA256SUMS.part
e7ce2d49aff36e2834f44bb3b22a7a49075f3758d17a5061ecefb543d6471aa0 guix-build-a311688d84c3/output/arm-linux-gnueabihf/bitcoin-a311688d84c3-arm-linux-gnueabihf-debug.tar.gz
67496cec78dd5cece5aa9595854919dd2c6a1a0285aa11c619126f98f2bc1419 guix-build-a311688d84c3/output/arm-linux-gnueabihf/bitcoin-a311688d84c3-arm-linux-gnueabihf.tar.gz
271296b6f06c874ea7554aacdc647017af0fa0b8dbaa9849329c573fb78f7426 guix-build-a311688d84c3/output/arm64-apple-darwin/SHA256SUMS.part
3bff26302f8a31736d091c3294b578d2609b6bbf1f5b4aabb9f874aec37cb1b6 guix-build-a311688d84c3/output/arm64-apple-darwin/bitcoin-a311688d84c3-arm64-apple-darwin-unsigned.dmg
e68dd5624eb67a0e97ed1ff42765e13358dfd7c83a16d19c481200ebd9b67619 guix-build-a311688d84c3/output/arm64-apple-darwin/bitcoin-a311688d84c3-arm64-apple-darwin-unsigned.tar.gz
79ff48de1bbad90e2b784a62e0aa2a9f0812ac67b7756c4bb5473af6f2165ab2 guix-build-a311688d84c3/output/arm64-apple-darwin/bitcoin-a311688d84c3-arm64-apple-darwin.tar.gz
b0769e1833cd320e6510b0f1d1608668e1905b000c407b371352e58b950fb39a guix-build-a311688d84c3/output/dist-archive/bitcoin-a311688d84c3.tar.gz
037445d35ccf861c3b05af6620687ac5278356b46e214fe8a68749226078c38d guix-build-a311688d84c3/output/powerpc64-linux-gnu/SHA256SUMS.part
2b6a751a3c1640945736163c454cff49ce25d65a61ed74b7409c60821ed1426b guix-build-a311688d84c3/output/powerpc64-linux-gnu/bitcoin-a311688d84c3-powerpc64-linux-gnu-debug.tar.gz
a42c00aab9f9f4e4df9c6c979f05e2a1d7208469a670b6582185aba9813ab9e3 guix-build-a311688d84c3/output/powerpc64-linux-gnu/bitcoin-a311688d84c3-powerpc64-linux-gnu.tar.gz
0f45067b7fc0515f5af33b40ac1779e63ea503c686796f2722630dc63f35474b guix-build-a311688d84c3/output/powerpc64le-linux-gnu/SHA256SUMS.part
897a4bb8db26a3062c7c91f51a2a5acff69d5e263d1a4c2c30de11bc8d399ede guix-build-a311688d84c3/output/powerpc64le-linux-gnu/bitcoin-a311688d84c3-powerpc64le-linux-gnu-debug.tar.gz
975cc767bc21e30addb11f6ec9eacb7039494937a366610a5334d291ad0f637e guix-build-a311688d84c3/output/powerpc64le-linux-gnu/bitcoin-a311688d84c3-powerpc64le-linux-gnu.tar.gz
ea80f4125e084304025613a03db453cef1848935f473e4a211f56e9c15337a11 guix-build-a311688d84c3/output/riscv64-linux-gnu/SHA256SUMS.part
f5ee00f1979617a31eb4417d986578d91dfe9255fa973b5b8641f2325426a913 guix-build-a311688d84c3/output/riscv64-linux-gnu/bitcoin-a311688d84c3-riscv64-linux-gnu-debug.tar.gz
4df25281746ec129a301e1fa806e27216e89dbaae4a67f018194637f75dfa19b guix-build-a311688d84c3/output/riscv64-linux-gnu/bitcoin-a311688d84c3-riscv64-linux-gnu.tar.gz
aac09474a619f9aa737d6a5804d6eb7a0c18fc1792786e58e64b5b1affe80a7f guix-build-a311688d84c3/output/x86_64-apple-darwin/SHA256SUMS.part
69a28b242236013f47033ad9410168dc6f98728625f674ea8b76efbb67b97bdc guix-build-a311688d84c3/output/x86_64-apple-darwin/bitcoin-a311688d84c3-x86_64-apple-darwin-unsigned.dmg
68fda2c3096b9ee70ef25a86da3b8718a7081f02a63902d4092c646fccaf5435 guix-build-a311688d84c3/output/x86_64-apple-darwin/bitcoin-a311688d84c3-x86_64-apple-darwin-unsigned.tar.gz
ffd0f5454539e058500e55e71f35aecb305e65217954428683f2c0a007df2747 guix-build-a311688d84c3/output/x86_64-apple-darwin/bitcoin-a311688d84c3-x86_64-apple-darwin.tar.gz
c08d17d4cd77a5eef268015785383ffdd79cccc20a051885b98ddca6e88c360e guix-build-a311688d84c3/output/x86_64-linux-gnu/SHA256SUMS.part
a0ceab31ac4255c00c04a9289aa41aff38f03a87d7024076148e8d8ed030589e guix-build-a311688d84c3/output/x86_64-linux-gnu/bitcoin-a311688d84c3-x86_64-linux-gnu-debug.tar.gz
4af89f9478c8d5b30b2a093ec49aa94e247c74d13607a715bc56b4ee334a7b69 guix-build-a311688d84c3/output/x86_64-linux-gnu/bitcoin-a311688d84c3-x86_64-linux-gnu.tar.gz
800c09c37b8a8332c259e977a4144c71fed8cc02db621d377092ed53f642aac0 guix-build-a311688d84c3/output/x86_64-w64-mingw32/SHA256SUMS.part
951341baa4f0f53e6a2d2ac7d57536c10b5771b7b21b7a9879c05861320eef7a guix-build-a311688d84c3/output/x86_64-w64-mingw32/bitcoin-a311688d84c3-win64-debug.zip
40dd5ad171727ddbfdd79aacc6542a7202492c7f988c3a0e52e8e1df86e6fed2 guix-build-a311688d84c3/output/x86_64-w64-mingw32/bitcoin-a311688d84c3-win64-setup-unsigned.exe
e5c6b247283ba44a6c4d58e8684ab28e6d6da373bf8ef33a595e480ee6a8dc36 guix-build-a311688d84c3/output/x86_64-w64-mingw32/bitcoin-a311688d84c3-win64-unsigned.tar.gz
249d54d80b35befee2c4c29074804a8cbc32ace3da9ab5775e4f818c56f159f6 guix-build-a311688d84c3/output/x86_64-w64-mingw32/bitcoin-a311688d84c3-win64.zip