Commit graph

39 commits

Author SHA1 Message Date
fanquake e60ef21b8a
doc: Clang 8 or later is required with FORCE_USE_SYSTEM_CLANG
The usage of pragmas within the macOS SDK requires LLVM Clang 8. This is
the 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 using 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.
```
2020-07-29 10:49:54 +08:00
Hennadii Stepanov 6be3eebd74
doc: Update macOS cross compilation dependencies for Focal 2020-07-18 18:05:40 +03:00
Carl Dong de4fedb6c3
depends: Add documentation for FORCE_USE_SYSTEM_CLANG make flag 2020-07-10 21:06:32 -04:00
Carl Dong fe98999dcf
depends: Reformat make options as definition list 2020-07-10 21:06:31 -04:00
Russell Yanofsky 603fd6a2e7 depends: add MULTIPROCESS depends option
Builds required packages and passes --enable-multiprocess option to bitcoin build
2020-05-12 09:47:06 -04:00
MarcoFalke f29bd546ec Revert "Merge #16367: Multiprocess build support"
This reverts the changes made in merge commit
1b30761360:

This reverts commit b919efadff.
This reverts commit d54f64c6c7.
This reverts commit 787f40668d.
This reverts commit d630646662.
This reverts commit e6e44eedd5.
2020-04-10 19:38:21 -04:00
Russell Yanofsky d630646662 libmultiprocess depends build 2020-04-05 21:48:21 -04:00
fanquake 9e071b0089
test: remove rapidcheck integration and tests 2020-04-03 22:47:59 +08:00
MarcoFalke fa55a2554c
depends: Remove reference to win32
win32 is no longer mentioned in doc/build-windows.md
2020-02-09 13:22:29 -08:00
MarcoFalke 1d6fda65dd
Merge #17678: depends: Support for S390X and POWER targets
11113247c3 depends: Support for S390X targets (MarcoFalke)
989fd539d5 depends: Support for 64-bit POWER targets (Luke Dashjr)

Pull request description:

  Failure before:

  ```
  $ make -C depends HOST=powerpc64-linux-gnu
  ...
  ERROR: Feature 'system-zlib' was enabled, but the pre-condition 'libs.zlib' failed.

  ERROR: Feature 'xcb' was enabled, but the pre-condition 'libs.xcb' failed.

  ERROR: Feature 'system-freetype' was enabled, but the pre-condition 'features.freetype && libs.freetype' failed.

  ERROR: Feature 'fontconfig' was enabled, but the pre-condition '!config.win32 && !config.darwin && features.system-freetype && libs.fontconfig' failed.
  make: *** [funcs.mk:254: /bitcoin/depends/work/build/powerpc64-linux-gnu/qt/5.9.8-95548079095/qtbase/.stamp_configured] Error 3

  $ make -C depends HOST=s390x-linux-gnu
  ...
  ERROR: Feature 'system-zlib' was enabled, but the pre-condition 'libs.zlib' failed.

  ERROR: Feature 'xcb' was enabled, but the pre-condition 'libs.xcb' failed.

  ERROR: Feature 'system-freetype' was enabled, but the pre-condition 'features.freetype && libs.freetype' failed.

  ERROR: Feature 'fontconfig' was enabled, but the pre-condition '!config.win32 && !config.darwin && features.system-freetype && libs.fontconfig' failed.
  make: *** [funcs.mk:254: /bitcoin/depends/work/build/s390x-linux-gnu/qt/5.9.8-79c6d6ca6ec/qtbase/.stamp_configured] Error 3
  ```

ACKs for top commit:
  laanwj:
    Code review ACK 11113247c3
  dongcarl:
    tested ACK 11113247c3
  practicalswift:
    ACK 11113247c3 -- diff looks correct

Tree-SHA512: f990101ced0ed579168bb25762c1296c9b512c597bab924013af41832670a69ed786c6ec9b654c95fe064187797880a66c575395bc102a914c1bdb323ca7538a
2019-12-09 12:48:56 -05:00
MarcoFalke 11113247c3
depends: Support for S390X targets 2019-12-05 12:12:46 -05:00
Luke Dashjr 989fd539d5 depends: Support for 64-bit POWER targets 2019-12-05 12:06:28 -05:00
fanquake c8becb8280
depends: add ability to skip building qrencode 2019-12-03 15:16:04 -05:00
fanquake 7d7bf2ff4a
build: set minimum supported macOS to 10.12 2019-11-21 11:08:47 -05:00
Igor Cota 3fe1aba601 depends: move README.md Android instructions to a separate section 2019-11-05 10:35:53 +01:00
Igor Cota aa9b84acee depends: update README.md with working Android targets and API levels 2019-11-04 16:13:08 +01:00
Wladimir J. van der Laan 91fbcf41b3
Merge #16110: depends: Add Android NDK support
f9af3ced1c Android: add all arch support (Block Mechanic)
d419ca7e32 depends: export dynamic JNI symbols from static qtforandroid.a (Igor Cota)
ed30684d03 Qt: patch androidjnimain.cpp to make sure JNI is initialised when statically compiled (Igor Cota)
e4c319e8a1 builds: remove superfluous config_opts_aarch64_android (Igor Cota)
24ffef0c27 Patch libevent when building for Android (fix arc4random_addrandom) (Igor Cota)
f1e40b3e71 Update bitcoin_qt.m4 (BlockMechanic)
b4057d8261 Define TARGET_OS when host is android (Igor Cota)
80b475f159 Fix Android zlib cross compilation issue (https://stackoverflow.com/questions/21396988/zlib-build-not-configuring-properly-with-cross-compiler-ignores-ar) (Igor Cota)
45f8219015 Add full Android build example command and instructions on getting SDK/NDK (Igor Cota)
b68f2a68c2 Add config opts and patch for aarch64_android build of Qt (Igor Cota)
9c4cb0166e Add ranlib to android.mk hosts file (fix OSX Android NDK build) (Igor Cota)
c2a749c9c1 Add example Android host-platform-triplet and options (Igor Cota)
0b0cff3c61 Add support for building Android dependencies (Igor Cota)

Pull request description:

  This allows one to build the dependencies with the Android SDK and goes towards fixing #11844. It has been tested to work with:
  `make HOST=aarch64-linux-android ANDROID_API_LEVEL=28 ANDROID_TOOLCHAIN_BIN=/home/user/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin NO_QT=1 NO_WALLET=1`

ACKs for top commit:
  Sjors:
    ACK f9af3ce. I'm OK with merging and then improving later.

Tree-SHA512: cb805115ebe5c9e33db2bf3eab8628808fe3f50052053d8877d8b8e4406d6fea1ed9e5c4dff85d777fb99c81be6ffb9d95a0e6d32344e728e5e0da6c653e2ce7
2019-11-04 13:32:19 +01:00
fanquake 67328bb7ca
build: remove protobuf from depends 2019-10-24 16:01:42 -04:00
Igor Cota 45f8219015 Add full Android build example command and instructions on getting SDK/NDK 2019-09-19 11:27:18 +02:00
Igor Cota c2a749c9c1 Add example Android host-platform-triplet and options 2019-09-19 11:27:18 +02:00
fanquake 107e030723
build: make protobuf optional in depends
Those that want to build it can now pass PROTOBUF=1.
2019-09-14 12:58:59 +08:00
Russell Yanofsky be27161ee4
Clarify need to specify --prefix with depends
If not cross compiling, it might actually be nice for it to be picked up
automatically. But for now clarify the readme to try to minimize confusion.

https://github.com/chaincodelabs/libmultiprocess/issues/4#issuecomment-515619707
https://github.com/chaincodelabs/libmultiprocess/issues/5#issuecomment-518826298
2019-08-23 14:18:16 +08:00
fanquake c995c870aa
depends: add ability to skip building zeromq 2019-05-25 12:06:23 -04:00
fanquake 4de3c15671
depends: add patch to common dependencies 2019-05-20 12:01:17 +08:00
MarcoFalke faf666f814
Remove Windows 32 bit build 2019-05-03 13:41:27 -04:00
fanquake ac67582ff7
depends: latest rapidcheck, use INSTALL_ALL_EXTRAS 2019-03-24 13:26:07 +08:00
MarcoFalke fab5a1e0f4
build: Require python 3.5 2019-03-02 10:40:23 -05:00
MarcoFalke fad95e8da6
doc: Split build linux dependencies 2018-09-19 10:18:35 -04:00
MarcoFalke 0000009015
doc: Split depends installation instructions per arch 2018-09-18 20:46:02 -04:00
Chris Stewart b2f49bd732 Integration of property based testing into Bitcoin Core
update copyright headers

attempt to fix linting errors

Fixing issue with make check classifying generator files as actual unit tests

Wrapping gen files in ENABLE_PROPERTY_TESTS macro

Make macro better
2018-08-27 08:51:51 -05:00
fanquake 26b15df99d
depends: set OSX_MIN_VERSION to 10.10 2018-07-25 07:30:27 +08:00
Wladimir J. van der Laan 974f0bf8e6 depends: Mention RISC-V known compilation issue with gcc-7.3.x 2018-07-09 16:30:43 +02:00
Wladimir J. van der Laan 359e2e3525 depends: Add RISC-V support 2018-06-27 13:20:02 +00:00
Giulio Lombardo 989c8990bb Rename “OS X” to the newer “macOS” convention 2018-06-04 13:04:04 +02:00
Jonas Schnelli 31a0135633
Add required package dependencies for depends cross compilation
[skip-ci]
2017-12-14 20:45:35 -10:00
Wladimir J. van der Laan 06f40ef324 depends: Mention aarch64 as common cross-compile target 2016-06-22 14:37:39 +02:00
Cory Fields dc4ec6d3db depends: create a hostid and buildid and add option for salts
These add very simple sanity checks to ensure that the build/host toolchains
have not changed since the last run. If they have, all ids will change and
packages will be rebuilt.

For more complicated usage (like parsing dpkg), HOST_ID_SALT/BUILD_ID_SALT may
be used to introduce arbitrary data to the ids.
2016-04-04 19:26:44 -04:00
Chris Kleeschulte 34754ce3bc [Trivial] Fixed typo when referring to a previous section in
depends/README.md [skip ci]
2015-10-08 15:27:12 -04:00
Shawn Wilkinson cc3db874b5 doc: Documentation in Markdown for Depends Dir
Documentation more readable when viewed on Github.

Some extra changes by @laanwj:

- Make README.usage the default README. This is more convenient from a
  user perspective. Link to other documentation in this default README

- Add list of popular targets for cross compilation, change default to
  Win64 instead of Win32
2015-05-15 12:35:20 +02:00