1
+ # Copyright (c) 2020 The Wagerr developers
2
+ version : 2.1
3
+ jobs :
4
+ lint_all :
5
+ docker :
6
+ - image : circleci/buildpack-deps:18.04
7
+ user : root
8
+ parallelism : 4
9
+ environment :
10
+ HOST : x86_64-linux-gnu
11
+ JOBS : 4
12
+ steps :
13
+ - run :
14
+ command : |
15
+ apt-get -y update
16
+ apt-get -y install python-pip
17
+ git clone --depth 1 https://github.com/wagerr/wagerr .
18
+ source .circleci/lint_04_install.sh
19
+ source .ciricleci/lint_05_before_script.sh
20
+ # LevelDB
21
+ git remote add -f leveldb https://github.com/bitcoin-core/leveldb.git
22
+ # secp256k1
23
+ git remote add -f secp256k1 https://github.com/bitcoin-core/secp256k1.git
24
+ # ctaes
25
+ git remote add -f ctaes https://github.com/bitcoin-core/ctaes
26
+ # univalue
27
+ git remote add -f univalue https://github.com/jgarzik/univalue
28
+ git rm -rf src/leveldb
29
+ git rm -rf src/secp256k1
30
+ git rm -rf src/crypto/ctaes
31
+ git rm -rf src/univalue
32
+ git add .
33
+ git config --global user.email "[email protected] "
34
+ git config --global user.name "Lint Check"
35
+ git commit -m "Set up for subtrees"
36
+ # leveldb
37
+ git subtree add --prefix src/leveldb leveldb bitcoin-fork --squash
38
+ # secp256k1
39
+ git subtree add --prefix src/secp256k1 secp256k1 master --squash
40
+ # ctaes
41
+ git subtree add --prefix src/crypto/ctaes ctaes master --squash
42
+ # univalue
43
+ git subtree add --prefix src/univalue univalue 9f0b9975925b202ab130714e5422f8dd8bf40ac3 --squash
44
+ # snap
45
+ source .circleci/lint_06_script.sh
46
+ x86_64_bionic :
47
+ docker :
48
+ - image : circleci/buildpack-deps:18.04
49
+ user : root
50
+ environment :
51
+ HOST : x86_64-linux-gnu
52
+ JOBS : 4
53
+ steps :
54
+ - checkout
55
+ - run :
56
+ command : |
57
+ git submodule update --init --recursive
58
+ apt-get -y update
59
+ apt-get -y install pkg-config autoconf libtool automake bsdmainutils ca-certificates python3 cmake libxkbcommon0 gcc-8 g++-8 libpython3.6-dev python3-distutils
60
+ update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 100
61
+ update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 100
62
+ update-alternatives --install /usr/bin/${HOST}-gcc ${HOST}-gcc /usr/bin/${HOST}-gcc-8 100
63
+ update-alternatives --install /usr/bin/${HOST}-g++ ${HOST}-g++ /usr/bin/${HOST}-g++-8 100
64
+ make -j${JOBS} -C depends HOST=${HOST}
65
+ ./autogen.sh
66
+ ./configure --host=${HOST} --prefix=`pwd`/depends/${HOST} --enable-zmq --enable-glibc-back-compat --enable-reduce-exports LDFLAGS=-static-libstdc++
67
+ make -j${JOBS}
68
+ git clone http://github.com/wagerr/wagerr_hash
69
+ cd wagerr_hash
70
+ python3 setup.py install
71
+ cd -
72
+ test/functional/test_runner.py
73
+ x86_64_focal :
74
+ docker :
75
+ - image : circleci/buildpack-deps:focal
76
+ user : root
77
+ environment :
78
+ HOST : x86_64-linux-gnu
79
+ JOBS : 4
80
+ steps :
81
+ - checkout
82
+ - run :
83
+ command : |
84
+ git submodule update --init --recursive
85
+ apt-get -y update
86
+ apt-get -y install pkg-config autoconf libtool automake bsdmainutils ca-certificates python3 cmake libxkbcommon0 gcc-8 g++-8 libpython3.9-dev python3-distutils
87
+ update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 100
88
+ update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 100
89
+ update-alternatives --install /usr/bin/${HOST}-gcc ${HOST}-gcc /usr/bin/${HOST}-gcc-8 100
90
+ update-alternatives --install /usr/bin/${HOST}-g++ ${HOST}-g++ /usr/bin/${HOST}-g++-8 100
91
+ make -j${JOBS} -C depends HOST=${HOST}
92
+ ./autogen.sh
93
+ ./configure --host=${HOST} --prefix=`pwd`/depends/${HOST} --enable-zmq --enable-glibc-back-compat --enable-reduce-exports LDFLAGS=-static-libstdc++
94
+ make -j${JOBS}
95
+ i686_bionic :
96
+ docker :
97
+ - image : circleci/buildpack-deps:18.04
98
+ user : root
99
+ environment :
100
+ HOST : i686-linux-gnu
101
+ JOBS : 4
102
+ steps :
103
+ - checkout
104
+ - run :
105
+ command : |
106
+ git submodule update --init --recursive
107
+ apt-get -y update
108
+ apt-get -y install pkg-config autoconf libtool automake bsdmainutils ca-certificates python3 cmake libxkbcommon0 g++-8-multilib gcc-8-multilib gcc-8 g++-8
109
+ update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 100
110
+ update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 100
111
+ make -j${JOBS} -C depends HOST=${HOST}
112
+ ./autogen.sh
113
+ ./configure --host=${HOST} --prefix=`pwd`/depends/${HOST} --enable-zmq --enable-glibc-back-compat --enable-reduce-exports LDFLAGS=-static-libstdc++
114
+ make -j${JOBS}
115
+ arm32_bionic :
116
+ docker :
117
+ - image : ioncoin/gitian:latest
118
+ user : root
119
+ environment :
120
+ HOST : arm-linux-gnueabihf
121
+ JOBS : 4
122
+ HOST_LDFLAGS : " -static-libstdc++"
123
+ steps :
124
+ - checkout
125
+ - run :
126
+ command : |
127
+ git submodule update --init --recursive
128
+ apt-get -y update
129
+ apt-get -y install pkg-config autoconf libtool automake bsdmainutils ca-certificates python3 cmake libxkbcommon0 gcc-8 g++-8 g++-8-arm-linux-gnueabihf gcc-8-arm-linux-gnueabihf binutils-arm-linux-gnueabihf g++-8-multilib gcc-8-multilib
130
+ update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 100
131
+ update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 100
132
+ update-alternatives --install /usr/bin/${HOST}-gcc ${HOST}-gcc /usr/bin/${HOST}-gcc-8 100
133
+ update-alternatives --install /usr/bin/${HOST}-g++ ${HOST}-g++ /usr/bin/${HOST}-g++-8 100
134
+ make -j${JOBS} -C depends HOST=${HOST}
135
+ ./autogen.sh
136
+ ./configure --host=${HOST} --prefix=`pwd`/depends//${HOST} --enable-glibc-back-compat --enable-reduce-exports --disable-ccache --disable-maintainer-mode --disable-dependency-tracking CFLAGS="${HOST_CFLAGS}" CXXFLAGS="${HOST_CXXFLAGS}" LDFLAGS="${HOST_LDFLAGS}"
137
+ make -j${JOBS}
138
+ arm64_bionic :
139
+ docker :
140
+ - image : circleci/buildpack-deps:18.04
141
+ user : root
142
+ environment :
143
+ HOST : aarch64-linux-gnu
144
+ JOBS : 4
145
+ steps :
146
+ - checkout
147
+ - run :
148
+ command : |
149
+ git submodule update --init --recursive
150
+ apt-get -y update
151
+ apt-get -y install pkg-config autoconf libtool automake bsdmainutils ca-certificates python3 cmake libxkbcommon0 gcc-8 g++-8 g++-8-aarch64-linux-gnu gcc-8-aarch64-linux-gnu binutils-aarch64-linux-gnu g++-8-multilib gcc-8-multilib
152
+ update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 100
153
+ update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 100
154
+ update-alternatives --install /usr/bin/${HOST}-gcc ${HOST}-gcc /usr/bin/${HOST}-gcc-8 100
155
+ update-alternatives --install /usr/bin/${HOST}-g++ ${HOST}-g++ /usr/bin/${HOST}-g++-8 100
156
+ make -j${JOBS} -C depends HOST=${HOST}
157
+ ./autogen.sh
158
+ ./configure --host=${HOST} --prefix=`pwd`/depends/${HOST} --enable-glibc-back-compat --enable-reduce-exports
159
+ make -j${JOBS}
160
+ win32_bionic :
161
+ docker :
162
+ - image : circleci/buildpack-deps:18.04
163
+ user : root
164
+ environment :
165
+ HOST : i686-w64-mingw32
166
+ JOBS : 4
167
+ steps :
168
+ - checkout
169
+ - run :
170
+ command : |
171
+ git submodule update --init --recursive
172
+ apt-get -y update
173
+ apt-get -y install pkg-config autoconf libtool automake bsdmainutils ca-certificates python3 cmake libxkbcommon0 mingw-w64 g++-mingw-w64 g++-multilib gcc-multilib
174
+ update-alternatives --install /usr/bin/i686-w64-mingw32-gcc i686-w64-mingw32-gcc /usr/bin/i686-w64-mingw32-gcc-posix 100
175
+ update-alternatives --install /usr/bin/i686-w64-mingw32-g++ i686-w64-mingw32-g++ /usr/bin/i686-w64-mingw32-g++-posix 100
176
+ make -j${JOBS} -C depends HOST=${HOST}
177
+ ./autogen.sh
178
+ ./configure --host=${HOST} --prefix=`pwd`/depends/${HOST} --enable-reduce-exports
179
+ make -j${JOBS}
180
+ win64_bionic :
181
+ docker :
182
+ - image : circleci/buildpack-deps:18.04
183
+ user : root
184
+ environment :
185
+ HOST : x86_64-w64-mingw32
186
+ JOBS : 4
187
+ steps :
188
+ - checkout
189
+ - run :
190
+ command : |
191
+ git submodule update --init --recursive
192
+ apt-get -y update
193
+ apt-get -y install pkg-config autoconf libtool automake bsdmainutils ca-certificates python3 cmake libxkbcommon0 mingw-w64 g++-mingw-w64 g++-multilib gcc-multilib
194
+ update-alternatives --install /usr/bin/x86_64-w64-mingw32-gcc x86_64-w64-mingw32-gcc /usr/bin/x86_64-w64-mingw32-gcc-posix 100
195
+ update-alternatives --install /usr/bin/x86_64-w64-mingw32-g++ x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++-posix 100
196
+ make -j${JOBS} -C depends HOST=${HOST}
197
+ ./autogen.sh
198
+ ./configure --host=${HOST} --prefix=`pwd`/depends/${HOST} --enable-reduce-exports
199
+ make -j${JOBS}
200
+ mac_bionic :
201
+ docker :
202
+ - image : circleci/buildpack-deps:18.04
203
+ user : root
204
+ environment :
205
+ HOST : x86_64-apple-darwin16
206
+ JOBS : 4
207
+ OSX_SDK : 10.11
208
+ steps :
209
+ - checkout
210
+ - run :
211
+ command : |
212
+ git submodule update --init --recursive
213
+ apt-get -y update
214
+ apt-get -y install pkg-config autoconf libtool automake bsdmainutils ca-certificates python3 cmake libxkbcommon0 librsvg2-bin libtiff-tools imagemagick libcap-dev libz-dev libbz2-dev python3-dev python3-setuptools fonts-tuffy g++-8-multilib gcc-8-multilib
215
+ wget https://github.com/gitianuser/MacOSX-SDKs/releases/download/MacOSX10.11.sdk/MacOSX10.11.sdk.tar.xz
216
+ mkdir -p `pwd`/depends/SDKs
217
+ echo "Extracting Mac SDK"
218
+ tar -C `pwd`/depends/SDKs -xJf ./MacOSX10.11.sdk.tar.xz
219
+ make -j${JOBS} -C depends HOST=${HOST}
220
+ ./autogen.sh
221
+ ./configure --host=${HOST} --prefix=`pwd`/depends/${HOST} --enable-reduce-exports --enable-werror --disable-ccache --disable-maintainer-mode --disable-dependency-tracking --disable-bench --disable-gui-tests
222
+
223
+ make -j${JOBS}
224
+ workflows :
225
+ version : 2.1
226
+ FullCheck :
227
+ jobs :
228
+ - lint_all
229
+ - x86_64_bionic :
230
+ requires :
231
+ - lint_all
232
+ - i686_bionic :
233
+ requires :
234
+ - lint_all
235
+ - x86_64_focal :
236
+ requires :
237
+ - lint_all
238
+ - arm32_bionic :
239
+ requires :
240
+ - lint_all
241
+ - arm64_bionic :
242
+ requires :
243
+ - lint_all
244
+ - win32_bionic :
245
+ requires :
246
+ - lint_all
247
+ - win64_bionic :
248
+ requires :
249
+ - lint_all
250
+ - mac_bionic :
251
+ requires :
252
+ - lint_all
0 commit comments