summaryrefslogtreecommitdiffstats
path: root/spec/build/bsps/powerpc/motorola_powerpc/boot.yml
blob: 42ab37e676b36cb2e5c57d970b88d52e3b6636a0 (plain) (blame)
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
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
build-type: script
copyrights:
- Copyright (C) 2020 embedded brains GmbH & Co. KG
do-build: |
  def cc(self, bld, bic, flags, source):
      root, ext = os.path.splitext(source)
      target = root + ".o"
      bld(
          features="asm c",
          includes=bic.includes,
          rule="${CC} " + flags + " ${CPPFLAGS} ${DEFINES_ST:DEFINES} ${CPPPATH_ST:INCPATHS} -c ${SRC} -o ${TGT}",
          source=source,
          target=target,
      )
      return target
  flags = "-D__BOOT__ -mrelocatable"
  for f in bld.env.ABI_FLAGS:
        if f != "-meabi":
            flags += " " + f
  asmflags = "-DASM " + flags
  cflags = "-msoft-float -mstrict-align -fno-builtin -Wall -mmultiple -O2 -fomit-frame-pointer -ffixed-r13 -mno-sdata " + flags
  source = []
  source.append(cc(self, bld, bic, asmflags, "bsps/powerpc/motorola_powerpc/bootloader/head.S"))
  source.append(cc(self, bld, bic, asmflags, "bsps/powerpc/motorola_powerpc/bootloader/exception.S"))
  source.append(cc(self, bld, bic, asmflags, "bsps/powerpc/motorola_powerpc/bootloader/em86real.S"))
  source.append(cc(self, bld, bic, cflags, "bsps/powerpc/motorola_powerpc/bootloader/misc.c"))
  source.append(cc(self, bld, bic, cflags, "bsps/powerpc/motorola_powerpc/bootloader/pci.c"))
  source.append(cc(self, bld, bic, cflags, "bsps/powerpc/motorola_powerpc/bootloader/zlib.c"))
  source.append(cc(self, bld, bic, cflags, "bsps/powerpc/motorola_powerpc/bootloader/mm.c"))
  source.append(cc(self, bld, bic, cflags, "bsps/powerpc/motorola_powerpc/bootloader/em86.c"))
  source.append(cc(self, bld, bic, cflags, "bsps/powerpc/motorola_powerpc/console/polled_io.c"))
  source.append(cc(self, bld, bic, cflags, "bsps/powerpc/motorola_powerpc/bootloader/lib.c"))
  target = "bootloader.o"
  bld(
      rule="${LD} -o ${TGT} -r ${SRC}",
      source=source,
      target=target,
  )
  bld.install_files(
      "${BSP_LIBDIR}",
      [target, "bsps/powerpc/motorola_powerpc/bootloader/ppcboot.lds"],
  )
do-configure: null
enabled-by: true
links: []
prepare-build: null
prepare-configure: null
type: build