Skip to content
This repository was archived by the owner on Apr 13, 2024. It is now read-only.

Commit c810b09

Browse files
selectively re-enable llvm-objcopy
just for arm64, back to LTS 4.9. 4.4 is still broken: #183 (comment) Previously reverted in 684262f ClangBuiltLinux/linux#480 #164
1 parent 3dc750c commit c810b09

File tree

3 files changed

+17
-13
lines changed

3 files changed

+17
-13
lines changed

.travis.yml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ matrix:
88
env: ARCH=arm32_v6
99
- name: "ARCH=arm32_v7 LD=ld.lld"
1010
env: ARCH=arm32_v7 LD=ld.lld-10
11-
- name: "ARCH=arm64 LD=ld.lld"
12-
env: ARCH=arm64 LD=ld.lld-10
11+
- name: "ARCH=arm64 OBJCOPY=llvm-objcopy LD=ld.lld"
12+
env: ARCH=arm64 OBJCOPY=llvm-objcopy-10 LD=ld.lld-10
1313
- name: "ARCH=mipsel"
1414
env: ARCH=mipsel
1515
- name: "ARCH=ppc32"
@@ -32,8 +32,8 @@ matrix:
3232
- name: "ARCH=arm32_v7 LD=ld.lld REPO=linux-next"
3333
env: ARCH=arm32_v7 LD=ld.lld-10 REPO=linux-next
3434
if: type = cron
35-
- name: "ARCH=arm64 LD=ld.lld REPO=linux-next"
36-
env: ARCH=arm64 LD=ld.lld-10 REPO=linux-next
35+
- name: "ARCH=arm64 OBJCOPY=llvm-objcopy LD=ld.lld REPO=linux-next"
36+
env: ARCH=arm64 OBJCOPY=llvm-objcopy-10 LD=ld.lld-10 REPO=linux-next
3737
if: type = cron
3838
- name: "ARCH=mipsel REPO=linux-next"
3939
env: ARCH=mipsel REPO=linux-next
@@ -54,8 +54,8 @@ matrix:
5454
- name: "ARCH=arm32_v7 REPO=4.19"
5555
env: ARCH=arm32_v7 REPO=4.19
5656
if: type = cron
57-
- name: "ARCH=arm64 REPO=4.19"
58-
env: ARCH=arm64 REPO=4.19
57+
- name: "ARCH=arm64 OBJCOPY=llvm-objcopy REPO=4.19"
58+
env: ARCH=arm64 OBJCOPY=llvm-objcopy-10 REPO=4.19
5959
if: type = cron
6060
- name: "ARCH=ppc64le REPO=4.19"
6161
env: ARCH=ppc64le REPO=4.19
@@ -66,8 +66,8 @@ matrix:
6666
- name: "ARCH=arm32_v7 REPO=4.14"
6767
env: ARCH=arm32_v7 REPO=4.14
6868
if: type = cron
69-
- name: "ARCH=arm64 REPO=4.14"
70-
env: ARCH=arm64 REPO=4.14
69+
- name: "ARCH=arm64 OBJCOPY=llvm-objcopy REPO=4.14"
70+
env: ARCH=arm64 OBJCOPY=llvm-objcopy-10 REPO=4.14
7171
if: type = cron
7272
- name: "ARCH=ppc64le REPO=4.14"
7373
env: ARCH=ppc64le REPO=4.14
@@ -78,8 +78,8 @@ matrix:
7878
- name: "ARCH=arm32_v7 REPO=4.9"
7979
env: ARCH=arm32_v7 REPO=4.9
8080
if: type = cron
81-
- name: "ARCH=arm64 REPO=4.9"
82-
env: ARCH=arm64 REPO=4.9
81+
- name: "ARCH=arm64 OBJCOPY=llvm-objcopy REPO=4.9"
82+
env: ARCH=arm64 OBJCOPY=llvm-objcopy-10 REPO=4.9
8383
if: type = cron
8484
- name: "ARCH=x86_64 LD=ld.lld REPO=4.9"
8585
env: ARCH=x86_64 LD=ld.lld-10 REPO=4.9

driver.sh

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ set -eu
55
setup_variables() {
66
while [[ ${#} -ge 1 ]]; do
77
case ${1} in
8-
"AR="*|"ARCH="*|"CC="*|"LD="*|"NM"=*|"OBJDUMP"=*|"REPO="*) export "${1?}" ;;
8+
"AR="*|"ARCH="*|"CC="*|"LD="*|"NM"=*|"OBJCOPY"=*|"OBJDUMP"=*|"REPO="*) export "${1?}" ;;
99
"-c"|"--clean") cleanup=true ;;
1010
"-j"|"--jobs") shift; jobs=$1 ;;
1111
"-j"*) jobs=${1/-j} ;;
@@ -191,11 +191,12 @@ check_dependencies() {
191191
# Check for LD, CC, and AR environmental variables
192192
# and print the version string of each. If CC and AR
193193
# don't exist, try to find them.
194-
# lld isn't ready for all architectures so it's just
195-
# simpler to fall back to GNU ld when LD isn't specified
194+
# lld and objcopy aren't ready for all architectures so it's just
195+
# simpler to fall back to GNU ld/objcopy when LD/OBJCOPY aren't specified
196196
# to avoid architecture specific selection logic.
197197

198198
"${LD:="${CROSS_COMPILE:-}"ld}" --version
199+
"${OBJCOPY:="${CROSS_COMPILE:-}"objcopy}" --version
199200

200201
if [[ -z "${CC:-}" ]]; then
201202
for CC in $(gen_bin_list clang) clang; do
@@ -275,6 +276,7 @@ mako_reactor() {
275276
KCFLAGS="-Wno-implicit-fallthrough" \
276277
LD="${LD}" \
277278
NM="${NM}" \
279+
OBJCOPY="${OBJCOPY}" \
278280
OBJDUMP="${OBJDUMP}" \
279281
"${@}"
280282
}

usage.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ Environment variables:
2222
in PATH.
2323
LD:
2424
If no LD value is specified, ${CROSS_COMPILE}ld is used.
25+
OBJCOPY:
26+
If no OBJCOPY value is specified, ${CROSS_COMPILE}objcopy is used.
2527
REPO:
2628
Nicknames for trees:
2729
linux (default)

0 commit comments

Comments
 (0)