aboutsummaryrefslogtreecommitdiff
path: root/depends/hosts
AgeCommit message (Collapse)Author
2021-05-06depends: Add missing -D_LIBCPP_DEBUG=1 to debug flagsMarcoFalke
2021-05-01build: use -stdlib++-isystem with Clang 10fanquake
2021-05-01build: Xcode 12.1, macOS SDK 10.15.6fanquake
2021-05-01build: native cctools 973.0.1, ld64 609fanquake
2021-04-29build: use -isysroot over --sysroot on macOSfanquake
2021-03-30build: split native_cctoolsfanquake
2021-01-07depends: Fully determine path for darwin cctoolsCarl Dong
See previous commit for description.
2021-01-07depends: Fully determine path for darwin_{CC,CXX}Carl Dong
Instead of doing the awkward /bin path prepending at config.site creation time, set darwin_{CC,CXX} in a way that fully determines the program's path (clang/clang++) similar to how AC_PATH_{TOOL,PROG} would do. Also see the added comment block in depends/Makefile for more context on determining $PATH for our config.site.
2021-01-07depends: Remove -fuse-ld lineCarl Dong
clang warns when a command line option is unused, and some of our tests use Werror, so unfortunately we cannot use this flag to pin our linker for now. Leaving this commit in for future reference, as it would be great if there's more granularity to Werror and we can be explicit about what linker we want to use.
2021-01-07depends: Pin clang search paths for darwin hostCarl Dong
2020-11-18build: set minimum supported macOS to 10.14fanquake
2020-07-10depends: Add justifications for macOS clang flagsCarl Dong
2020-07-10depends: specify libc++ header location for darwinCory Fields
For depends builds this was fixed by fbcfcf69, which deleted the conflicting headers. When we no longer control the clang installation, we need to ensure that the SDK's libc++ headers are used rather than the ones shipped with clang. We can do that by turning off the default include path and hard-coding our own. This hard-coded path is ok because we control (via SDK packaging) where these headers end-up. Side-note: Now that this path is hard-coded in depends, we can potentially package the SDK differently, as the c++ folder can live wherever is most convenient for us.
2020-07-07depends: Allow building with system clangCarl Dong
2020-07-07depends: Decouple toolchain + binutilsCarl Dong
For now they remain the same, but in the next commit, we will assign them differently according to wether or not we're using system clang.
2020-06-29doc: explain why passing -mlinker-version is requiredfanquake
2020-06-22darwin: pass mlinker-version so that clang enables new featuresCory Fields
Without this clang fails to add any newly-added linker features. Removing this in ca5055a5aa07aba81a87cf12f6f0526a63c423b5 was likely a regression. See https://github.com/bitcoin/bitcoin/pull/19240#issuecomment-647764049 for more discussion.
2020-06-22macos: Bump to xcode 11.3.1 and 10.15 SDKCory Fields
This gets us a newer SDK with c++17 support and retains 10.12 back-compat. Co-authored-by: Carl Dong <contact@carldong.me>
2020-06-22Adapt rest of tooling to new SDK naming schemeCarl Dong
2020-05-27depends: Propagate well-known vars into dependsCarl Dong
For example, doing: make CC=clang CXX=clang++ Should now propagate these settings down to depends packages
2020-05-12depends: add MULTIPROCESS depends optionRussell Yanofsky
Builds required packages and passes --enable-multiprocess option to bitcoin build
2020-02-03build: use macOS 10.14 SDKfanquake
Co-Authored-By: Carl Dong <accounts@carldong.me>
2020-02-03depends: native_cctools 921, ld64 409.12, libtapi 1000.10.8fanquake
This also removes the obsolete mlinker-version option Co-Authored-By: Cory Fields <cory-nospam-@coryfields.com>
2019-11-21build: set minimum supported macOS to 10.12fanquake
2019-10-18Android: add all arch supportBlock Mechanic
Add support for armv7a, i686 and x86_64 archs to android.mk Add -fPIC to depends file as anddroid requires it see https://stackoverflow.com/questions/30498776/position-independent-executables-and-android
2019-09-19Add ranlib to android.mk hosts file (fix OSX Android NDK build)Igor Cota
2019-09-19Add support for building Android dependenciesIgor Cota
2018-07-25depends: set OSX_MIN_VERSION to 10.10fanquake
2018-02-20[depends] Allow depends system to support armv7lHenrik Jonsson
2016-11-09[depends] Set OSX_MIN_VERSION to 10.8fanquake
2016-06-17depends: bump OSX toolchainCory Fields
clang: 3.7.1 cctools: 877.8 ld64: 253.9
2016-04-27depends: use c++11Cory Fields
2015-01-20osx: bump build sdk to 10.9Cory Fields
2015-01-02depends: major upgrade to darwin toolchainCory Fields
tl;dr: Update to the newer stable toolchain and SDK for OSX without giving up any backwards compatibility. We can move to clang 3.5 as a next step which allows use to use libc++ and the 10.10 sdk, but we'll need to find a build that works in gitian/travis first. Switch to a new, better maintained fork of cctools: https://github.com/tpoechtrager/cctools-port I've forked this and will be working on it some as well: https://github.com/theuni/cctools-port This brings in: cctools v862 ld64: v241.9 It also fixes 64bit builds, so there's no longer any need to use a 32bit clang. Since clang is no longer tied to an old/crusty 32bit build, clang has been upgraded to 3.3. Unfortunately, there's a bug in 3.4 that breaks builds. 3.5 works fine, but there are no binary builds compatible with precise, which is currently used for gitian and travis. We could always build our own if necessary. After updating to stable clang/linker/cctools, it's possible to use a more recent SDK. The current SDK (10.7) through the most recent 10.10 have all been built/tested successfully, both with and without 10.6 compatibility. However, 10.10 requires clang 3.5. SDKs >= 10.9 use libc++ rather than libstdc++. This is verified working as well.
2014-09-25depends: add debug/release flags for linux/osx/winCory Fields
Linux and mingw enable libstdc++ debugging for extra runtime checks. OSX doesn't play nice, so don't enable it there.
2014-09-25depends: add the debug/release concept to dependsCory Fields
2014-08-08depends: add shared dependency builderCory Fields
See the README's in depends for documentation