Skip to content

Conversation

hebasto
Copy link
Member

@hebasto hebasto commented Oct 20, 2020

This PR:

  • does not change behavior
  • drops redundant AC_SUBST macros

Also checks of PKG_CHECK_MODULES presence are removed because they are redundant due to the following code

bitcoin/configure.ac

Lines 16 to 20 in ab1fead

m4_ifndef([PKG_PROG_PKG_CONFIG], [AC_MSG_ERROR([PKG_PROG_PKG_CONFIG macro not found. Please install pkg-config and re-run autogen.sh])])
PKG_PROG_PKG_CONFIG
if test "x$PKG_CONFIG" = x; then
AC_MSG_ERROR([pkg-config not found])
fi

@practicalswift
Copy link
Contributor

Concept ACK: nice cleanup!

@DrahtBot
Copy link
Contributor

DrahtBot commented Oct 21, 2020

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Conflicts

Reviewers, this pull request conflicts with the following ones:

  • #23593 (build: remove x-prefix's from comparisons by fanquake)

If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

@DrahtBot
Copy link
Contributor

Gitian builds

File commit f5bd46a
(master)
commit 04440de
(master and this pull)
bitcoin-core-linux-0.21-res.yml d1971dabc444008d... 8838745241d98124...
bitcoin-core-osx-0.21-res.yml de235a951f7a465e... 8f9ed1309b7f5c59...
bitcoin-core-win-0.21-res.yml f75ce7b9355d334c... 0095a1e80251d3fc...
*-aarch64-linux-gnu-debug.tar.gz 6ed9c70434fc7fc2... 5052c6411649fccc...
*-aarch64-linux-gnu.tar.gz 3af5f18ffa364c24... b0bbace4cf060ffc...
*-arm-linux-gnueabihf-debug.tar.gz 098fc410215e7c42... 9b4c157495ab8c63...
*-arm-linux-gnueabihf.tar.gz 3f2c975b713698b2... c6f5bb430a8f5e0a...
*-osx-unsigned.dmg 012c0dc0e1b3f2ec... 81f9b08f08a61bc7...
*-osx64.tar.gz 6409b02ac19538f2... 981a9ae130f0b89b...
*-riscv64-linux-gnu-debug.tar.gz 6da1f76714b4dbfe... 1725940365cef94b...
*-riscv64-linux-gnu.tar.gz a90367c39515c3b4... 560b503bdb7628e7...
*-win64-debug.zip 453e395581992f20... 21488d77f7715465...
*-win64-setup-unsigned.exe 8b50662e73d518ea... 03ad1e82b83721dc...
*-win64.zip aa74cb3b0978fb5a... 51b82f6af40f0c8d...
*-x86_64-linux-gnu-debug.tar.gz 7e318d3ab76e48eb... ebbbcd45726e5557...
*-x86_64-linux-gnu.tar.gz 6447ef245d9ee8f6... 27f66b6a9f4b9581...
*.tar.gz 8bce7f0b98fd7610... a800bbf485510ee8...
linux-build.log 3c348dc643432917... bb8655d9c8c9882d...
osx-build.log 083ca63c793f3b21... a397d39f533360f8...
win-build.log 72ceb0afecdf12df... ab3d3efa33edf7e1...
bitcoin-core-linux-0.21-res.yml.diff e421ec65fcac167c...
bitcoin-core-osx-0.21-res.yml.diff 2653e6f1032c3e86...
bitcoin-core-win-0.21-res.yml.diff f0c6dbfab6ec264d...
linux-build.log.diff 7bcbcfea271adddf...
osx-build.log.diff 5858ab1be42c8f17...
win-build.log.diff ed21fe1c3e6be38c...

@DrahtBot
Copy link
Contributor

Guix builds

File commit 9af7c19
(master)
commit a997e71
(master and this pull)
*-aarch64-linux-gnu-debug.tar.gz a0883e94fe7d7b45... 12036f243e35253a...
*-aarch64-linux-gnu.tar.gz f515a87f3d749152... 1cb7616d8452f208...
*-arm-linux-gnueabihf-debug.tar.gz 200e141a7d2c4169... e3aefabffd6985fc...
*-arm-linux-gnueabihf.tar.gz a9f0d5752bab18d4... bb0fe75229ed11e3...
*-riscv64-linux-gnu-debug.tar.gz 862c0b91637b1d13... 9c9d76b8a4b273c3...
*-riscv64-linux-gnu.tar.gz b7ddd167f9c6089c... b82551dcaffe4588...
*-win-unsigned.tar.gz d9fd15e501580e57... 628755f876612d40...
*-win64-debug.zip 65810928272e2290... 04307877af5e37c7...
*-win64-setup-unsigned.exe 95eeb02773751b70... 1f42a9ced373ad78...
*-win64.zip 39e8e65f96ba0048... 5d2d34a254b1d89c...
*-x86_64-linux-gnu-debug.tar.gz 5dc4fdbe449bd036... 98fbdf2376371c49...
*-x86_64-linux-gnu.tar.gz 3949c68642f0c01a... aebe97182d4516b7...
*.tar.gz 333868caaa79db4d... 79dda477ed97f075...
guix_build.log 33920a430da60d00... 5d56f54db9e48cd5...
guix_build.log.diff a66d1f1972961842...

@laanwj
Copy link
Member

laanwj commented Nov 19, 2020

drops redundant AC_SUBST macros

What makes these redundant?

@hebasto
Copy link
Member Author

hebasto commented Nov 19, 2020

drops redundant AC_SUBST macros

What makes these redundant?

From commit message:

Variables that are declared with AC_ARG_VAR macro are substituted via
AC_SUBST macro.
PKG_CHECK_MODULES macro already has AC_ARG_VAR(${PACKAGE}_CFLAGS) and
AC_ARG_VAR(${PACKAGE}_LIBS).

Also https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Setting-Output-Variables.html#index-AC_005fARG_005fVAR-1209

@laanwj
Copy link
Member

laanwj commented Nov 19, 2020

Thanks. Yes, clear. But otoh that seems pretty deeply buried. I think one advantage of specifying them explicitly is to have a better idea what gets exported from the configure.ac script, what its interface is to the makefiles and config.h file.

@hebasto
Copy link
Member Author

hebasto commented Nov 26, 2020

@laanwj

I think one advantage of specifying them explicitly is to have a better idea what gets exported from the configure.ac script, what its interface is to the makefiles and config.h file.

PKG_CHECK_MODULES has a pretty self-documenting feature, as its internal AC_ARG_VAR include variable description in the variable section of ./configure --help.

@hebasto
Copy link
Member Author

hebasto commented Nov 26, 2020

Rebased ae92fb1 -> 58737de (pr20201.01 -> pr20201.02) due to the conflict with #20202.

@hebasto
Copy link
Member Author

hebasto commented Jan 8, 2021

Rebased 58737de -> ab1fead (pr20201.02 -> pr20201.03) due to the conflict with #18077.

@bitmastercoin
Copy link

Running Kali Linux. 2020.4 and getting the error after attempting sudo ./autogen.sh
with the out put being a long string and eventually. ::
configure.ac:16: error: possibly undefined macro: AC_MSG_ERROR If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. configure.ac:255: error: possibly undefined macro: AC_DEFINE configure.ac:632: error: possibly undefined macro: AC_MSG_WARN autoreconf: /usr/bin/autoconf failed with exit status: 1

@hebasto
Copy link
Member Author

hebasto commented Jan 11, 2021

@bitmastercoin What happens when you do the same on the master branch?

@jarolrod
Copy link
Member

@bitmastercoin I was able to successfully build and and run with Kali Linux 2020.4 and 2021.1 on master branch and PR branch. Can you give any update?

Copy link
Member

@jarolrod jarolrod left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Concept ACK, I cannot ACK yet because I want to confirm the reproducibility of the stripped information with the bitcoin-maintainer-tools/build-for-compare.py script, but I'm currently running into the following issue:

>>> [do_build] Command failed: git apply /home/xyz/Bitcoin/Code/revie/test-reproducibility/bitcoin-maintainer-tools/patches/stripbuildinfo.patch
>>> [do_build] Could not apply patch to strip build info. Probably it needs to be updated

I tried running on the PR branch itself, and the PR branch rebased on the current master, but no luck. Obviously, I am not a maintainer, so any help would be appreciated 😊

Notes:
I wanted to try to document what is going on here and give my opinion.

  • 388135b

    • Commit 388135b states that it is removing a redundant check of PKG_CHECK_MODULES. If we look at the pkg.m4 source code, and specifically lines 131-142, we can see that performing this check within our configure.ac script is in fact redundant.
  • ab1fead

    • From my understanding, the AC_SUBT macro is meant to provide output variables to automake. The description for this commit explains why performing this work ourselves is redundant; these variables will already be provided to automake thanks to pkg.m4. This can be confirmed by looking at Lines 141 and 142 of the pkg.m4 source code. As such, it is ok to remove what is being removed in this commit.

Should we do this?
I think it is great not to redo unnecessary work when it is unnecessary. As such, this PR is a nice simplification.

@laanwj brings up a good point that this is kind of buried, and you need to dig through the source code to confirm this. Luckily the pkg.m4 source code is not too large, and it's easy to refer to. In this case, I'd say it's not a big deal. But, I will defer to our build experts.

@fanquake
Copy link
Member

If we look at the pkg.m4 source code,
Lines 141 and 142 of the pkg.m4 source code.

Not sure if you're aware, but https://github.com/pkgconf/pkgconf (which you've been linking to here), is not the same piece of software as https://www.freedesktop.org/wiki/Software/pkg-config/, which is what most builders would actually be using.

@jarolrod
Copy link
Member

@fanquake ah thanks for the clarification. Just trying to learn about our build system by reviewing. I've checked the source code for the pkg-config you've linked and have found the same relevant lines in its pkg.m4

@hebasto
Copy link
Member Author

hebasto commented Aug 11, 2021

@jarolrod

... I want to confirm the reproducibility of the stripped information with the bitcoin-maintainer-tools/build-for-compare.py script, but I'm currently running into the following issue:

Try bitcoin-core/bitcoin-maintainer-tools#108.

@hebasto
Copy link
Member Author

hebasto commented Aug 11, 2021

Comparing the current master (c3545a7) with pull/20201/merge using bitcoin-maintainer-tools/build-for-compare.py (with bitcoin-core/bitcoin-maintainer-tools#108) returns zero diff.

@hebasto
Copy link
Member Author

hebasto commented Aug 11, 2021

@jarolrod

  • Commit 388135b states that it is removing a redundant check of PKG_CHECK_MODULES. If we look at the pkg.m4 source code, and specifically lines 131-142, we can see that performing this check within our configure.ac script is in fact redundant.

See the update PR description.

@hebasto
Copy link
Member Author

hebasto commented Aug 11, 2021

If we look at the pkg.m4 source code,
Lines 141 and 142 of the pkg.m4 source code.

Not sure if you're aware, but https://github.com/pkgconf/pkgconf (which you've been linking to here), is not the same piece of software as https://www.freedesktop.org/wiki/Software/pkg-config/, which is what most builders would actually be using.

The correct reference is here:

AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl

@hebasto
Copy link
Member Author

hebasto commented Aug 11, 2021

Rebased ab1fead -> 17c2cad (pr20201.03 -> pr20201.04) on top of the recent change in the build system (including Guix) and CI.

@hebasto
Copy link
Member Author

hebasto commented Aug 11, 2021

Guix hashes:

$ find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
3eac41c46efef01623ad8b7511eb5368f57415a45dd1d6a435c257bd41839446  guix-build-17c2cad94885/output/aarch64-linux-gnu/SHA256SUMS.part
f00e74b71820778b361c2eeea7012bc61280d48e72e892bab554304df408fd5e  guix-build-17c2cad94885/output/aarch64-linux-gnu/bitcoin-17c2cad94885-aarch64-linux-gnu-debug.tar.gz
6f9c90a2fdc0b850dfecefdd26d1f8a2c574e53d20ff35e64b02c861f50543fb  guix-build-17c2cad94885/output/aarch64-linux-gnu/bitcoin-17c2cad94885-aarch64-linux-gnu.tar.gz
0d905e68421d77e0cea2d6586271a515a8e4f88fc69de8c0ff0b9dad65a25b6c  guix-build-17c2cad94885/output/arm-linux-gnueabihf/SHA256SUMS.part
cd0f03d2c14a5775dbb945d64aaaa0e9ecc1679f75ba74dcf30213daedcae2ac  guix-build-17c2cad94885/output/arm-linux-gnueabihf/bitcoin-17c2cad94885-arm-linux-gnueabihf-debug.tar.gz
6def410f1881d53ae674ba64bc6d5e8a059b5e4b5816034b6268a248b8eb2a85  guix-build-17c2cad94885/output/arm-linux-gnueabihf/bitcoin-17c2cad94885-arm-linux-gnueabihf.tar.gz
485f20c1e7b4be427c75d580cbeb42a9d8ae5c40c1c16f75190f2be5fc0f1669  guix-build-17c2cad94885/output/dist-archive/bitcoin-17c2cad94885.tar.gz
a9bd07a042d1e74f65fc6c42dbc84672adcb6b520601754395e216b374933116  guix-build-17c2cad94885/output/powerpc64-linux-gnu/SHA256SUMS.part
582f31bd11a872c0b7d9be26b623a5a595a1373e6848f690322b3d3a944f167e  guix-build-17c2cad94885/output/powerpc64-linux-gnu/bitcoin-17c2cad94885-powerpc64-linux-gnu-debug.tar.gz
3bce6480c68e1e5214f5b9c2f306a489b5da469dd8474188b22322af0a53061b  guix-build-17c2cad94885/output/powerpc64-linux-gnu/bitcoin-17c2cad94885-powerpc64-linux-gnu.tar.gz
d55af904cb36592db6305d643e7508252610ce334b455ee3a63454767d7166b9  guix-build-17c2cad94885/output/powerpc64le-linux-gnu/SHA256SUMS.part
f660af2150242f7658d5c642aadd15e2c71a8f5d989cf066558be1866b274123  guix-build-17c2cad94885/output/powerpc64le-linux-gnu/bitcoin-17c2cad94885-powerpc64le-linux-gnu-debug.tar.gz
f9f1a7cdd8f75297340c6da6d38a239c5acc56216fa057a69fe46526b23ac33d  guix-build-17c2cad94885/output/powerpc64le-linux-gnu/bitcoin-17c2cad94885-powerpc64le-linux-gnu.tar.gz
1788779b44122b2e26f2536f2d1b61ae7c22490eda22cbdbc3260a4dd79a655c  guix-build-17c2cad94885/output/riscv64-linux-gnu/SHA256SUMS.part
4ea6204af91392715f6cb398512e64a481b985b107c999af505851b277df4c7e  guix-build-17c2cad94885/output/riscv64-linux-gnu/bitcoin-17c2cad94885-riscv64-linux-gnu-debug.tar.gz
77f22f43b38d97466d7179028714a09f677cec301250ed534cd11998c9a29b1e  guix-build-17c2cad94885/output/riscv64-linux-gnu/bitcoin-17c2cad94885-riscv64-linux-gnu.tar.gz
1ebd0b23b401b309cbfd72d40e32da74ecffe8c77f83c08af74b46d644f59254  guix-build-17c2cad94885/output/x86_64-apple-darwin18/SHA256SUMS.part
918df7b7a9584cbebdca691c2cb6e717e18e41c4a7c6beb85c3680d86a016945  guix-build-17c2cad94885/output/x86_64-apple-darwin18/bitcoin-17c2cad94885-osx-unsigned.dmg
5bbdb688ec9bd3366879c8cfaba24a2348a6535d25b16f11441c4b32af4e169d  guix-build-17c2cad94885/output/x86_64-apple-darwin18/bitcoin-17c2cad94885-osx-unsigned.tar.gz
a8205ff6c618d3bb6c0ac88570b50ba3c845f2bfa1131740bbc435afb3a1d089  guix-build-17c2cad94885/output/x86_64-apple-darwin18/bitcoin-17c2cad94885-osx64.tar.gz
ec78d91ed8a7b927ee9be14743a7f612c1baf62cfcd576c3fc8dfc593e765dd5  guix-build-17c2cad94885/output/x86_64-linux-gnu/SHA256SUMS.part
58100846b217a1954d27ee39c8a33b544a831e983e1cf6e6e73cdc5304e68421  guix-build-17c2cad94885/output/x86_64-linux-gnu/bitcoin-17c2cad94885-x86_64-linux-gnu-debug.tar.gz
6983d9eecf01bbcec1ef59c0c5d63755f97e9d1900951c855ed0071a72efc1d7  guix-build-17c2cad94885/output/x86_64-linux-gnu/bitcoin-17c2cad94885-x86_64-linux-gnu.tar.gz
d442887bf09591a2225903b66477cdbbe56314ed93e2a45a8b44168502cd9b27  guix-build-17c2cad94885/output/x86_64-w64-mingw32/SHA256SUMS.part
035d6caf2ae753f2cb16ec1346239c05849eb2927162073652c73bfb82e4edcf  guix-build-17c2cad94885/output/x86_64-w64-mingw32/bitcoin-17c2cad94885-win-unsigned.tar.gz
02df13c02c0c8f11de912d9d4325540ee62085e1eb511c771b95d661950b281e  guix-build-17c2cad94885/output/x86_64-w64-mingw32/bitcoin-17c2cad94885-win64-debug.zip
469209f47641ab15d5ae691ce7f3793d5d8d0584e01bba574a45de475f01a7e5  guix-build-17c2cad94885/output/x86_64-w64-mingw32/bitcoin-17c2cad94885-win64-setup-unsigned.exe
327a246294ad0deb0c6fc24312ed11ca6396804d3d1856de679bb589946c3f93  guix-build-17c2cad94885/output/x86_64-w64-mingw32/bitcoin-17c2cad94885-win64.zip

@jarolrod
Copy link
Member

GUIX hashes, mine match @hebasto

find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum

3eac41c46efef01623ad8b7511eb5368f57415a45dd1d6a435c257bd41839446  guix-build-17c2cad94885/output/aarch64-linux-gnu/SHA256SUMS.part
f00e74b71820778b361c2eeea7012bc61280d48e72e892bab554304df408fd5e  guix-build-17c2cad94885/output/aarch64-linux-gnu/bitcoin-17c2cad94885-aarch64-linux-gnu-debug.tar.gz
6f9c90a2fdc0b850dfecefdd26d1f8a2c574e53d20ff35e64b02c861f50543fb  guix-build-17c2cad94885/output/aarch64-linux-gnu/bitcoin-17c2cad94885-aarch64-linux-gnu.tar.gz
0d905e68421d77e0cea2d6586271a515a8e4f88fc69de8c0ff0b9dad65a25b6c  guix-build-17c2cad94885/output/arm-linux-gnueabihf/SHA256SUMS.part
cd0f03d2c14a5775dbb945d64aaaa0e9ecc1679f75ba74dcf30213daedcae2ac  guix-build-17c2cad94885/output/arm-linux-gnueabihf/bitcoin-17c2cad94885-arm-linux-gnueabihf-debug.tar.gz
6def410f1881d53ae674ba64bc6d5e8a059b5e4b5816034b6268a248b8eb2a85  guix-build-17c2cad94885/output/arm-linux-gnueabihf/bitcoin-17c2cad94885-arm-linux-gnueabihf.tar.gz
485f20c1e7b4be427c75d580cbeb42a9d8ae5c40c1c16f75190f2be5fc0f1669  guix-build-17c2cad94885/output/dist-archive/bitcoin-17c2cad94885.tar.gz
a9bd07a042d1e74f65fc6c42dbc84672adcb6b520601754395e216b374933116  guix-build-17c2cad94885/output/powerpc64-linux-gnu/SHA256SUMS.part
582f31bd11a872c0b7d9be26b623a5a595a1373e6848f690322b3d3a944f167e  guix-build-17c2cad94885/output/powerpc64-linux-gnu/bitcoin-17c2cad94885-powerpc64-linux-gnu-debug.tar.gz
3bce6480c68e1e5214f5b9c2f306a489b5da469dd8474188b22322af0a53061b  guix-build-17c2cad94885/output/powerpc64-linux-gnu/bitcoin-17c2cad94885-powerpc64-linux-gnu.tar.gz
d55af904cb36592db6305d643e7508252610ce334b455ee3a63454767d7166b9  guix-build-17c2cad94885/output/powerpc64le-linux-gnu/SHA256SUMS.part
f660af2150242f7658d5c642aadd15e2c71a8f5d989cf066558be1866b274123  guix-build-17c2cad94885/output/powerpc64le-linux-gnu/bitcoin-17c2cad94885-powerpc64le-linux-gnu-debug.tar.gz
f9f1a7cdd8f75297340c6da6d38a239c5acc56216fa057a69fe46526b23ac33d  guix-build-17c2cad94885/output/powerpc64le-linux-gnu/bitcoin-17c2cad94885-powerpc64le-linux-gnu.tar.gz
1788779b44122b2e26f2536f2d1b61ae7c22490eda22cbdbc3260a4dd79a655c  guix-build-17c2cad94885/output/riscv64-linux-gnu/SHA256SUMS.part
4ea6204af91392715f6cb398512e64a481b985b107c999af505851b277df4c7e  guix-build-17c2cad94885/output/riscv64-linux-gnu/bitcoin-17c2cad94885-riscv64-linux-gnu-debug.tar.gz
77f22f43b38d97466d7179028714a09f677cec301250ed534cd11998c9a29b1e  guix-build-17c2cad94885/output/riscv64-linux-gnu/bitcoin-17c2cad94885-riscv64-linux-gnu.tar.gz
1ebd0b23b401b309cbfd72d40e32da74ecffe8c77f83c08af74b46d644f59254  guix-build-17c2cad94885/output/x86_64-apple-darwin18/SHA256SUMS.part
918df7b7a9584cbebdca691c2cb6e717e18e41c4a7c6beb85c3680d86a016945  guix-build-17c2cad94885/output/x86_64-apple-darwin18/bitcoin-17c2cad94885-osx-unsigned.dmg
5bbdb688ec9bd3366879c8cfaba24a2348a6535d25b16f11441c4b32af4e169d  guix-build-17c2cad94885/output/x86_64-apple-darwin18/bitcoin-17c2cad94885-osx-unsigned.tar.gz
a8205ff6c618d3bb6c0ac88570b50ba3c845f2bfa1131740bbc435afb3a1d089  guix-build-17c2cad94885/output/x86_64-apple-darwin18/bitcoin-17c2cad94885-osx64.tar.gz
ec78d91ed8a7b927ee9be14743a7f612c1baf62cfcd576c3fc8dfc593e765dd5  guix-build-17c2cad94885/output/x86_64-linux-gnu/SHA256SUMS.part
58100846b217a1954d27ee39c8a33b544a831e983e1cf6e6e73cdc5304e68421  guix-build-17c2cad94885/output/x86_64-linux-gnu/bitcoin-17c2cad94885-x86_64-linux-gnu-debug.tar.gz
6983d9eecf01bbcec1ef59c0c5d63755f97e9d1900951c855ed0071a72efc1d7  guix-build-17c2cad94885/output/x86_64-linux-gnu/bitcoin-17c2cad94885-x86_64-linux-gnu.tar.gz
d442887bf09591a2225903b66477cdbbe56314ed93e2a45a8b44168502cd9b27  guix-build-17c2cad94885/output/x86_64-w64-mingw32/SHA256SUMS.part
035d6caf2ae753f2cb16ec1346239c05849eb2927162073652c73bfb82e4edcf  guix-build-17c2cad94885/output/x86_64-w64-mingw32/bitcoin-17c2cad94885-win-unsigned.tar.gz
02df13c02c0c8f11de912d9d4325540ee62085e1eb511c771b95d661950b281e  guix-build-17c2cad94885/output/x86_64-w64-mingw32/bitcoin-17c2cad94885-win64-debug.zip
469209f47641ab15d5ae691ce7f3793d5d8d0584e01bba574a45de475f01a7e5  guix-build-17c2cad94885/output/x86_64-w64-mingw32/bitcoin-17c2cad94885-win64-setup-unsigned.exe
327a246294ad0deb0c6fc24312ed11ca6396804d3d1856de679bb589946c3f93  guix-build-17c2cad94885/output/x86_64-w64-mingw32/bitcoin-17c2cad94885-win64.zip

Copy link
Member

@jarolrod jarolrod left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK 17c2cad

As I've outlined here and here, this change is ok to do.

cannot ACK yet because I want to confirm the reproducibility of the stripped information

I have used the bitcoin-maintainer-tools/build-for-compare.py script to check for the reproducibility of the stripped information. The two branch heads tested were 17c2cad and c3545a7 and the built executables were bitcoind and bitcoin-qt. Running git diff -W --word-diff /tmp/compare/17c2cad /tmp/compare/c3545a7 returns a zero-diff.

shasums of the stripped info:

93c4fe1e65dffc43380d638f2fc72d8967bd6813b175d6363cfc46d27fcc5c24  /tmp/compare/bitcoind.17c2cad.stripped
93c4fe1e65dffc43380d638f2fc72d8967bd6813b175d6363cfc46d27fcc5c24  /tmp/compare/bitcoind.c3545a7.stripped
52e8e1375b7ea0e733c9e33eafd07c2f96731f96bebc65b72b2d156ac1faa37f  /tmp/compare/bitcoin-qt.17c2cad.stripped
52e8e1375b7ea0e733c9e33eafd07c2f96731f96bebc65b72b2d156ac1faa37f  /tmp/compare/bitcoin-qt.c3545a7.stripped

@hebasto
Copy link
Member Author

hebasto commented Oct 20, 2021

Rebased 17c2cad -> 362edc2 (pr20201.04 -> pr20201.05) due to the conflict with #22646.

@hebasto
Copy link
Member Author

hebasto commented Oct 21, 2021

Guix builds:

$ find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
a2a40775cceebe46119187b6813751b26f994c61da769d6af8b0b770577f347f  guix-build-362edc2aebc2/output/aarch64-linux-gnu/SHA256SUMS.part
9423bfa83362b47e72e2eccfa213ae4e748fad1b0d45f71c09714093bf693603  guix-build-362edc2aebc2/output/aarch64-linux-gnu/bitcoin-362edc2aebc2-aarch64-linux-gnu-debug.tar.gz
27c2278ff51c666a2eed3f530919baa3ed08020e61a4db7ab99035b09a188c8d  guix-build-362edc2aebc2/output/aarch64-linux-gnu/bitcoin-362edc2aebc2-aarch64-linux-gnu.tar.gz
b1ac8183bf7bb566db73d1d5164bc43efe8623b3f143c6881a447b16fd0457f6  guix-build-362edc2aebc2/output/arm-linux-gnueabihf/SHA256SUMS.part
f2e0b51717d893ab141ac101b14000b0195c910802b89305551e9b80467c17a0  guix-build-362edc2aebc2/output/arm-linux-gnueabihf/bitcoin-362edc2aebc2-arm-linux-gnueabihf-debug.tar.gz
df7271778d5cca8f9ca622095654fc6bde36d11585e5f7519dec2e5c49a61fc4  guix-build-362edc2aebc2/output/arm-linux-gnueabihf/bitcoin-362edc2aebc2-arm-linux-gnueabihf.tar.gz
44e6d43db6ed45fd7ce44bbba395d560649844d082289f174e1f55f931213a9f  guix-build-362edc2aebc2/output/dist-archive/bitcoin-362edc2aebc2.tar.gz
5fc9adae2bee80488c6694380c12ecb7bf84a2eb59ce8690afce834ead638ccc  guix-build-362edc2aebc2/output/powerpc64-linux-gnu/SHA256SUMS.part
d509e514664eb0efb7a35278bd2ac49869dff287dc5fdc6cd9dd098b7b57183b  guix-build-362edc2aebc2/output/powerpc64-linux-gnu/bitcoin-362edc2aebc2-powerpc64-linux-gnu-debug.tar.gz
87b88f97d75e6bd939e57ae92687bdef38f6ed89a4a95d16583ad25588888505  guix-build-362edc2aebc2/output/powerpc64-linux-gnu/bitcoin-362edc2aebc2-powerpc64-linux-gnu.tar.gz
b5812cb9b71c86bd45def744a127f6d374f94025b31bd7472955172871a5d88a  guix-build-362edc2aebc2/output/powerpc64le-linux-gnu/SHA256SUMS.part
468900c1b0d9941db683102a23d325c628c1f9b95cea3ece52984b7ffde8ad73  guix-build-362edc2aebc2/output/powerpc64le-linux-gnu/bitcoin-362edc2aebc2-powerpc64le-linux-gnu-debug.tar.gz
ebdadcbd35af30698e471bb4a3e22c31cc7f349d2f707aaa4af5f50a47fb0cbf  guix-build-362edc2aebc2/output/powerpc64le-linux-gnu/bitcoin-362edc2aebc2-powerpc64le-linux-gnu.tar.gz
6ddc5a395321b8405b0478e68dab4e277d9cbda30acfeeea679f98e097d0c570  guix-build-362edc2aebc2/output/riscv64-linux-gnu/SHA256SUMS.part
c579161a5a0d5c38c030141616dff9008918122c0ef7d9577ba9d6a6d28ab55a  guix-build-362edc2aebc2/output/riscv64-linux-gnu/bitcoin-362edc2aebc2-riscv64-linux-gnu-debug.tar.gz
a76d043d38857bbbe822f81fcadf8e8e17e27e2d17a05ff5a27332f91de8b667  guix-build-362edc2aebc2/output/riscv64-linux-gnu/bitcoin-362edc2aebc2-riscv64-linux-gnu.tar.gz
4ba0548174a163a8ff0c2f514f08e7afaeb34221610aea040cbc3677cceb430d  guix-build-362edc2aebc2/output/x86_64-apple-darwin19/SHA256SUMS.part
6ca9e6db3d86f74745b4f07037fd1150418afd6bb51d738f82c79684d10e1b15  guix-build-362edc2aebc2/output/x86_64-apple-darwin19/bitcoin-362edc2aebc2-osx-unsigned.dmg
6e1b129645035e0cdac65dc494c1099fd8ea29da3e3bb8aab2d036616be00d8d  guix-build-362edc2aebc2/output/x86_64-apple-darwin19/bitcoin-362edc2aebc2-osx-unsigned.tar.gz
29605019609ddebc7f1c690d3bbc6e7a89f0dfa5d1213d3986b87b281b0487ea  guix-build-362edc2aebc2/output/x86_64-apple-darwin19/bitcoin-362edc2aebc2-osx64.tar.gz
5b37027f95f67dcd28ea5bee8d04963845ca01585ab1897ae828b3ef564f24ab  guix-build-362edc2aebc2/output/x86_64-linux-gnu/SHA256SUMS.part
0cbb473fe3fecd456ad1773cb1ef15ceb88385cb3393f948d2e21be150edacb0  guix-build-362edc2aebc2/output/x86_64-linux-gnu/bitcoin-362edc2aebc2-x86_64-linux-gnu-debug.tar.gz
4c763aaf81895243002ea766253ff788440cc9fefae8817042fdccada9847db2  guix-build-362edc2aebc2/output/x86_64-linux-gnu/bitcoin-362edc2aebc2-x86_64-linux-gnu.tar.gz
cb25c1f0ada443fe553206e3c0b1f2b8409a5a2575129df8e363be50770db6ea  guix-build-362edc2aebc2/output/x86_64-w64-mingw32/SHA256SUMS.part
a62ab4d5ad3ae26e10c852717127cde9939abeeb19f4817fee0a80964f866610  guix-build-362edc2aebc2/output/x86_64-w64-mingw32/bitcoin-362edc2aebc2-win-unsigned.tar.gz
b7f9c52f795123a8702c8b284284a95fc41e7479904989dd7cc7e32fdc83278d  guix-build-362edc2aebc2/output/x86_64-w64-mingw32/bitcoin-362edc2aebc2-win64-debug.zip
1d24991fc59b9681159447e389ed29c86780360946acd79d4c6b7678d7cca042  guix-build-362edc2aebc2/output/x86_64-w64-mingw32/bitcoin-362edc2aebc2-win64-setup-unsigned.exe
6864c944fdab6bc3f06f79a4db7d138821c15a0e3a589e8973bb626713362b7c  guix-build-362edc2aebc2/output/x86_64-w64-mingw32/bitcoin-362edc2aebc2-win64.zip

Variables that are declared with AC_ARG_VAR macro are substituted via
AC_SUBST macro.
PKG_CHECK_MODULES macro already has AC_ARG_VAR(${PACKAGE}_CFLAGS) and
AC_ARG_VAR(${PACKAGE}_LIBS).
@hebasto
Copy link
Member Author

hebasto commented Dec 29, 2021

Rebased 362edc2 -> c236f2e (pr20201.05 -> pr20201.06) due to the conflict with #23593.

Copy link
Member

@fanquake fanquake left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK c236f2e - I see no difference in config.logs.

9049812 is obviously correct.

For c236f2e: The only calls left to AC_SUBST(*_LIBS) are for BOOST_LIBS, QT_LIBS, MINIUPNPC_LIBS and NATPMP_LIBS, which are required as we either modify these vars ourselves, or the dependency doesn't use pkg-config.

@fanquake fanquake merged commit 7e0cbc8 into bitcoin:master Dec 30, 2021
sidhujag pushed a commit to syscoin/syscoin that referenced this pull request Dec 30, 2021
c236f2e build: Drop redundant AC_SUBST macros (Hennadii Stepanov)
9049812 build: Drop redundant check of PKG_CHECK_MODULES presence (Hennadii Stepanov)

Pull request description:

  This PR:
  - does not change behavior
  - drops redundant `AC_SUBST` macros

  Also checks of PKG_CHECK_MODULES presence are removed because they are redundant due to the following code https://github.com/bitcoin/bitcoin/blob/ab1feadf4e6cd4f5f2c7e74cea1c7baad61458ba/configure.ac#L16-L20

ACKs for top commit:
  fanquake:
    ACK c236f2e - I see no difference in `config.log`s.

Tree-SHA512: 7ebbfc37123d693e034b8eea4aecbd9ef52b0ea5706b90bd282474e2d61ab0fedc8bca38aa3c9aa88cf2938339b7a491231b11865d39c682d60ef362082f22c5
@hebasto hebasto deleted the 201020-pkg branch December 30, 2021 08:47
@bitcoin bitcoin locked and limited conversation to collaborators Dec 30, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants