Skip to content

Conversation

@jonasschnelli
Copy link
Contributor

Adds some compile and link options output to the configure process.
Maybe I'm old school, but I like this level of verbosity.

Results in something like

[ ---snip--- ]
configure: Using bignum implementation: no
configure: Using scalar implementation: 64bit
configure: Using endomorphism optimizations: no
configure: Building ECDH module: no
configure: Building Schnorr signatures module: no
configure: Building ECDSA pubkey recovery module: yes
configure: Using jni: no
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating libsecp256k1.pc
config.status: creating src/libsecp256k1-config.h
config.status: executing depfiles commands
config.status: executing libtool commands

Options used to compile and link:
  WITH WALLET   = yes
  WITH GUI / QT = yes
   WITH QR      = yes
  WITH TEST     = no
  WITH BENCH    = yes

  TARGET OS     = darwin
  BUILD OS      = darwin

  CC            = /usr/local/bin/ccache gcc
  CFLAGS        = -g -O2
  CPPFLAGS      = -Qunused-arguments  -DHAVE_BUILD_INFO -D__STDC_FORMAT_MACROS -I/usr/local/opt/berkeley-db4/include -DMAC_OSX
  CXX           = /usr/local/bin/ccache g++ -std=c++11
  CXXFLAGS      = -g -O2 -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter -Wno-self-assign -Wno-unused-local-typedef -Wno-deprecated-register
  LDFLAGS       =  -Wl,-headerpad_max_install_names -Wl,-dead_strip

@luke-jr
Copy link
Member

luke-jr commented Nov 14, 2016

What's with all the uppercase? Probably should specify which version of Qt.

@laanwj
Copy link
Member

laanwj commented Nov 14, 2016

Concept ACK

@maflcko
Copy link
Member

maflcko commented Nov 14, 2016

utACK 9d380ea

@laanwj
Copy link
Member

laanwj commented Nov 15, 2016

@theuni can you take a look as well?

configure.ac Outdated
Copy link
Contributor

Choose a reason for hiding this comment

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

No need for "".

configure.ac Outdated
Copy link
Contributor

Choose a reason for hiding this comment

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

"Conditionalize" QR on QT?

@paveljanik
Copy link
Contributor

Can you add ZMQ and miniupnpc co make it complete?

@paveljanik
Copy link
Contributor

paveljanik commented Nov 15, 2016

Concept ACK!

I like such verbosity, because it can the be used to compare build logs easily (it is no fun to look for differences on 500characters configure lines)....

@jonasschnelli
Copy link
Contributor Author

Updated, added major Qt version, ZMQ, UPNP, DEBUG ENABLED (more obvious then checking for -O0).
QR CODE and QT VERSION is only visible when QT is enabled.

This is how it looks now:

Options used to compile and link:
  WITH WALLET   = yes
  WITH GUI / QT = yes
    QT VERSION  = 5
    WITH QR     = yes
  WITH ZMQ      = yes
  WITH TEST     = yes
  WITH BENCH    = yes
  WITH UPNP     = yes
  DEBUG ENABLED = no

  TARGET OS     = darwin
  BUILD OS      = darwin

  CC            = /usr/local/bin/ccache gcc
  CFLAGS        = -g -O2
  CPPFLAGS      = -Qunused-arguments  -DHAVE_BUILD_INFO -D__STDC_FORMAT_MACROS -I/usr/local/opt/berkeley-db4/include -DMAC_OSX
  CXX           = /usr/local/bin/ccache g++ -std=c++11
  CXXFLAGS      = -g -O2 -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter -Wno-self-assign -Wno-unused-local-typedef -Wno-deprecated-register
  LDFLAGS       =  -Wl,-headerpad_max_install_names -Wl,-dead_strip

@sipa
Copy link
Member

sipa commented Nov 15, 2016

utACK ce1acfc6e9fb6e81c11f3d65446999462206eae6

@paveljanik
Copy link
Contributor

There are too many uppercase words WITH. I think that only variable names (CC, CFLAGS, ..., LDFLAGS) should be uppercased.

@theuni
Copy link
Member

theuni commented Nov 16, 2016

Very nice, concept ACK. Will review.
Edit: Well that's simple enough. utACK ce1acfc.

For bikeshedding, I agree with @paveljanik about not using caps except for variables that can be overridden. But it's not a big deal.

@laanwj
Copy link
Member

laanwj commented Nov 16, 2016

There are too many uppercase words WITH. I think that only variable names (CC, CFLAGS, ..., LDFLAGS) should be uppercased.

I tend to agree. Not that I care much for aesthetic reasons, but it can result in confusion, in the ./configure --help interface uppercase means 'a variable that can be overridden'. So yes let's make it less yelly :-)

@jonasschnelli
Copy link
Contributor Author

Switched the non CFLAGish stuff to lowercase:

This is how it looks now:

Options used to compile and link:
  with wallet   = yes
  with gui / qt = yes
    qt version  = 5
    with qr     = yes
  with zmq      = yes
  with test     = yes
  with bench    = yes
  with upnp     = yes
  debug enabled = no

  target os     = darwin
  build os      = darwin

  CC            = /usr/local/bin/ccache gcc
  CFLAGS        = -g -O2
  CPPFLAGS      = -Qunused-arguments  -DHAVE_BUILD_INFO -D__STDC_FORMAT_MACROS -I/usr/local/opt/berkeley-db4/include -DMAC_OSX
  CXX           = /usr/local/bin/ccache g++ -std=c++11
  CXXFLAGS      = -g -O2 -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter -Wno-self-assign -Wno-unused-local-typedef -Wno-deprecated-register
  LDFLAGS       =  -Wl,-headerpad_max_install_names -Wl,-dead_strip

@fanquake
Copy link
Member

Travis errors are unrelated. Output looks ok.

config.status: executing libtool commands

Options used to compile and link:
  with wallet   = yes
  with gui / qt = yes
    qt version  = 5
    with qr     = yes
  with zmq      = yes
  with test     = yes
  with bench    = yes
  with upnp     = yes
  debug enabled = no

  target os     = darwin
  build os      = darwin

  CC            = gcc
  CFLAGS        = -g -O2
  CPPFLAGS      =  -DHAVE_BUILD_INFO -D__STDC_FORMAT_MACROS -I/usr/local/opt/berkeley-db4/include -DMAC_OSX
  CXX           = g++ -std=c++11
  CXXFLAGS      = -g -O2 -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter -Wno-self-assign -Wno-unused-local-typedef -Wno-deprecated-register
  LDFLAGS       =  -Wl,-headerpad_max_install_names -Wl,-dead_strip

configure.ac Outdated
Copy link
Contributor

Choose a reason for hiding this comment

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

indent please.

configure.ac Outdated
Copy link
Contributor

Choose a reason for hiding this comment

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

no need for ""

@paveljanik
Copy link
Contributor

ACK d8274bc

@laanwj laanwj merged commit d8274bc into bitcoin:master Nov 17, 2016
laanwj added a commit that referenced this pull request Nov 17, 2016
d8274bc Add compile and link options echo to configure (Jonas Schnelli)
zkbot added a commit to zcash/zcash that referenced this pull request Dec 1, 2017
Build system improvements

Includes commits cherry-picked from the following upstream PRs:

- bitcoin/bitcoin#6978
  - Only the first commit (second is for QT)
- bitcoin/bitcoin#7059
- bitcoin/bitcoin#7603
  - Only the first commit (the rest are for QT)
- bitcoin/bitcoin#7954
- bitcoin/bitcoin#8314
  - Only the second commit (first is for QT)
- bitcoin/bitcoin#8504
  - Only the first commit (second was undoing something we didn't have)
- bitcoin/bitcoin#8520
- bitcoin/bitcoin#8563
- bitcoin/bitcoin#8249
- bitcoin/bitcoin#9156
- bitcoin/bitcoin#9831
- bitcoin/bitcoin#9789
- bitcoin/bitcoin#10766

Part of #2074.
zkbot added a commit to zcash/zcash that referenced this pull request Dec 15, 2017
Build system improvements

Includes commits cherry-picked from the following upstream PRs:

- bitcoin/bitcoin#6978
  - Only the first commit (second is for QT)
- bitcoin/bitcoin#7059
- bitcoin/bitcoin#7603
  - Only the first commit (without the `BITCOIN_QT_BIN` variable; the rest are for QT)
- bitcoin/bitcoin#7954
- bitcoin/bitcoin#8314
  - Only the second commit (first is for QT)
- bitcoin/bitcoin#8504
  - Only the first commit (second was undoing something we didn't have)
- bitcoin/bitcoin#8520
- bitcoin/bitcoin#8563
- bitcoin/bitcoin#8249
- bitcoin/bitcoin#9156
- bitcoin/bitcoin#9831
- bitcoin/bitcoin#9789
- bitcoin/bitcoin#10766

Part of #2074.
codablock pushed a commit to codablock/dash that referenced this pull request Jan 15, 2018
d8274bc Add compile and link options echo to configure (Jonas Schnelli)
kotodev pushed a commit to koto-dev/koto.old that referenced this pull request Jan 25, 2018
Build system improvements

Includes commits cherry-picked from the following upstream PRs:

- bitcoin/bitcoin#6978
  - Only the first commit (second is for QT)
- bitcoin/bitcoin#7059
- bitcoin/bitcoin#7603
  - Only the first commit (without the `BITCOIN_QT_BIN` variable; the rest are for QT)
- bitcoin/bitcoin#7954
- bitcoin/bitcoin#8314
  - Only the second commit (first is for QT)
- bitcoin/bitcoin#8504
  - Only the first commit (second was undoing something we didn't have)
- bitcoin/bitcoin#8520
- bitcoin/bitcoin#8563
- bitcoin/bitcoin#8249
- bitcoin/bitcoin#9156
- bitcoin/bitcoin#9831
- bitcoin/bitcoin#9789
- bitcoin/bitcoin#10766

Part of #2074.
renium9 added a commit to koto-dev/koto.old that referenced this pull request Feb 6, 2018
Build system improvements

Includes commits cherry-picked from the following upstream PRs:

- bitcoin/bitcoin#6978
  - Only the first commit (second is for QT)
- bitcoin/bitcoin#7059
- bitcoin/bitcoin#7603
  - Only the first commit (without the `BITCOIN_QT_BIN` variable; the rest are for QT)
- bitcoin/bitcoin#7954
- bitcoin/bitcoin#8314
  - Only the second commit (first is for QT)
- bitcoin/bitcoin#8504
  - Only the first commit (second was undoing something we didn't have)
- bitcoin/bitcoin#8520
- bitcoin/bitcoin#8563
- bitcoin/bitcoin#8249
- bitcoin/bitcoin#9156
- bitcoin/bitcoin#9831
- bitcoin/bitcoin#9789
- bitcoin/bitcoin#10766

Part of #2074.

# Conflicts:
#	configure.ac
#	src/Makefile.am
#	src/Makefile.gtest.include
#	src/Makefile.test.include
#	zcutil/build.sh
andvgal pushed a commit to energicryptocurrency/gen2-energi that referenced this pull request Jan 6, 2019
d8274bc Add compile and link options echo to configure (Jonas Schnelli)
CryptoCentric pushed a commit to absolute-community/absolute that referenced this pull request Feb 24, 2019
d8274bc Add compile and link options echo to configure (Jonas Schnelli)
@bitcoin bitcoin locked as resolved and limited conversation to collaborators Sep 8, 2021
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