commit fb16b1f0170171f19960379d4c800e7c2cf6c334
parent 954cb4d128582a7f4c2f2287d11247779e81e26d
Author: evenfri <evenfri256@gmail.com>
Date: Tue, 28 Jul 2026 17:05:24 +0800
update wrappers
Diffstat:
8 files changed, 46 insertions(+), 36 deletions(-)
diff --git a/install b/install
@@ -11,7 +11,7 @@ sudo mkdir -p /usr/local/plan9/lib
sudo cp -r mk/mk /usr/local/plan9/bin/
sudo cp -r templates/* /usr/local/plan9/src/
-sudo cp -r wrapers/* /usr/local/plan9/bin/
+sudo cp -r wrappers/* /usr/local/plan9/bin/
sudo cp -r lib9/lib9.a /usr/local/plan9/lib/
echo
diff --git a/wrapers/as b/wrapers/as
@@ -1,16 +0,0 @@
-#!/bin/sh
-s_file=""
-has_o=""
-
-for arg; do
- case "$arg" in
- -o) has_o=1 ;;
- *.s|*.S) s_file="$arg" ;;
- esac
-done
-
-if [ -n "$s_file" ] && [ -z "$has_o" ]; then
- exec /usr/bin/as "$@" -o "${s_file%.*}.o"
-fi
-
-exec /usr/bin/as "$@"
diff --git a/wrapers/cc b/wrapers/cc
@@ -1,19 +0,0 @@
-#!/bin/sh
-c_file=""
-has_o=""
-has_c=""
-
-for arg; do
- case "$arg" in
- -o) has_o=1 ;;
- -c) has_c=1 ;;
- *.c) c_file="$arg" ;;
- esac
-done
-
-if [ -n "$c_file" ] && [ -z "$has_o" ]; then
- [ -z "$has_c" ] && set -- -c "$@"
- exec /usr/bin/cc "$@" -o "${c_file%.c}.o"
-fi
-
-exec /usr/bin/cc "$@"
diff --git a/wrappers/as b/wrappers/as
@@ -0,0 +1,16 @@
+#!/bin/sh
+s_file=""
+has_o=""
+
+for arg; do
+ case "$arg" in
+ -o|-o*) has_o=1 ;;
+ *.s|*.S) s_file="$arg" ;;
+ esac
+done
+
+if [ -n "$s_file" ] && [ -z "$has_o" ]; then
+ exec /usr/bin/as "$@" -o "${s_file%.*}.o"
+fi
+
+exec /usr/bin/as "$@"
diff --git a/wrappers/cc b/wrappers/cc
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec /usr/bin/cc -c "$@"
diff --git a/wrappers/fcc b/wrappers/fcc
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+INC=$(/usr/bin/cc -print-file-name=include)
+
+exec /usr/bin/cc -c \
+ -fstack-protector-all \
+ -mstack-protector-guard=global \
+ -nostdlib \
+ -nostdinc \
+ -ffreestanding \
+ -fno-builtin \
+ -isystem "$INC" \
+ "$@"
diff --git a/wrappers/fld b/wrappers/fld
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+libc="$LIBC/libc.a"
+
+exec /usr/bin/ld -m elf_x86_64 \
+ -nostdlib \
+ -static \
+ -e _start \
+ "$@" \
+ "$libc"
diff --git a/wrappers/ld b/wrappers/ld
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec /usr/bin/ld -m elf_x86_64 "$@"