summaryrefslogtreecommitdiff
path: root/core/binutils/PKGBUILD
blob: 711a8ed038fed17733304d3968ad18d857028072 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
eval "$(
  declare -f build | \
    sed '
      s/--enable/--enable-64-bit-bfd \0/
      s,https://bugs.archlinux.org/,https://bugs.archlinux32.org/,
    '
)"

# segfaults in ld of binutils 2.30 needs the binutils_2_30 branch
# for now, see https://sourceware.org/bugzilla/show_bug.cgi?id=23194
# this patch was done by diffing the branch against the tag and removing
# some conflicts, also 0003-PR22836-r-s-doesnt-work-with-g3-using-GCC-7.patch
# needs disabling because it has already been cherry-picked into the branch.
# cherry-picking onlt the fiy for P23194 leads to assertion violations in
# the GOT, so this was not done.
# also conflicted with parts of the gold ld patch 0004-PR22868, eliminated
# conflicts by picking only the necessary things..
source+=(binutils-2.30-glibc-segfault.patch)
md5sums+=('e384a80d85b645c41d05eaae1a81dc03')

eval "$(
  declare -f prepare | \
    sed '
      s/.*0003-PR22836/#\0/
      /0004-PR22868/a patch -p1 -i ${srcdir}/binutils-2.30-glibc-segfault.patch
    '
)"

# i486-specific
if [ "${CARCH}" = "i486" ]; then
  # disable CET (Control Flow instructions endbr32/enbr64)
  eval "$(
    declare -f build | \
      sed '
        s,configure",configure" --disable-cet,
      '
  )"
fi