Doc: Fix BSD docs regarding gmake #18129

pull abitfan wants to merge 1 commits into bitcoin:master from abitfan:bsddocs changing 3 files +11 −2
  1. abitfan commented at 6:18 pm on February 12, 2020: contributor
    Fixes #14404
  2. Fix BSD docs regarding gmake a44de1fe5a
  3. fanquake added the label Docs on Feb 12, 2020
  4. murrayn changes_requested
  5. murrayn commented at 10:39 am on February 13, 2020: contributor
    Adding MAKE=gmake as an argument to the ./configure command line examples might be preferable, as setenv is specific to csh.
  6. laanwj commented at 2:46 pm on February 13, 2020: member

    I’m still confused why this is needed. I’ve been running a node on a FreeBSD machine for years, and never had to redefine MAKE.

    A clean checkout of master on FreeBSD 12.0-RELEASE-p10:

     0user@medea:~/src/bitcoin % echo $MAKE
     1MAKE: Undefined variable.
     2user@medea:~/src/bitcoin % ./autogen.sh
     3
     4user@medea:~/src/bitcoin % ./configure --disable-wallet --disable-dependency-tracking
     5checking build system type... amd64-unknown-freebsd12.0  
     6checking host system type... amd64-unknown-freebsd12.0
     7
     8user@medea:~/src/bitcoin % gmake -j4
     9
    10user@medea:~/src/bitcoin % size src/bitcoind
    11     text    data     bss       dec        hex   filename
    12  5594825   59184   19896   5673905   0x5693b1   src/bitcoind
    

    Do you need this when building other autoconf projects as well? If not, I wonder what is different in our build system.

  7. abitfan commented at 3:40 pm on February 13, 2020: contributor
    @murrayn There are at least two ./configure examples in each doc file and more can be added later on, imho it just clutters the documentation but it can be changed if deemed necessary. On top of that csh is the default shell on BSDs and compiling bitcoin from source requires some knowledge of the OS anyway. @laanwj You ran ./configure with –disable-dependency-tracking which won’t trigger the problem. This behavior is reproducible on any fresh bsd install. “Do you need this when building other autoconf projects…”. Yes if you use gmake since autoconf will by default use the system’s make.
  8. laanwj commented at 3:42 pm on February 13, 2020: member
    So it’s an alternative for --disable-dependency-tracking? Makes sense then.
  9. in doc/build-freebsd.md:42 in a44de1fe5a
    35@@ -36,7 +36,10 @@ export BDB_PREFIX="$PWD/db4"
    36 
    37 ## Building Bitcoin Core
    38 
    39-**Important**: Use `gmake` (the non-GNU `make` will exit with an error):
    40+**Important**: Use `gmake` (the non-GNU `make` will exit with an error).
    41+```shell
    42+setenv MAKE gmake
    43+```
    


    vasild commented at 8:22 pm on February 13, 2020:

    setenv is not portable between shells. Yes, it works on the default csh but does not work in others.

    Given that ./configure MAKE=gmake is an equivalent and works with any shell, I would suggest to add MAKE=gmake a few lines below where we show how to execute ./configure.

  10. fanquake commented at 12:13 pm on February 20, 2020: member
    I agree with the other commenters in using ./configure MAKE=gmake.
  11. fanquake added the label Waiting for author on Feb 20, 2020
  12. fanquake commented at 3:26 am on March 13, 2020: member
    Picked this up in #18340.
  13. fanquake closed this on Mar 13, 2020

  14. fanquake removed the label Waiting for author on Mar 13, 2020
  15. laanwj referenced this in commit 527c3989e7 on Mar 19, 2020
  16. sidhujag referenced this in commit decb1c62d0 on Mar 19, 2020
  17. sidhujag referenced this in commit 70ff1f8cac on Nov 10, 2020
  18. DrahtBot locked this on Feb 15, 2022

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-10-30 00:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me