mk-standalone

standalone mk from 9base
git clone git://git.evenfri.duckdns.org/mk-standalone.git
Log | Files | Refs | README

commit fb16b1f0170171f19960379d4c800e7c2cf6c334
parent 954cb4d128582a7f4c2f2287d11247779e81e26d
Author: evenfri <evenfri256@gmail.com>
Date:   Tue, 28 Jul 2026 17:05:24 +0800

update wrappers

Diffstat:
Minstall | 2+-
Dwrapers/as | 16----------------
Dwrapers/cc | 19-------------------
Awrappers/as | 16++++++++++++++++
Awrappers/cc | 3+++
Awrappers/fcc | 13+++++++++++++
Awrappers/fld | 10++++++++++
Awrappers/ld | 3+++
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 "$@"