summaryrefslogtreecommitdiff
path: root/scripts/build/environments/phys.mk
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/build/environments/phys.mk')
-rw-r--r--scripts/build/environments/phys.mk12
1 files changed, 12 insertions, 0 deletions
diff --git a/scripts/build/environments/phys.mk b/scripts/build/environments/phys.mk
new file mode 100644
index 0000000..6a11c12
--- /dev/null
+++ b/scripts/build/environments/phys.mk
@@ -0,0 +1,12 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+# Early physical-address execution environment. It deliberately has no heap,
+# exceptions, RTTI, thread-safe statics, or PIE/GOT assumptions.
+PHYS_CFLAGS := $(WARNINGS) -Os -g -ffreestanding -nostdlib \
+ -fno-pie -fno-stack-protector $(TOOLCHAIN_CFLAGS) \
+ $(KCPPFLAGS) $(INCLUDES) -I$(BUILD)/generated
+PHYS_CXXFLAGS := $(PHYS_CFLAGS) $(TOOLCHAIN_CXXFLAGS) -std=c++23 \
+ -fno-exceptions -fno-rtti -fno-use-cxa-atexit \
+ -fno-threadsafe-statics
+PHYS_ASFLAGS := $(PHYS_CFLAGS)
+