summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 7c047b92efe6713b86a23753e45e0314ecca0327 (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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# Maintainer: Felix Singer <felixsinger@posteo.net>

_targets="i386 x64 arm aarch64 riscv ppc64 nds32le"
_commit='f4c97ea131944c7be940b35361407e4b63a14faf'

pkgbase='coreboot-toolchain'
pkgname=()
pkgver=4.18
pkgrel=1
pkgdesc='coreboot toolchain for target architecture '
url='https://www.coreboot.org'
license=(BSD2 BSD3 GPL2 LGPL2Plus GPL3Plus)
arch=(x86_64 aarch64 riscv)
depends=() # TODO
makedepends=() # TODO
options=('buildflags')
source=("git+https://review.coreboot.org/coreboot#commit=${_commit}")
sha256sums=('SKIP')


for target in ${_targets}; do
  pkgname+=("${pkgbase}-${target}")
done


build() {
  cd coreboot
  #export CFLAGS="$CFLAGS -Wno-error -Wno-format-security -Wno-error=format-security"
  #export CXXFLAGS="$CXXFLAGS -Wno-error -Wno-format-security -Wno-error=format-security"
  export CFLAGS=${CFLAGS/-Werror=format-security/}
  export CXXFLAGS=${CXXFLAGS/-Werror=format-security/}

  for target in ${_targets}; do
    make crossgcc-${target} CPUS=$(nproc) DEST="${srcdir}/${target}"
  done
}

do_package_gcc() {
  target="$(echo ${pkgname} | cut -d '-' -f 3)"

  toolchain_dir="usr/${target}-coreboot-gnu"
  dest_path="${pkgdir}/${toolchain_dir}"
  mkdir -p ${dest_path}
  mv ${srcdir}/${target}/* "${dest_path}"
}

package_coreboot-toolchain-i386() {
  do_package_gcc
}

package_coreboot-toolchain-x64() {
  do_package_gcc
}

package_coreboot-toolchain-arm() {
  do_package_gcc
}

package_coreboot-toolchain-aarch64() {
  do_package_gcc
}

package_coreboot-toolchain-riscv() {
  do_package_gcc
}

package_coreboot-toolchain-ppc64() {
  do_package_gcc
}

package_coreboot-toolchain-nds32le() {
  do_package_gcc
}