TypePHP 编译器
https://swoole.com/aot/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
65 lines
1.2 KiB
65 lines
1.2 KiB
name: typephp_os
|
|
mode: bin
|
|
sources:
|
|
- kernel
|
|
- thirdparty/openlibm/src
|
|
objects:
|
|
- build/objects/kernel64-entry.o
|
|
link-paths:
|
|
- build
|
|
link-libs:
|
|
- compiler-rt-builtins
|
|
build-dir: build/generated
|
|
output: build/kernel64.elf
|
|
cxx-std: c++17
|
|
include-paths:
|
|
- kernel/core/abi
|
|
- thirdparty/openlibm/include
|
|
- thirdparty/openlibm/src
|
|
- thirdparty/openlibm/amd64
|
|
defines:
|
|
- TYPEPHP_NO_MAIN=1
|
|
- PHPX_NO_EXCEPTION=1
|
|
- PHPX_NO_RTTI=1
|
|
- PHP_NANO_NO_LIBC=1
|
|
- __NO_CTYPE=1
|
|
- ZEND_MM_ERROR=0
|
|
- ZEND_MM_CUSTOM=0
|
|
- ASSEMBLER=1
|
|
- __BSD_VISIBLE=1
|
|
cxx-flags:
|
|
- -O2
|
|
- -U_FORTIFY_SOURCE
|
|
- -D_FORTIFY_SOURCE=0
|
|
- -ffreestanding
|
|
- -fno-builtin
|
|
- -fno-stack-protector
|
|
- -fno-pic
|
|
- -fno-pie
|
|
- -m64
|
|
- -mno-red-zone
|
|
- -mcmodel=small
|
|
- -fno-rtti
|
|
- -fno-threadsafe-statics
|
|
c-flags:
|
|
- -O2
|
|
- -U_FORTIFY_SOURCE
|
|
- -D_FORTIFY_SOURCE=0
|
|
- -ffreestanding
|
|
- -fno-builtin
|
|
- -fno-stack-protector
|
|
- -fno-pic
|
|
- -fno-pie
|
|
- -m64
|
|
- -mno-red-zone
|
|
- -mcmodel=small
|
|
asm-flags:
|
|
- -m64
|
|
- -mno-red-zone
|
|
- -mcmodel=small
|
|
ld-flags:
|
|
- -nostdlib
|
|
- -no-pie
|
|
- -Wl,-m,elf_x86_64
|
|
- -Wl,--build-id=none
|
|
- -Wl,-T,examples/typephp-os/boot/kernel64.ld
|
|
|