File tree 5 files changed +41
-46
lines changed
5 files changed +41
-46
lines changed Original file line number Diff line number Diff line change @@ -40,26 +40,11 @@ builder-image:
40
40
needs :
41
41
- builder-image
42
42
image : $CI_REGISTRY_IMAGE:builder-$CI_COMMIT_REF_SLUG
43
- variables :
44
- SDK_URL : https://bitcoincore.org/depends-sources/sdks
45
- XCODE_VERSION : " 15.0"
46
- XCODE_BUILD_ID : 15A240d
47
43
before_script :
48
- - echo HOST=$HOST
49
44
- |
50
- if [ "$HOST" = "x86_64-apple-darwin" ]; then
51
- mkdir -p depends/SDKs
52
- mkdir -p depends/sdk-sources
53
- OSX_SDK_BASENAME="Xcode-${XCODE_VERSION}-${XCODE_BUILD_ID}-extracted-SDK-with-libcxx-headers.tar.gz"
54
- OSX_SDK_PATH="depends/sdk-sources/${OSX_SDK_BASENAME}"
55
- if [ ! -f "$OSX_SDK_PATH" ]; then
56
- echo "Downloading MacOS SDK"
57
- curl --location --fail "${SDK_URL}/${OSX_SDK_BASENAME}" -o "$OSX_SDK_PATH"
58
- fi
59
- if [ -f "$OSX_SDK_PATH" ]; then
60
- echo "Extracting MacOS SDK"
61
- tar -C depends/SDKs -xf "$OSX_SDK_PATH"
62
- fi
45
+ echo HOST=${HOST}
46
+ if [[ "${HOST}" == "x86_64-apple-darwin" ]]; then
47
+ ./contrib/containers/guix/scripts/setup-sdk
63
48
fi
64
49
script :
65
50
- make -j$(nproc) -C depends HOST=$HOST $DEP_OPTS
Original file line number Diff line number Diff line change @@ -20,17 +20,8 @@ mkdir -p $CACHE_DIR/sdk-sources
20
20
ln -s $CACHE_DIR /depends ${DEPENDS_DIR} /built
21
21
ln -s $CACHE_DIR /sdk-sources ${DEPENDS_DIR} /sdk-sources
22
22
23
- mkdir -p ${DEPENDS_DIR} /SDKs
24
-
25
- if [ -n " $XCODE_VERSION " ]; then
26
- OSX_SDK_BASENAME=" Xcode-${XCODE_VERSION} -${XCODE_BUILD_ID} -extracted-SDK-with-libcxx-headers.tar.gz"
27
- OSX_SDK_PATH=" ${DEPENDS_DIR} /sdk-sources/${OSX_SDK_BASENAME} "
28
- if [ ! -f " $OSX_SDK_PATH " ]; then
29
- curl --location --fail " ${SDK_URL} /${OSX_SDK_BASENAME} " -o " $OSX_SDK_PATH "
30
- fi
31
- if [ -f " $OSX_SDK_PATH " ]; then
32
- tar -C ${DEPENDS_DIR} /SDKs -xf " $OSX_SDK_PATH "
33
- fi
23
+ if [[ " ${HOST} " == " x86_64-apple-darwin" ]]; then
24
+ ./contrib/containers/guix/scripts/setup-sdk
34
25
fi
35
26
36
27
make $MAKEJOBS -C depends HOST=$HOST $DEP_OPTS
Original file line number Diff line number Diff line change @@ -77,18 +77,19 @@ RUN usermod -aG sudo ${USERNAME} && \
77
77
echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
78
78
79
79
# Copy required files to container
80
- COPY --from=docker_root ./motd.txt /etc/motd
81
- COPY --from=docker_root ./scripts/entrypoint /usr/local/bin/entrypoint
82
- COPY --from=docker_root ./scripts/guix-check /usr/local/bin/guix-check
83
- COPY --from=docker_root ./scripts/guix-start /usr/local/bin/guix-start
80
+ COPY --from=docker_root ./motd.txt /etc/motd
81
+ COPY --from=docker_root ./scripts/entrypoint /usr/local/bin/entrypoint
82
+ COPY --from=docker_root ./scripts/guix-check /usr/local/bin/guix-check
83
+ COPY --from=docker_root ./scripts/guix-start /usr/local/bin/guix-start
84
+ COPY --from=docker_root ./scripts/setup-sdk /usr/local/bin/setup-sdk
84
85
85
86
# Create directories for mounting to save/restore cache and grant necessary permissions
86
87
RUN mkdir -p \
87
88
/home/${USERNAME}/.cache \
88
- /src/dash/depends/{built,sources,work} && \
89
+ /src/dash/depends/{built,sources,work}; \
89
90
chown -R ${USER_ID}:${GROUP_ID} \
90
91
/home/${USERNAME}/.cache \
91
- /src
92
+ /src;
92
93
93
94
WORKDIR "/src/dash"
94
95
Original file line number Diff line number Diff line change @@ -9,19 +9,10 @@ if [[ ! -d "${WORKSPACE_PATH}" || ! "${WORKSPACE_PATH}" = /* || ! -f "${WORKSPAC
9
9
exit 1
10
10
fi
11
11
12
- XCODE_VERSION=" 15.0"
13
- XCODE_RELEASE=" 15A240d"
14
- XCODE_ARCHIVE=" Xcode-${XCODE_VERSION} -${XCODE_RELEASE} -extracted-SDK-with-libcxx-headers"
15
- XCODE_SOURCE=" ${XCODE_SOURCE:- https:// bitcoincore.org/ depends-sources/ sdks} "
16
-
17
12
export SDK_PATH=" ${SDK_PATH:- ${WORKSPACE_PATH} / depends/ SDKs} "
13
+ export SDK_SRCS=" ${SDK_PATH:- ${WORKSPACE_PATH} / depends/ sdk-sources} "
18
14
19
- # Check if macOS SDK is present, if not, download it
20
- if [[ ! -d " ${SDK_PATH} /${XCODE_ARCHIVE} " ]]; then
21
- echo " Preparing macOS SDK..."
22
- mkdir -p " ${SDK_PATH} "
23
- curl -L " ${XCODE_SOURCE} /${XCODE_ARCHIVE} .tar.gz" | tar -xz -C " ${SDK_PATH} "
24
- fi
15
+ ./contrib/containers/guix/scripts/setup-sdk
25
16
26
17
# Add safe.directory option only when WORKSPACE_PATH was specified via cmd-line arguments (happens in CI)
27
18
if [[ -n " ${1} " ]]; then
Original file line number Diff line number Diff line change
1
+ #! /usr/bin/env bash
2
+ # Copyright (c) 2024 The Dash Core developers
3
+ # Distributed under the MIT software license, see the accompanying
4
+ # file COPYING or http://www.opensource.org/licenses/mit-license.php.
5
+
6
+ export LC_ALL=C.UTF-8
7
+
8
+ set -eo pipefail
9
+
10
+ SDK_URL=" ${SDK_URL:- https:// bitcoincore.org/ depends-sources/ sdks} "
11
+ SDK_PATH=" ${SDK_PATH:- depends/ SDKs} "
12
+ SDK_SRCS=" ${SDK_SOURCES:- depends/ sdk-sources} "
13
+ XCODE_VERSION=" ${XCODE_VERSION:- 15.0} "
14
+ XCODE_RELEASE=" ${XCODE_RELEASE:- 15A240d} "
15
+ XCODE_ARCHIVE=" Xcode-${XCODE_VERSION} -${XCODE_RELEASE} -extracted-SDK-with-libcxx-headers"
16
+ XCODE_AR_PATH=" ${SDK_SRCS} /${XCODE_ARCHIVE} .tar.gz"
17
+
18
+ if [ ! -d " ${SDK_PATH} /${XCODE_ARCHIVE} " ]; then
19
+ if [ ! -f " ${XCODE_AR_PATH} " ]; then
20
+ echo " Downloading macOS SDK..."
21
+ mkdir -p " ${SDK_SRCS} "
22
+ curl --location --fail " ${SDK_URL} /${XCODE_ARCHIVE} .tar.gz" -o " ${XCODE_AR_PATH} "
23
+ fi
24
+ echo " Extracting macOS SDK..."
25
+ mkdir -p " ${SDK_PATH} "
26
+ tar -C " ${SDK_PATH} " -xf " ${XCODE_AR_PATH} "
27
+ fi
You can’t perform that action at this time.
0 commit comments