summaryrefslogtreecommitdiffstats
path: root/spec/build/bsps/x86_64/amd64
diff options
context:
space:
mode:
Diffstat (limited to 'spec/build/bsps/x86_64/amd64')
-rw-r--r--spec/build/bsps/x86_64/amd64/abi.yml10
-rw-r--r--spec/build/bsps/x86_64/amd64/bspamd64.yml3
-rw-r--r--spec/build/bsps/x86_64/amd64/bspamd64efi.yml84
-rw-r--r--spec/build/bsps/x86_64/amd64/efiabi.yml23
-rw-r--r--spec/build/bsps/x86_64/amd64/optldpagesize.yml25
-rw-r--r--spec/build/bsps/x86_64/amd64/start.yml2
6 files changed, 139 insertions, 8 deletions
diff --git a/spec/build/bsps/x86_64/amd64/abi.yml b/spec/build/bsps/x86_64/amd64/abi.yml
index ca5a815c24..6e539bbd66 100644
--- a/spec/build/bsps/x86_64/amd64/abi.yml
+++ b/spec/build/bsps/x86_64/amd64/abi.yml
@@ -5,12 +5,12 @@ actions:
- env-append: null
build-type: option
copyrights:
-- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
+- Copyright (C) 2020 embedded brains GmbH & Co. KG
default:
-- -mno-red-zone
-- -mcmodel=large
-- -Werror=return-type
-default-by-variant: []
+- enabled-by: true
+ value:
+ - -mno-red-zone
+ - -mcmodel=large
description: |
ABI flags
enabled-by: true
diff --git a/spec/build/bsps/x86_64/amd64/bspamd64.yml b/spec/build/bsps/x86_64/amd64/bspamd64.yml
index 33d78bec48..c05c0bc4ff 100644
--- a/spec/build/bsps/x86_64/amd64/bspamd64.yml
+++ b/spec/build/bsps/x86_64/amd64/bspamd64.yml
@@ -4,7 +4,7 @@ bsp: amd64
build-type: bsp
cflags: []
copyrights:
-- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
+- Copyright (C) 2020 embedded brains GmbH & Co. KG
cppflags: []
enabled-by: true
family: amd64
@@ -17,7 +17,6 @@ install:
- bsps/x86_64/amd64/include/clock.h
- bsps/x86_64/amd64/include/pic.h
- bsps/x86_64/amd64/include/start.h
- - bsps/x86_64/amd64/include/tm27.h
- destination: ${BSP_LIBDIR}
source:
- bsps/x86_64/amd64/start/linkcmds
diff --git a/spec/build/bsps/x86_64/amd64/bspamd64efi.yml b/spec/build/bsps/x86_64/amd64/bspamd64efi.yml
new file mode 100644
index 0000000000..e822252002
--- /dev/null
+++ b/spec/build/bsps/x86_64/amd64/bspamd64efi.yml
@@ -0,0 +1,84 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+arch: x86_64
+bsp: amd64efi
+build-type: bsp
+cflags: []
+copyrights:
+- Copyright (C) 2020 embedded brains GmbH & Co. KG
+cppflags: []
+enabled-by: true
+family: amd64
+includes:
+- bsps/shared/freebsd/stand/efi/include
+- bsps/shared/freebsd/stand/efi/include/amd64
+install:
+- destination: ${BSP_INCLUDEDIR}
+ source:
+ - bsps/x86_64/amd64/include/apic.h
+ - bsps/x86_64/amd64/include/bsp.h
+ - bsps/x86_64/amd64/include/clock.h
+ - bsps/x86_64/amd64/include/pic.h
+ - bsps/x86_64/amd64/include/start.h
+- destination: ${BSP_LIBDIR}
+ source:
+ - bsps/x86_64/amd64/start/linkcmds
+links:
+- role: build-dependency
+ uid: ../../obj
+- role: build-dependency
+ uid: ../../objirq
+- role: build-dependency
+ uid: ../../objmem
+- role: build-dependency
+ uid: ../../opto2
+- role: build-dependency
+ uid: efiabi
+- role: build-dependency
+ uid: start
+- role: build-dependency
+ uid: ../grp
+- role: build-dependency
+ uid: ../../optmultiboot
+- role: build-dependency
+ uid: ../../opteficonsole
+- role: build-dependency
+ uid: ../../optefiearlyconsole
+- role: build-dependency
+ uid: ../../optefistom
+- role: build-dependency
+ uid: ../../optefigopm
+- role: build-dependency
+ uid: ../../optefimmapprint
+- role: build-dependency
+ uid: ../../optefibs
+- role: build-dependency
+ uid: ../../bspopts
+- role: build-dependency
+ uid: optldpagesize
+- role: build-dependency
+ uid: ../../objefi
+source:
+- bsps/shared/cache/nocache.c
+- bsps/shared/dev/btimer/btimer-cpucounter.c
+- bsps/shared/dev/getentropy/getentropy-cpucounter.c
+- bsps/shared/dev/serial/console-termios-init.c
+- bsps/shared/dev/serial/console-termios.c
+- bsps/shared/irq/irq-default-handler.c
+- bsps/shared/start/bspfatal-default.c
+- bsps/shared/start/bspreset-empty.c
+- bsps/shared/start/gettargethash-default.c
+- bsps/shared/start/sbrk.c
+- bsps/x86_64/amd64/clock/eficlock.c
+- bsps/x86_64/amd64/console/eficonsole.c
+- bsps/x86_64/amd64/console/efistop.c
+- bsps/x86_64/amd64/console/efigop.c
+- bsps/x86_64/amd64/console/outch.c
+- bsps/x86_64/amd64/console/console.c
+- bsps/x86_64/amd64/interrupts/idt.c
+- bsps/x86_64/amd64/interrupts/isr_handler.S
+- bsps/x86_64/amd64/interrupts/pic.c
+- bsps/x86_64/amd64/start/bspstart.c
+- bsps/x86_64/amd64/start/multiboot2.c
+- bsps/x86_64/amd64/start/efimem.c
+- bsps/x86_64/amd64/start/page.c
+type: build
diff --git a/spec/build/bsps/x86_64/amd64/efiabi.yml b/spec/build/bsps/x86_64/amd64/efiabi.yml
new file mode 100644
index 0000000000..3781e43891
--- /dev/null
+++ b/spec/build/bsps/x86_64/amd64/efiabi.yml
@@ -0,0 +1,23 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+actions:
+- get-string: null
+- split: null
+- env-append: null
+build-type: option
+copyrights:
+- Copyright (C) 2020 embedded brains GmbH & Co. KG
+default:
+- enabled-by: true
+ value:
+ - -fshort-wchar
+ - -maccumulate-outgoing-args
+ - -fno-stack-protector
+ - -fno-stack-check
+ - -mno-red-zone
+ - -mcmodel=large
+description: |
+ ABI flags
+enabled-by: true
+links: []
+name: ABI_FLAGS
+type: build
diff --git a/spec/build/bsps/x86_64/amd64/optldpagesize.yml b/spec/build/bsps/x86_64/amd64/optldpagesize.yml
new file mode 100644
index 0000000000..f445eae606
--- /dev/null
+++ b/spec/build/bsps/x86_64/amd64/optldpagesize.yml
@@ -0,0 +1,25 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+actions:
+- get-integer: null
+- assert-uint32: null
+- env-assign: null
+- set-value: -Wl,-z,max-page-size=${LD_MAX_PAGE_SIZE:#010x}
+- substitute: null
+- env-append: LDFLAGS
+- env-append: PKGCONFIG_LDFLAGS
+build-type: option
+copyrights:
+- Copyright (C) 2023 Karel Gardas
+default:
+- enabled-by: true
+ value: 4096
+description: |
+ Set the value of max-page-size parameter for the GNU linker.
+ By default on x86_64 the linker is using 2MB page size which is
+ too big for creating correctly formed and later recognized multiboot2
+ binaries. Default value 4k used here is working well for the purpose.
+enabled-by: true
+format: '{:#010x}'
+links: []
+name: LD_MAX_PAGE_SIZE
+type: build
diff --git a/spec/build/bsps/x86_64/amd64/start.yml b/spec/build/bsps/x86_64/amd64/start.yml
index 3687f53f5b..1a52568dea 100644
--- a/spec/build/bsps/x86_64/amd64/start.yml
+++ b/spec/build/bsps/x86_64/amd64/start.yml
@@ -2,7 +2,7 @@ SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
asflags: []
build-type: start-file
copyrights:
-- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de)
+- Copyright (C) 2020 embedded brains GmbH & Co. KG
cppflags: []
enabled-by: true
includes: []