Commit Graph

111 Commits

Author SHA1 Message Date
Alexander Block
eb202e812f Use ccache in gitian builds (#2185)
* Use subdirectory for depends cache in gitian builds

* Make timestamps of wrappers deterministic

* Use ccache in gitian builds

* Upgrade ccache to latest version (3.4.2)

* Build the branch that belongs to the Jenkins build instead of develop
2018-07-20 16:33:02 +03:00
Alexander Block
f3e380659a Move to in-docker CI builds and add Jenkins support (#2178)
* GCC-7 and glibc-2.27 compat code

* Statically link libstdc++ for GCC based builds

Makes sure binaries which are built on a newer build host still work
on older distros.

* Use python3 when installing MacOS native tools

* Move actual build logic out of Travis and upgrade to gcc-7

Travis will now simply call a few scripts which do the actual work.
These scripts will first create a "builder image" which contains the
necessary environment for the actual build. Then scripts are called
inside this builder image to do the build.

This should make us more independant from Travis and also allows us
to do local CI testing.

The build matrix is also moved out of .travis.yml and instead moved
into ci/matrix.sh. This script is sourced with only "BUILD_TARGET" being
set so that it internally can figure out which other environment
variables need to be set.

This commit also upgrades the used GCC version to 7. This is due to the
use of ubuntu:bionic as base image for the builder image.

* Add Jenkinsfiles for regular CI and nightly gitian builds

* Automatically download OSX SDK in gitian-build.sh

* Remove bogus "export MAKEJOBS=-j5"

* Forward cache/src dirs into builder container

Fixes caching issues on Travis.

* fix

* Fail build immediately when building depends took too long
2018-07-12 16:28:59 +03:00
Oleg Girko
5036d7dfc5 depends: Update Qt download url (#2177) 2018-07-12 12:09:02 +03:00
Wladimir J. van der Laan
8ee652f4c3 Merge #10851: depends: fix fontconfig with newer glibc
3498a8d depends: fix fontconfig with newer glibc (Cory Fields)

Pull request description:

  Fixes build with newer gcc.

  Without this, depends builds fail with gcc7, maybe gcc6.

Tree-SHA512: 3cfcebdb137c3e368c69d25012ceb32809890e67521aaa8b074f2092f847e3e7ae82ac9050b4600ba18f443d2a8fe1f8523c808d77642a1e7782d558cbad4a74
2018-01-30 08:47:50 +01:00
Oleg Girko
9a26b427fb Don't set PKG_CONFIG_SYSROOT_DIR env variable to build Qt.
Setting PKG_CONFIG_SYSROOT_DIR environment variable to "/"
for building Qt makes pkgconf behave strange
(remove "/" prefix instead of adding it).

And it makes no sense to set this variable for old pkgconfig anyway.

Signed-off-by: Oleg Girko <ol@infoserver.lv>
2018-01-30 07:03:28 +01:00
Wladimir J. van der Laan
12099e52d4 Merge #10414: [depends] miniupnpc 2.0.20170509
af5d48c [depends] miniupnpc 2.0.20170509 (fanquake)

Tree-SHA512: e6cfa7856aa4ceb17de5e84156cdb90094eedfb08a84ba1cd9a5ce1689533e17863e3f5692a1b7b7b096a7ac88f18539e4b6b7a79f7726401effb11bf9a5ef2f
2018-01-26 12:59:29 +01:00
Wladimir J. van der Laan
a81f445433 Merge #9973: depends: fix zlib build on osx
c624753 depends: fix zlib build on osx (Cory Fields)

Tree-SHA512: fd9343edc24762fc4b7eb9798f0fb6f76d5f5aeef16a0bc3bab5400cb8f9b3ae8a2d34b480f03c853bb31ff4e39c267a2b81cd86df0532f11976072354aa9378
2018-01-26 12:59:29 +01:00
Wladimir J. van der Laan
818fc1eafb Merge #9891: depends: make osx output deterministic
9e4d842 depends: make osx output deterministic (Cory Fields)

Tree-SHA512: 997a671832a28e600bc3c9cd1340c6c1fa08f050d7cf676a5d51b38f08161ac418621520459a9a53dd87102c13fb69cb2e58ec3cc00f738e204eb787d6f0cad6
2018-01-26 12:59:29 +01:00
Wladimir J. van der Laan
a757261e89 Merge #9646: depends: Fix cross build for qt5.7
b5f374f qt: fix build with zlib for target (Cory Fields)
8efa34f depends: add a zlib build (Cory Fields)
342eb96 build: find qt's renamed helper libs from 5.7 (Cory Fields)
2018-01-21 12:48:34 +01:00
Wladimir J. van der Laan
e09d5db455 Merge #9574: [depends] Fix QT build on OSX
c36ec71 depends: qt: disable printer for all platforms, not just osx (Cory Fields)
2018-01-21 12:48:34 +01:00
Wladimir J. van der Laan
87229e06c2 Merge #9469: [depends] Qt 5.7.1
bb077fa [depends] Remove OBJCXX define from config.site.in (fanquake)
c37ea4d depends: fix qt translations build (Cory Fields)
2b32dea depends: use new variable layout for qt sdk (Cory Fields)
02fcb29 [depends] Qt 5.7.1 (fanquake)
2018-01-21 12:48:32 +01:00
Wladimir J. van der Laan
5b763faba3 Merge #9468: [Depends] Dependency updates for 0.14.0
7f1fa99 [depends] native_ds_store 1.1.0 (fanquake)
c6347ae [depends] dbus 1.10.14 (fanquake)
a4c6da0 [depends] ccache 3.3.3 (fanquake)
6019d21 [depends] FreeType 2.7.1 (fanquake)
4ed6faf [depends] Boost 1.63.0 (fanquake)
8ac1830 [depends] Latest config.guess and config.sub (fanquake)
2018-01-21 12:48:32 +01:00
Wladimir J. van der Laan
3a503b99f2 Merge #8820: [depends] Fix Qt compilation with Xcode 8
5776e8a [depends] Fix Qt compilation with Xcode 8 (fanquake)
2018-01-12 08:02:45 +01:00
Wladimir J. van der Laan
801c9e259d Merge #8423: [depends] expat 2.2.0, ccache 3.3.1, fontconfig 2.12.1
86d410d [depends] fontconfig 2.12.1 (fanquake)
9616ac8 [depends] ccache 3.3.1 (fanquake)
6b6cbdd [depends] expat 2.2.0 (fanquake)
2018-01-11 13:22:22 +01:00
Wladimir J. van der Laan
a2d18b4758 Merge #8640: [depends] Remove Qt46 package
3e7d2a2 [depends] Remove Qt46 package (Michael Ford)
2018-01-09 14:16:38 +01:00
Wladimir J. van der Laan
e6dca369e6 Merge #8504: test: Remove java comparison tool
eb0c52e travis: Remove hostname hack (Wladimir J. van der Laan)
3c5251d test: Remove java comparison tool (Wladimir J. van der Laan)
2018-01-08 18:04:55 +01:00
Wladimir J. van der Laan
eb54680c35 Merge #8238: [WIP][depends] ZeroMQ 4.1.5 && ZMQ on Windows
a615386 [depends] ZeroMQ 4.1.5 (fanquake)
2018-01-08 18:04:55 +01:00
Wladimir J. van der Laan
68757db683 Merge #8210: [Qt] Bump to Qt5.6.1
2759597 Only pass -lQt5PlatformSupport if >=Qt5.6 (Jonas Schnelli)
59d063d Use runtime linking of QT libdbus, use custom/temp. SDK URL (Jonas Schnelli)
6194d9a Fix bitcoin_qt.m4 and fix-xcb-include-order.patch (Jonas Schnelli)
f6eb4e2 [depends] OpenSSL 1.0.1k - update config_opts (fanquake)
f25209a depends: bump OSX toolchain (Cory Fields)
2017-12-28 11:44:59 +01:00
Wladimir J. van der Laan
06a73ad7c4 Merge #8188: Add armhf/aarch64 gitian builds
9d25362 build: add armhf/aarch64 gitian builds (Cory Fields)
980e7eb depends: only build qt on linux for x86_64/x86 (Cory Fields)
2017-12-22 17:20:42 +01:00
Wladimir J. van der Laan
fc7b5778f1 Merge #7993: [depends] Bump Freetype, ccache, ZeroMQ, miniupnpc, expat
6a4cf16 [depends] expat 2.1.1 (fanquake)
3e0587b [depends] miniupnpc 2.0 (fanquake)
87b8175 [depends] Latest config.guess & config.sub (fanquake)
bd3cbd5 [depends] ZeroMQ 4.1.4 (fanquake)
0385202 [depends] ccache 3.2.5 (fanquake)
2b2d52e [depends] Freetype 2.6.3 (fanquake)
2017-12-22 16:33:56 +01:00
Wladimir J. van der Laan
b2eabb0974 Merge #7809: depends: some base fixes/changes
11d9f6b depends: qt/cctools: fix checksum checksum tests (Cory Fields)
bb717f4 depends: fix "unexpected operator" error during "make download" (Cory Fields)
fe740f1 depends: fix fallback downloads (Cory Fields)
dc4ec6d depends: create a hostid and buildid and add option for salts (Cory Fields)
2017-12-20 17:25:02 +01:00
Wladimir J. van der Laan
1f8ca7546e depends: mac deploy Py3 compatibility
This fixes the gitian MacOSX build, it was broken in #7723.

The patch to `native_mac_alias` should probably make it upstream.
2017-12-20 08:49:46 +01:00
Wladimir J. van der Laan
953aeead1f Merge #7710: [Depends] Bump miniupnpc and config.guess+sub
c85f475 [Depends] Latest config.guess & config.sub (fanquake)
5fd2318 [Depends] Miniupnpc 1.9.20160209 (fanquake)
2017-12-19 13:18:30 +01:00
Wladimir J. van der Laan
4e0bb527d0 Merge #8373: Fix OSX non-deterministic dmg
3b3ce25 build: fix non-deterministic biplist (Cory Fields)
2017-12-11 08:30:26 +01:00
Wladimir J. van der Laan
e7a6f79e5a Merge #7192: Unify product name to as few places as possible
027fdb8 When/if the copyright line does not mention Bitcoin Core developers, add a second line to copyrights in -version, About dialog, and splash screen (Luke Dashjr)
cc2095e Rewrite FormatParagraph to handle newlines within input strings correctly (Luke Dashjr)
cddffaf Bugfix: Include COPYRIGHT_HOLDERS_SUBSTITUTION in Makefile substitutions so it gets passed to extract-strings correctly (Luke Dashjr)
29598e4 Move PACKAGE_URL to configure.ac (Luke Dashjr)
78ec83d splashscreen: Resize text to fit exactly (Luke Dashjr)
3cae140 Bugfix: Actually use _COPYRIGHT_HOLDERS_SUBSTITUTION everywhere (Luke Dashjr)
4d5a3df Bugfix: gitian-descriptors: Add missing python-setuptools requirement for OS X (biplist module) (Luke Dashjr)
e4ab5e5 Bugfix: Correct copyright year in Mac DMG background image (Luke Dashjr)
917b1d0 Set copyright holders displayed in notices separately from the package name (Luke Dashjr)
c39a6ff Travis & gitian-osx: Use depends for ds_store and mac_alias modules (Luke Dashjr)
902ccde depends: Add mac_alias to depends (Luke Dashjr)
82a2d98 depends: Add ds_store to depends (Cory Fields)
de619a3 depends: Pass PYTHONPATH along to configure (Cory Fields)
e611b6e macdeploy: Use rsvg-convert rather than cairosvg (Luke Dashjr)
63bcdc5 More complicated package name substitution for Mac deployment (Luke Dashjr)
1a6c67c Parameterise 2009 in translatable copyright strings (Luke Dashjr)
d5f4683 Unify package name to as few places as possible without major changes (Luke Dashjr)
2017-12-11 08:30:26 +01:00
fanquake
7f87754094 Boost 1.63.0 2017-05-12 00:58:36 +03:00
fanquake
be968206bb Boost 1.61.0 2017-05-12 00:58:36 +03:00
Oleg Girko
39750439bf Force to use C++11 mode for compilation (#1463)
* build: Enable C++11 build, require C++11 compiler

Implements #6211.

* depends: use c++11

* build: update ax_cxx_compile_stdcxx to serial 4

* build: force a c++ standard to be specified

Newer compilers may switch to newer standards by default. For example, gcc6
uses std=gnu++14 by default.

* c++11: fix libbdb build against libc++ in c++11 mode

atomic_init clashes with

* c++11: CAccountingEntry must be defined before use in a list

c++11ism. This fixes builds against libc++.
2017-05-05 14:27:27 +03:00
Holger Schinzel
70c872fe4a [depends] Fixing download path and sha256 hash (#1398)
* Fixing download path and sha256 hash
* typo
* package version variable
2017-03-16 00:15:36 +01:00
UdjinM6
92f965fc08 bump libevent to 2.1.8 (stable) (#1397) 2017-03-15 17:12:02 +01:00
TheLazieR Yip
5a2a9ccfd5 Update download path for native_ccache (#1283)
* Update download path for native_ccache

* Remove www.
2017-01-25 15:37:33 +04:00
Holger Schinzel
0e65968384 fix Qt 5.5 download path (#1216) 2016-12-20 17:31:54 +04:00
UdjinM6
48d0edcbdf Merge remote-tracking branch 'bitpay/0.12.1-bitcore' into dashBitcore1
Resolved Conflicts:
	.travis.yml (ignoring changes, leaving dash version)
	src/Makefile.am
	src/main.cpp
	src/main.h
	src/rpcclient.cpp
	src/rpcserver.cpp
	src/script/script.cpp
	src/script/script.h
2016-07-19 08:49:28 +03:00
Cory Fields
6c44620e5a travis: switch to Trusty
Github-Pull: #7920
Rebased-From: 06fdffd222, 9267a47d86, cf77fcdb1f, 174023c9b0, a33b7c9cb5
Cherry-pick-From: 564aaa2cd0
2016-06-02 12:15:37 -04:00
UdjinM6
a5ac60b868 Merge remote-tracking branch 'bitcoin/0.12' into HEAD
+ merge fixes
+ keepass on evhttp
2016-02-06 16:48:04 +03:00
Holger Schinzel
920594453e [depends] Fix miniupnpc compilation on osx 2016-01-08 10:43:38 +01:00
evan82
6ebd5d2090 Merge pull request #659 from thelazier/v0.12.1.x_openssl
Bump openssl to 1.0.1q
2016-01-05 10:41:31 -07:00
evan82
9a4a611b66 Merge pull request #658 from thelazier/v0.12.1.x_boost
Bump boost version to 1.59
2016-01-05 10:41:25 -07:00
evan82
eafba13a2e Merge pull request #657 from thelazier/v0.12.1.x_miniupnpc
Bump miniupnpc version to 1.9.20151026
2016-01-05 10:41:18 -07:00
evan82
1142c8e9ad Merge pull request #656 from thelazier/v0.12.1.x_native_protobuf
Bump native protobuf to 2.6.1
2016-01-05 10:41:08 -07:00
fanquake
eccd67106d
[Depends] Bump Boost, miniupnpc, ccache & zeromq
Bring dependencies up to date with master:
[depends] Boost 1.59.0
[depends] miniupnpc 1.9.20151026
[depends] native ccache 3.2.4
[depends] zeromq 4.0.7
[depends] Latest config.guess & config.sub
[depends] Fix miniupnpc compilation on osx

Github-Pull: #6980
Rebased-From: 9e940fa4c6 17ad964c2f 26f8ea5342 10d3c77644 23a3c47f95 e0769e1928
2015-12-18 09:42:09 +01:00
TheLazieR Yip
6e19549864 Bump native protobuf to 2.6.1 2015-12-10 10:00:24 +07:00
TheLazieR Yip
7acab55119 Bump native ccache to 3.2.4 2015-12-10 09:59:45 +07:00
TheLazieR Yip
acc28458c6 Bump miniupnpc version to 1.9.20151026 2015-12-10 09:58:46 +07:00
TheLazieR Yip
c4042e0fbf Bump boost version to 1.59 2015-12-10 09:57:38 +07:00
TheLazieR Yip
7a7129d254 Bump openssl to 1.0.1q 2015-12-10 09:55:15 +07:00
Wladimir J. van der Laan
a1bfca8052
Merge pull request #7059
2798e0b add powerpc build support for openssl lib (daniel)
2015-11-20 08:35:29 +01:00
daniel
2798e0b0d2 add powerpc build support for openssl lib 2015-11-19 13:29:57 +08:00
Wladimir J. van der Laan
0b416c6e9c depends: qt PIDLIST_ABSOLUTE patch
Remove sed-based qt PIDLIST_ABSOLUTE workaround, replace by a patch that
works for both old (such as used by Travis and Ubuntu Precise) and new
mingw (Ubuntu Trusty).
2015-11-16 16:39:24 +01:00
Wladimir J. van der Laan
bfcdc21a5d build: make sure OpenSSL heeds noexecstack
This passes `-Wa,--noexecstack` to the assembler when building
platform-specific assembly files, to signal that a non-executable stack
can be used. This is the same approach as used by Debian
(see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=430583)
2015-10-19 12:03:29 +02:00