Commit Graph

303 Commits

Author SHA1 Message Date
UdjinM6
d2c975dbd7
Merge pull request #4437 from PastaPastaPasta/backport-sept-17
Backport 14264, 14324, 14583, 14426, 13687
2021-09-25 02:55:50 +03:00
UdjinM6
02b75f0566
Merge pull request #4449 from PastaPastaPasta/backport-trivial-pr22
Backport trivial pr22
2021-09-25 00:43:30 +03:00
UdjinM6
2d1b13bd90
Merge pull request #4435 from PastaPastaPasta/backport-trivial-pr20
Backport trivial pr20
2021-09-24 23:10:10 +03:00
fanquake
70c299770e
Merge bitcoin/bitcoin#22123: depends: Fix qt.mk for mac arm64
3b36395b96c533dde47256b505cf1cbb2844c96e depends: Fix qt.mk for mac arm64 (João Barbosa)

Pull request description:

  With f16d4cd8c5412890ee0b73f4ef142b59d130e5d5 `depends/config.guess` gives `aarch64-apple-darwin20.3.0` where before would give `arm-apple-darwin20.3.0`. Fix `qt.mk` accordingly.

ACKs for top commit:
  hebasto:
    ACK 3b36395b96c533dde47256b505cf1cbb2844c96e, I have reviewed the code and it looks OK, I agree it can be merged.
  fanquake:
    ACK 3b36395b96c533dde47256b505cf1cbb2844c96e

Tree-SHA512: bd20402d0a6e9a5bb652198de189cf2b4f3f76fd03d0cba8c4d657c60b8a088cf3532efe6c1efbbedd94c00a155e6d180b77f1cd8bc24e0e35764839e8b77e30
2021-09-24 13:32:15 -04:00
fanquake
ded0b53986
Merge bitcoin/bitcoin#22071: depends: latest config.guess and config.sub
7e2a9890e50969cdfdd08d735fa8f3c611a663a7 depends: latest config.sub (2021-04-30) (fanquake)
f16d4cd8c5412890ee0b73f4ef142b59d130e5d5 depends: latest config.guess (2021-05-24) (fanquake)

Pull request description:

  This is split out of #21851. Updating these files should be mechanical, and shouldn't have to wait for that PR. Also, having support in depends for the new `arm-apple-darwin` target (added in [2593751ef276497e312d7c4ce7fd049614c7bf80](https://git.savannah.gnu.org/cgit/config.git/commit/?id=2593751ef276497e312d7c4ce7fd049614c7bf80)) is useful when debugging. i.e #22070.

  If you try and compile depends for a `arm-apple-darwin` target using master, on a x86_64 darwin machine, currently you'll get:
  ```bash
  gmake -C depends -j9 HOST=arm64-apple-darwin
  Invalid configuration `arm64-apple-darwin': machine `arm64-apple' not recognized
  shasum: hosts/.mk: No such file or directory
  <omitted>
  Makefile:111: hosts/.mk: No such file or directory
  gmake: *** No rule to make target 'hosts/.mk'.  Stop.
  ```

ACKs for top commit:
  laanwj:
    ACK 7e2a9890e50969cdfdd08d735fa8f3c611a663a7

Tree-SHA512: 8ed99b5d486c6cbca8929a752460338b6ee17f6bf93013c76589605678853c3a01ebd631b4d3f5d6aaeb6e5c21b7bbe39afc4454d3a697fafb27678f6d2c021e
2021-09-24 13:32:15 -04:00
MarcoFalke
08c66a27b4
Merge #19868: build: Fix target name
7a89f2e6c539a54bcaa24bff41aae3910244ad3d build: Fix target name (Hennadii Stepanov)

Pull request description:

  It seems like a typo :)
  This PR:
  - fixes errors when building a package in depends for `HOST=x86_64-apple-darwin16` (fix #19799)
  - is a correct alternative to d25e0e308f from #19764

ACKs for top commit:
  icota:
    tACK 7a89f2e6c5
  dongcarl:
    Code Review ACK 7a89f2e6c539a54bcaa24bff41aae3910244ad3d
  theuni:
    ACK 7a89f2e6c539a54bcaa24bff41aae3910244ad3d.

Tree-SHA512: a0bcbc6805d3450e201476ef1e22e0eb53903db1586c5515314c19afd337bded887e56de0fbe62feaf359b2de15dbccd49a44f1a8b566b4c64f5ae3d94a2ab6d
2021-09-24 13:26:38 -04:00
Pasta
4bb09abcf9
Merge #14264: doc: Split depends installation instructions per arch 2021-09-24 13:10:49 -04:00
UdjinM6
b78ceed6ca
Merge pull request #4426 from Munkybooty/backports-0.18-pr17
Backports 0.18 pr17
2021-09-24 12:02:53 +03:00
Chun Kuan Lee
bcbaa00363 Partial Merge #13710: [depends] Add riscv qt depends support for cross compiling bitcoin-qt 2021-09-21 17:24:55 -04:00
UdjinM6
6ac3b30107
Merge pull request #4433 from PastaPastaPasta/backport-trivial-pr19
Backport trivial pr19
2021-09-19 10:34:12 +03:00
fanquake
1aa025f402
Merge #19617: doc: Clang 8 or later is required with FORCE_USE_SYSTEM_CLANG
e60ef21b8a0f62ebc2e0bdbb5943fa80cc4d98b2 doc: Clang 8 or later is required with FORCE_USE_SYSTEM_CLANG (fanquake)

Pull request description:

  The usage of pragmas within the macOS SDK requires LLVM Clang 8. This is
  the same version as our prebuilt Clang, however the minimum is worth noting
  here as they may diverge and/or expert users might expect they could use an
  earlier version.

  If you compile depends using `FORCE_USE_SYSTEM_CLANG=1` and Clang 7 you'll see output like:
  ```bash
  In file included from kernel/qcore_mac_objc.mm:44:
  In file included from /bitcoin/depends/SDKs/Xcode-11.3.1-11C505-extracted-SDK-with-libcxx-headers/System/Library/Frameworks/AppKit.framework/Headers/NSText.h:9:
  In file included from /bitcoin/depends/SDKs/Xcode-11.3.1-11C505-extracted-SDK-with-libcxx-headers/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:19:
  In file included from /bitcoin/depends/SDKs/Xcode-11.3.1-11C505-extracted-SDK-with-libcxx-headers/System/Library/Frameworks/AppKit.framework/Headers/NSResponder.h:10:
  /bitcoin/depends/SDKs/Xcode-11.3.1-11C505-extracted-SDK-with-libcxx-headers/System/Library/Frameworks/AppKit.framework/Headers/NSEvent.h:19:1: error:
        expected 'push' or 'pop' after '#pragma clang attribute'
  /bitcoin/depends/SDKs/Xcode-11.3.1-11C505-extracted-SDK-with-libcxx-headers/usr/include/os/availability.h:104:273: note: expanded from macro
        'API_UNAVAILABLE_BEGIN'
    ...__API_UNAVAILABLE_BEGIN5, __API_UNAVAILABLE_BEGIN4, __API_UNAVAILABLE_BEGIN3, __API_UNAVAILABLE_BEGIN2, __API_UNAVAILABLE_BEGIN1, 0)(__VA_A...
                                                                                                               ^
  fatal error: too many errors emitted, stopping now [-ferror-limit=]
  20 errors generated.
  ```

  I've got a [godbolt here](https://godbolt.org/z/j6r987) that contains a demo of the issue (based off the macOS SDK). It will compile with Clang 8 but not with Clang 7.

ACKs for top commit:
  laanwj:
    ACK e60ef21b8a0f62ebc2e0bdbb5943fa80cc4d98b2

Tree-SHA512: affc082a4b28d9cd102a844e10f63f55f0f20a9f840e5d8037a41470ad1ea83edc3075ce262b1d618c59c9b75445e52ddd9ba9f84c5ac3da9ce20681473c47b1
2021-09-18 21:46:26 -04:00
Kittywhiskers Van Gogh
c81f430289 merge #20471: use C++17 in depends 2021-09-15 11:30:57 +05:30
TheLazieR Yip
c0aa1d5e9a
Fix outdated config.(guess|sub) of libbacktrace (#4417)
The versions of config.guess and config.sub are too old and do not recognize linux musl architecture.
2021-09-13 12:57:24 -04:00
Wladimir J. van der Laan
7033d51f70 Merge #15188: Update zmq to 4.3.1
3046e5fc019c7276300c65500fb4701e70f6c9d8 Update zmq to 4.3.1 (Dimitris Apostolou)

Pull request description:

  Addresses https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-6250

Tree-SHA512: 9daa6580d103dad5f1499de1e9f5e1990cb4d630982f4ff35dcba492d7c7fc6e6224556ffd01575c97d50c34011f6e03677601ce35bc396a9e2a083508a64340
2021-09-09 12:11:43 -07:00
Dzutte
22dd7bfa37
Merge #13578: [depends, zmq, doc] upgrade zeromq to 4.2.5 and avoid deprecated zeromq api functions (#4397)
f1bd03eb013b96ff040a8f835e4137fbd2a38cda [depends, zmq, doc] upgrade zeromq to 4.2.5 and avoid deprecated zeromq api functions (mruddy)

Pull request description:

  Upgrade the ZeroMQ dependency from version 4.2.3 to the latest stable version 4.2.5.

  This PR Follows the lead of https://github.com/bitcoin/bitcoin/pull/11986.

  I upgraded both patch files to correspond to the version `4.2.5` libzmq files.
  I assume doing so is still necessary and correct.

  Without updating the patch line numbers, things appear to work, but you get extra log messages while building `depends` because things don't exactly match, e.g.:
  ```
  /bitcoin/depends> make zeromq
  Extracting zeromq...
  /bitcoin/depends/sources/zeromq-4.2.5.tar.gz: OK
  Preprocessing zeromq...
  patching file src/windows.hpp
  Hunk #1 succeeded at 58 (offset 3 lines).
  patching file src/thread.cpp
  Hunk #1 succeeded at 307 with fuzz 2 (offset 87 lines).
  Hunk #2 succeeded at 323 with fuzz 2 (offset 90 lines).
  ```
  Updating the patches seemed cleaner, so I did it. Note that libzmq had some whitespace changes, so that's why the updated patches do too.

  More info: https://github.com/zeromq/libzmq/releases/tag/v4.2.5

  tags: libzmq, zmq, 0mq

Tree-SHA512: 78659dd276b5311e40634b1bbebb802ddd6b69662ba3c84995ef1e3795c49a78b1635112c7fd72a405ea36e2cc3bdeb84e6d00d4e491a349bba1dafff50e2fa5

Co-authored-by: Wladimir J. van der Laan <laanwj@gmail.com>
2021-09-08 12:25:20 -04:00
UdjinM6
7a68820b44
depends: Small tweaks in bls-dash and immer packages (#4391)
* depends: Use `_staging_dir` in `bls-dash` and `immer` packages the way it's suggested in `depends/packages.md`

* depends: Do not build static binaries in `bls-dash` package
2021-09-07 03:22:48 +03:00
Kittywhiskers Van Gogh
b20e601b85 partial merge #19817: clang 10.0.1 2021-09-04 10:19:31 +05:30
Kittywhiskers Van Gogh
8c1975e27d merge #21457: split libtapi and clang out of native_cctools 2021-09-04 10:19:31 +05:30
Kittywhiskers Van Gogh
a2687d4594 partial merge #19761: improve sed robustness by not using sed 2021-09-04 10:19:31 +05:30
Kittywhiskers Van Gogh
5387ff980f merge #19547: Update macOS cross compilation dependencies for Focal 2021-09-04 10:19:31 +05:30
Kittywhiskers Van Gogh
ad7045047b partial merge #15382: add RunCommandParseJSON
contains only 8314c23d7b39fc36dde8b40b03b6efbe96f85698
2021-09-04 10:19:31 +05:30
Kittywhiskers Van Gogh
adbc5f1dde merge #19530: build LTO support into Apple's ld64 2021-09-04 10:19:31 +05:30
Kittywhiskers Van Gogh
96f968c250 merge #21793: use -isysroot over --sysroot on macOS 2021-09-04 10:19:31 +05:30
Kittywhiskers Van Gogh
04b458c6bb build: fix path definitions when cross-compiling for Darwin 2021-09-03 21:35:53 +05:30
Kittywhiskers Van Gogh
7260597fc6 partial merge #19683: Pin clang search paths for darwin host
Skipped 8033110741
2021-09-03 21:35:53 +05:30
Kittywhiskers Van Gogh
1beb7bb046 merge #20359: Various config.site.in improvements and linting 2021-09-03 21:35:53 +05:30
Kittywhiskers Van Gogh
fd3db69ed8 merge #17919: Allow building with system clang 2021-09-03 21:35:53 +05:30
Kittywhiskers Van Gogh
3fefde95da merge #19407: explain why passing -mlinker-version is required when cross-compiling 2021-09-03 21:35:53 +05:30
Kittywhiskers Van Gogh
d451833380 merge #20419: set minimum supported macOS to 10.14 2021-09-03 21:35:53 +05:30
Kittywhiskers Van Gogh
6349b7e401 merge #19240: macOS toolchain simplification and bump 2021-09-03 17:49:55 +05:30
UdjinM6
7ccdd16816
depends: use build_tmp subdir when building immer (#4383) 2021-09-03 04:19:46 +03:00
Kittywhiskers Van Gogh
cc03953ded
merge #22186: Fix compiling qt package in depends with GCC 11 (#4386) 2021-09-02 17:30:12 -04:00
Wladimir J. van der Laan
07a7fda225
Merge #15939: gitian: Remove Windows 32 bit build
fa193dc8e6f3b96fa2dba2f1c1668f7720fed320 doc: Remove win32 from the release process (MarcoFalke)
faf666f8148eeb305a9c4f78459aff2c7268016b Remove Windows 32 bit build (MarcoFalke)

Pull request description:

  The Windows 32 bit build has been removed from https://bitcoincore.org/en/download/, so unless there are complaints, we don't need to build it even

ACKs for commit fa193d:
  fanquake:
    utACK fa193dc8e6

Tree-SHA512: d6f2976a2e0c407698f720b00ac23ec4056626de4eff8621f4c5581120af0460afd1bdef72329cc0e7d92afca48d94ae5fce6777cb36bfabb60b8034ff08fd88
2021-09-02 22:27:58 +03:00
Kittywhiskers Van Gogh
35bc42feb0
build: patch relic to satisfy gcc 11's stricter requirements (#4384) 2021-09-02 03:03:04 +03:00
PastaPastaPasta
b483948627
Merge pull request #4255 from kittywhiskers/darwinqol
build: gitian, linting and macOS-specific QoL improvements (part 1)
2021-09-01 19:51:48 -04:00
Kittywhiskers Van Gogh
a358d2e593 merge #16392: macOS toolchain update 2021-09-02 01:55:01 +05:30
PastaPastaPasta
bbc8623245
Merge pull request #4356 from kittywhiskers/depends
merge bitcoin#18820, #19764, #13686, #17538, #18405: zmq backports, boost depends split
2021-08-31 15:31:38 -04:00
Kittywhiskers Van Gogh
d5b895bb3c merge #17057: switch to upstream libdmg-hfsplus 2021-08-31 11:16:12 +05:30
Kittywhiskers Van Gogh
5b8e1b9fd9 merge #15601: Switch to python3 2021-08-31 11:16:12 +05:30
Kittywhiskers Van Gogh
0b13db2ac5 merge #14954: Require python 3.5 2021-08-31 11:16:12 +05:30
Kittywhiskers Van Gogh
ced48380b8 partial merge #17550: set minimum supported macOS to 10.12 2021-08-31 11:16:04 +05:30
Kittywhiskers Van Gogh
7391aad4b7 merge bitcoin#18405: Drop all ZeroMQ patches 2021-08-28 11:58:51 +05:30
Kittywhiskers Van Gogh
b3bf4de655
build: remove change-directory-and-build-depends behavior for immer (#4367) 2021-08-28 01:58:43 +03:00
Kittywhiskers Van Gogh
a003178978 partial merge #18677: Multiprocess build support
The bare minimum necessary change for #19764. Marked as "partial merge" for attribution only, otherwise considered unmerged
2021-08-28 00:42:10 +05:30
Kittywhiskers Van Gogh
6a367fc198 merge bitcoin#19764: Split boost into build/host packages + bump + cleanup 2021-08-28 00:42:09 +05:30
Kittywhiskers Van Gogh
ca0f5f5078 merge bitcoin#18820: Propagate well-known vars into depends 2021-08-28 00:42:02 +05:30
Wladimir J. van der Laan
f8aa222ba3 Merge #14849: depends: qt 5.9.7
a46c8476e9598742e52944b6270b1854c8f500a2 depends: disable unused qt features (fanquake)
73b46eeb7ea78cab051d770e3fe8a0c0fbb43ef9 depends: qt 5.9.7 (fanquake)
095e765975c2204f7e730bc8f0716227e480caa5 depends: expat 2.2.6 (fanquake)

Pull request description:

  This PR upgrades `expat` and `qt` in depends. The intention is to upgrade Qt in master to the latest point release of the current Qt LTS. This change can then be back-ported to the 0.17 branch (wether it makes it into 0.17.1 or not).

  Then, sometime before the 0.18.0 release, we could move to using Qt 5.12+ in depends (which is also LTS). That discussion, as well as minimum supported Qt versions is in #13478.

  ### Qt 5.9.7
  [Release announcement](https://blog.qt.io/blog/2018/10/23/qt-5-9-7-released/)
  [Changelog](https://bugreports.qt.io/browse/QTBUG-70888?filter=20149)

  ### Expat 2.2.6
  * Avoid doing arithmetic with NULL pointers in XML_GetBuffer
  * Fix 2.2.5 regression with suspend-resume while parsing a document like <root/>

  Full changelog [here](https://github.com/libexpat/libexpat/blob/R_2_2_6/expat/Changes)

  a46c8476e9 disables a bunch of qt features we aren't currently using. This speeds up the qt depends build slightly (also decreases the size of the built `qt-5.9.7` tar by about 2%). The disabling is somewhat unintuitive, hence `[wip]` until after a travis run and gitian build.

Tree-SHA512: f3d51d0c7dabe5b7043ef23f264abf2aba3e94e55ffc9d5c323b153b6852d9161368e1591db3ba28f3498f0613bac77d40b855bd0465296f52be03f9230656de
2021-08-15 11:08:08 -04:00
Kittywhiskers Van Gogh
fc8952aa19
build: add libgmp detection, make immer a package (#4311)
* build: detect the presence of libgmp before generating Makefile

* depends: add arximboldi/immer@v0.6.2 as a package and add detection

* depends: remove immer from source tree, build using package only

* Drop immer refs from tools

Co-authored-by: UdjinM6 <UdjinM6@users.noreply.github.com>
2021-08-10 22:35:55 +03:00
fanquake
66d80b6a30
Merge #18743: depends: Add --sysroot option to mac os native compile flags
1e94a2bcbc5ff8ae61eed9f31317ea534649116d depends: Add --sysroot option to mac os native compile flags (Russell Yanofsky)

Pull request description:

  Catalina SDK clang stopped automatically searching the SDK include paths when invoked without `--sysroot`:

  - https://github.com/bitcoin/bitcoin/pull/16367#issuecomment-594600985
  - https://github.com/Homebrew/homebrew-core/issues/45061

  This hasn't been a problem for current native depends packages because are passing their own `--sysroot` values, and hasn't been a problem for current host packages because they use `darwin_` commands instead of `build_darwin_` commands.  But the current `build_darwin_CC` and `build_darwin_CXX` commands are still unnecessarily fragile, and incompatible with new native depends packages added in https://github.com/bitcoin/bitcoin/pull/18677.

  Cory Fields (theuni) suggested in https://github.com/bitcoin/bitcoin/pull/16367#issuecomment-595393546 switching compiler from SDK clang to native clang (from $PATH) to avoid this problem. This is easy and makes a certain amount of sense for building native packages, as opposed to host packages. But Michael (fanquake) pointed out in https://github.com/bitcoin/bitcoin/pull/18677#discussion_r409934309 that it would be inconsistent to switch to non-SDK compilers while still using other SDK tools like `ranlib` and `install_name_tool`. So simplest, minimal fix seems to be just adding the missing `--sysroot` option.

ACKs for top commit:
  ryanofsky:
    > ACK [1e94a2b](1e94a2bcbc) - I think this change is ok, and I prefer it to the previous patch.
  fanquake:
    ACK 1e94a2bcbc5ff8ae61eed9f31317ea534649116d - I think this change is ok, and I prefer it to the previous patch. Thanks for the summary in the PR description. I played around with Xcode and the CLT; I think previously I didn't fully grok the slight differences between the two.

Tree-SHA512: 4d4bbb7f49acb76d934a872a15b4e14f36290b508cb9e728815f959767ec174bcfb6d2ca7dcd995cc550d86980d64d4247ea5ecfca2301f0953006e50744fdb4
2021-07-19 22:11:33 +03:00
Wladimir J. van der Laan
e481d2ca49 Merge #14647: build: Remove illegal spacing in darwin.mk
63c74d2d3abcb685c773c3ad1414da6ad062a55d build: Remove illegal spacing in darwin.mk (Jon Layton)

Pull request description:

  MacOS 10.13.6, `make -v` = `GNU Make 4.2.1  Built for x86_64-apple-darwin17.7.0`

  ```
  cd depends
  make HOST=x86_64-apple-darwin17.7.0
  ```
  Results in error:
  ```
  builders/darwin.mk:1: *** empty variable name.  Stop.
  ```

  This seems to fix it.

Tree-SHA512: 3481b9418571186c123942dc95b12bcaf47acbe2099ddd4524f5bb9dfe203175d7252bb7a1aa8ca5fec82578beeacfa06299472cb9d0d627c61f09486d74756c
2021-07-17 14:34:24 -05:00