Tupfile (1254B)
1 CXXFLAGS = -std=c++23 -Wall -Werror -Wextra -Wpedantic -g -fno-exceptions -fno-rtti -fno-asynchronous-unwind-tables -fno-builtin -fno-pic -fno-pie -fno-stack-protector -fdiagnostics-color=always -nostdinc -nostdlibinc -nostdinc++ 2 LDFLAGS = --gc-sections 3 4 : |> ./errno.sh > %o |> errno.hpp 5 6 !cpp.aarch64 = | errno.hpp |> ^j^ clang++ --target=aarch64 $(CXXFLAGS) -c -o %o %f |> 7 !cpp.x86_64 = | errno.hpp |> ^j^ clang++ --target=x86_64 $(CXXFLAGS) -c -o %o %f |> 8 9 : foreach *.cpp ^cxa.cpp |> !cpp.aarch64 |> obj/%B.aarch64.o {objs-aarch64} 10 : foreach *.cpp ^cxa.cpp |> !cpp.x86_64 |> obj/%B.x86_64.o {objs-x86_64} 11 : cxa.cpp |> !cpp.aarch64 |> obj/%B.aarch64.o 12 : cxa.cpp |> !cpp.x86_64 |> obj/%B.x86_64.o 13 14 : foreach *.S |> clang --target=%B -c -o %o %f |> obj/%B.o 15 16 !ld.aarch64 = | obj/cxa.aarch64.o obj/aarch64.o aarch64.ld |> ld.lld -m aarch64elf $(LDFLAGS) -o %o --script aarch64.ld %f obj/cxa.aarch64.o obj/aarch64.o |> 17 !ld.x86_64 = | obj/cxa.x86_64.o obj/x86_64.o x86_64.ld |> ld.lld -m elf_x86_64 $(LDFLAGS) -o %o --script x86_64.ld %f obj/cxa.x86_64.o obj/x86_64.o |> 18 19 : foreach {objs-aarch64} |> !ld.aarch64 |> bin/%B {bin-aarch64} 20 : foreach {objs-x86_64} |> !ld.x86_64 |> bin/%B {bin-x86_64} 21 22 run ./gen.sh 23 24 : bin/writer.aarch64 |> %f |> 25 26 .gitignore