summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakob Kaivo <jkk@ung.org>2024-05-29 17:57:41 -0400
committerJakob Kaivo <jkk@ung.org>2024-05-29 17:57:41 -0400
commit9c9a3d6ffeaeb41f9521c0ba4d6d85b846911e32 (patch)
treec9ae142f84d63b0ff7487e86af7baf833f4d9f9c
parent8b32f92a2dbf514ccd21b0d622e4f3d5355f9401 (diff)
add dangerous and update dependencies
-rw-r--r--mk/__dangerous.d9
-rw-r--r--mk/__jkmalloc.d6
-rw-r--r--mk/__musl.d8
-rw-r--r--mk/__printf.d5
-rw-r--r--mk/__readonly.d3
-rw-r--r--mk/__undefined.d2
-rw-r--r--mk/all.mk2
-rw-r--r--mk/deps.mk8
-rw-r--r--mk/exit.d2
-rw-r--r--mk/fclose.d2
-rw-r--r--mk/fflush.d2
-rw-r--r--mk/freopen.d3
-rw-r--r--mk/fwscanf.d1
-rw-r--r--mk/getenv.d1
-rw-r--r--mk/raise.d3
-rw-r--r--mk/remove.d4
-rw-r--r--mk/sigaction.d1
-rw-r--r--mk/signal.d1
-rw-r--r--mk/swscanf.d1
-rw-r--r--mk/wcstombs.d1
-rw-r--r--src/__dangerous.c6
21 files changed, 58 insertions, 13 deletions
diff --git a/mk/__dangerous.d b/mk/__dangerous.d
new file mode 100644
index 00000000..b2f6879c
--- /dev/null
+++ b/mk/__dangerous.d
@@ -0,0 +1,9 @@
+libc_C.0: libc.a(__dangerous.o)
+libc.a(__dangerous.o): $(OBJDIR)/__dangerous.o
+ @$(AR) $(ARFLAGS) $@ $(OBJDIR)/$%
+
+$(OBJDIR)/__dangerous.o: src/__dangerous.c
+$(OBJDIR)/__dangerous.o: src/_safety.h
+$(OBJDIR)/__dangerous.o:
+ @mkdir -p $(@D)
+ $(CC) -c -o $@ $(CFLAGS) src/__dangerous.c
diff --git a/mk/__jkmalloc.d b/mk/__jkmalloc.d
index 49f04dd2..6436cbcf 100644
--- a/mk/__jkmalloc.d
+++ b/mk/__jkmalloc.d
@@ -3,7 +3,11 @@ libc.a(__jkmalloc.o): $(OBJDIR)/__jkmalloc.o
@$(AR) $(ARFLAGS) $@ $(OBJDIR)/$%
$(OBJDIR)/__jkmalloc.o: src/stdlib/__jkmalloc.c
-$(OBJDIR)/__jkmalloc.o: src/_syscall.h
+$(OBJDIR)/__jkmalloc.o: src/_safety.h
+$(OBJDIR)/__jkmalloc.o: src/_forced/sigaction.h
+$(OBJDIR)/__jkmalloc.o: src/_forced/mmap.h
+$(OBJDIR)/__jkmalloc.o: src/_forced/munmap.h
+$(OBJDIR)/__jkmalloc.o: src/_forced/mprotect.h
$(OBJDIR)/__jkmalloc.o: src/stdlib/_jkmalloc.h
$(OBJDIR)/__jkmalloc.o:
@mkdir -p $(@D)
diff --git a/mk/__musl.d b/mk/__musl.d
new file mode 100644
index 00000000..849b8053
--- /dev/null
+++ b/mk/__musl.d
@@ -0,0 +1,8 @@
+libc_C.0: libc.a(__musl.o)
+libc.a(__musl.o): $(OBJDIR)/__musl.o
+ @$(AR) $(ARFLAGS) $@ $(OBJDIR)/$%
+
+$(OBJDIR)/__musl.o: src/__musl.c
+$(OBJDIR)/__musl.o:
+ @mkdir -p $(@D)
+ $(CC) -c -o $@ $(CFLAGS) src/__musl.c
diff --git a/mk/__printf.d b/mk/__printf.d
index 760b313c..a70d71c7 100644
--- a/mk/__printf.d
+++ b/mk/__printf.d
@@ -3,10 +3,7 @@ libc.a(__printf.o): $(OBJDIR)/__printf.o
@$(AR) $(ARFLAGS) $@ $(OBJDIR)/$%
$(OBJDIR)/__printf.o: src/stdio/__printf.c
-$(OBJDIR)/__printf.o: src/stdint/intmax_t.h
-$(OBJDIR)/__printf.o: src/stdint/uintmax_t.h
-$(OBJDIR)/__printf.o: src/stdint/intptr_t.h
-$(OBJDIR)/__printf.o: src/stdint/UINTMAX_MAX.h
+$(OBJDIR)/__printf.o: src/_forced/strtoumax.h
$(OBJDIR)/__printf.o: src/stdio/_stdio.h
$(OBJDIR)/__printf.o:
@mkdir -p $(@D)
diff --git a/mk/__readonly.d b/mk/__readonly.d
index e2bf7865..adfa988e 100644
--- a/mk/__readonly.d
+++ b/mk/__readonly.d
@@ -4,7 +4,8 @@ libc.a(__readonly.o): $(OBJDIR)/__readonly.o
$(OBJDIR)/__readonly.o: src/__readonly.c
$(OBJDIR)/__readonly.o: src/_readonly.h
-$(OBJDIR)/__readonly.o: src/_syscall.h
+$(OBJDIR)/__readonly.o: src/stdlib/_jkmalloc.h
+$(OBJDIR)/__readonly.o: src/_forced/mprotect.h
$(OBJDIR)/__readonly.o:
@mkdir -p $(@D)
$(CC) -c -o $@ $(CFLAGS) src/__readonly.c
diff --git a/mk/__undefined.d b/mk/__undefined.d
index b8337431..eb4bf835 100644
--- a/mk/__undefined.d
+++ b/mk/__undefined.d
@@ -4,7 +4,7 @@ libc.a(__undefined.o): $(OBJDIR)/__undefined.o
$(OBJDIR)/__undefined.o: src/__undefined.c
$(OBJDIR)/__undefined.o: src/_safety.h
-$(OBJDIR)/__undefined.o: src/stdlib/_Exit.c
+$(OBJDIR)/__undefined.o: src/_forced/_Exit.h
$(OBJDIR)/__undefined.o:
@mkdir -p $(@D)
$(CC) -c -o $@ $(CFLAGS) src/__undefined.c
diff --git a/mk/all.mk b/mk/all.mk
index cdd17bf1..dc4370a3 100644
--- a/mk/all.mk
+++ b/mk/all.mk
@@ -58,6 +58,7 @@ include mk/fesetenv.d
include mk/feclearexcept.d
include mk/fegetround.d
include mk/fegetenv.d
+include mk/__dangerous.d
include mk/atomic_store.d
include mk/atomic_compare_exchange_weak.d
include mk/atomic_fetch_xor.d
@@ -196,6 +197,7 @@ include mk/va_start.d
include mk/va_arg.d
include mk/va_end.d
include mk/environ.d
+include mk/__musl.d
include mk/timespec_get.d
include mk/ctime.d
include mk/asctime_s.d
diff --git a/mk/deps.mk b/mk/deps.mk
index f77b06bc..c9715488 100644
--- a/mk/deps.mk
+++ b/mk/deps.mk
@@ -242,6 +242,10 @@ all: mk/fegetenv.d
mk/fegetenv.d: src/fenv/fegetenv.c
sh mk/deps.sh src/fenv/fegetenv.c
+all: mk/__dangerous.d
+mk/__dangerous.d: src/__dangerous.c
+ sh mk/deps.sh src/__dangerous.c
+
all: mk/atomic_store.d
mk/atomic_store.d: src/stdatomic/atomic_store.c
sh mk/deps.sh src/stdatomic/atomic_store.c
@@ -794,6 +798,10 @@ all: mk/environ.d
mk/environ.d: src/environ.c
sh mk/deps.sh src/environ.c
+all: mk/__musl.d
+mk/__musl.d: src/__musl.c
+ sh mk/deps.sh src/__musl.c
+
all: mk/timespec_get.d
mk/timespec_get.d: src/time/timespec_get.c
sh mk/deps.sh src/time/timespec_get.c
diff --git a/mk/exit.d b/mk/exit.d
index cdc1933a..0283ae04 100644
--- a/mk/exit.d
+++ b/mk/exit.d
@@ -5,7 +5,7 @@ libc.a(exit.o): $(OBJDIR)/exit.o
$(OBJDIR)/exit.o: src/stdlib/exit.c
$(OBJDIR)/exit.o: src/stdlib/_stdlib.h
$(OBJDIR)/exit.o: src/_syscall.h
-$(OBJDIR)/exit.o: src/stdlib/_Exit.c
+$(OBJDIR)/exit.o: src/_forced/_Exit.h
$(OBJDIR)/exit.o:
@mkdir -p $(@D)
$(CC) -c -o $@ $(CFLAGS) src/stdlib/exit.c
diff --git a/mk/fclose.d b/mk/fclose.d
index 218574bc..5260be6d 100644
--- a/mk/fclose.d
+++ b/mk/fclose.d
@@ -4,7 +4,7 @@ libc.a(fclose.o): $(OBJDIR)/fclose.o
$(OBJDIR)/fclose.o: src/stdio/fclose.c
$(OBJDIR)/fclose.o: src/stdio/_stdio.h
-$(OBJDIR)/fclose.o: src/_syscall.h
+$(OBJDIR)/fclose.o: src/_forced/close.h
$(OBJDIR)/fclose.o:
@mkdir -p $(@D)
$(CC) -c -o $@ $(CFLAGS) src/stdio/fclose.c
diff --git a/mk/fflush.d b/mk/fflush.d
index 9795d7c7..fb63a95e 100644
--- a/mk/fflush.d
+++ b/mk/fflush.d
@@ -4,7 +4,7 @@ libc.a(fflush.o): $(OBJDIR)/fflush.o
$(OBJDIR)/fflush.o: src/stdio/fflush.c
$(OBJDIR)/fflush.o: src/stdio/_stdio.h
-$(OBJDIR)/fflush.o: src/_syscall.h
+$(OBJDIR)/fflush.o: src/_forced/write.h
$(OBJDIR)/fflush.o:
@mkdir -p $(@D)
$(CC) -c -o $@ $(CFLAGS) src/stdio/fflush.c
diff --git a/mk/freopen.d b/mk/freopen.d
index e59d7cc2..2a1a7522 100644
--- a/mk/freopen.d
+++ b/mk/freopen.d
@@ -4,7 +4,8 @@ libc.a(freopen.o): $(OBJDIR)/freopen.o
$(OBJDIR)/freopen.o: src/stdio/freopen.c
$(OBJDIR)/freopen.o: src/stdio/_stdio.h
-$(OBJDIR)/freopen.o: src/_syscall.h
+$(OBJDIR)/freopen.o: src/_forced/open.h
+$(OBJDIR)/freopen.o: src/_forced/isatty.h
$(OBJDIR)/freopen.o:
@mkdir -p $(@D)
$(CC) -c -o $@ $(CFLAGS) src/stdio/freopen.c
diff --git a/mk/fwscanf.d b/mk/fwscanf.d
index c076a0b6..3a469a0e 100644
--- a/mk/fwscanf.d
+++ b/mk/fwscanf.d
@@ -3,6 +3,7 @@ libc.a(fwscanf.o): $(OBJDIR)/fwscanf.o
@$(AR) $(ARFLAGS) $@ $(OBJDIR)/$%
$(OBJDIR)/fwscanf.o: src/wchar/fwscanf.c
+$(OBJDIR)/fwscanf.o: src/_forced/vfwscanf.h
$(OBJDIR)/fwscanf.o:
@mkdir -p $(@D)
$(CC) -c -o $@ $(CFLAGS) src/wchar/fwscanf.c
diff --git a/mk/getenv.d b/mk/getenv.d
index 8bf39692..dc4a2c34 100644
--- a/mk/getenv.d
+++ b/mk/getenv.d
@@ -4,6 +4,7 @@ libc.a(getenv.o): $(OBJDIR)/getenv.o
$(OBJDIR)/getenv.o: src/stdlib/getenv.c
$(OBJDIR)/getenv.o: src/stdlib/_stdlib.h
+$(OBJDIR)/getenv.o: src/_readonly.h
$(OBJDIR)/getenv.o:
@mkdir -p $(@D)
$(CC) -c -o $@ $(CFLAGS) src/stdlib/getenv.c
diff --git a/mk/raise.d b/mk/raise.d
index 3c7cf38b..bc724e3d 100644
--- a/mk/raise.d
+++ b/mk/raise.d
@@ -4,7 +4,8 @@ libc.a(raise.o): $(OBJDIR)/raise.o
$(OBJDIR)/raise.o: src/signal/raise.c
$(OBJDIR)/raise.o: src/stdlib/_stdlib.h
-$(OBJDIR)/raise.o: src/_syscall.h
+$(OBJDIR)/raise.o: src/_forced/kill.h
+$(OBJDIR)/raise.o: src/_forced/getpid.h
$(OBJDIR)/raise.o: src/_safety.h
$(OBJDIR)/raise.o:
@mkdir -p $(@D)
diff --git a/mk/remove.d b/mk/remove.d
index 7f4981c8..d915fab9 100644
--- a/mk/remove.d
+++ b/mk/remove.d
@@ -4,7 +4,9 @@ libc.a(remove.o): $(OBJDIR)/remove.o
$(OBJDIR)/remove.o: src/stdio/remove.c
$(OBJDIR)/remove.o: src/stdio/_stdio.h
-$(OBJDIR)/remove.o: src/_syscall.h
+$(OBJDIR)/remove.o: src/_forced/stat.h
+$(OBJDIR)/remove.o: src/_forced/rmdir.h
+$(OBJDIR)/remove.o: src/_forced/unlink.h
$(OBJDIR)/remove.o:
@mkdir -p $(@D)
$(CC) -c -o $@ $(CFLAGS) src/stdio/remove.c
diff --git a/mk/sigaction.d b/mk/sigaction.d
index 2b2d6c90..44892fe0 100644
--- a/mk/sigaction.d
+++ b/mk/sigaction.d
@@ -4,6 +4,7 @@ libc.a(sigaction.o): $(OBJDIR)/sigaction.o
$(OBJDIR)/sigaction.o: src/signal/sigaction.c
$(OBJDIR)/sigaction.o: src/_syscall.h
+$(OBJDIR)/sigaction.o: src/_safety.h
$(OBJDIR)/sigaction.o:
@mkdir -p $(@D)
$(CC) -c -o $@ $(CFLAGS) src/signal/sigaction.c
diff --git a/mk/signal.d b/mk/signal.d
index 84a47e61..5a2e1676 100644
--- a/mk/signal.d
+++ b/mk/signal.d
@@ -6,6 +6,7 @@ $(OBJDIR)/signal.o: src/signal/signal.c
$(OBJDIR)/signal.o: src/signal/_signal.h
$(OBJDIR)/signal.o: src/_safety.h
$(OBJDIR)/signal.o: src/_syscall.h
+$(OBJDIR)/signal.o: src/_forced/sigaction.h
$(OBJDIR)/signal.o:
@mkdir -p $(@D)
$(CC) -c -o $@ $(CFLAGS) src/signal/signal.c
diff --git a/mk/swscanf.d b/mk/swscanf.d
index 616887f9..ca86e681 100644
--- a/mk/swscanf.d
+++ b/mk/swscanf.d
@@ -3,6 +3,7 @@ libc.a(swscanf.o): $(OBJDIR)/swscanf.o
@$(AR) $(ARFLAGS) $@ $(OBJDIR)/$%
$(OBJDIR)/swscanf.o: src/wchar/swscanf.c
+$(OBJDIR)/swscanf.o: src/_forced/vswscanf.h
$(OBJDIR)/swscanf.o:
@mkdir -p $(@D)
$(CC) -c -o $@ $(CFLAGS) src/wchar/swscanf.c
diff --git a/mk/wcstombs.d b/mk/wcstombs.d
index 75fe9cd2..db0f8ea1 100644
--- a/mk/wcstombs.d
+++ b/mk/wcstombs.d
@@ -4,6 +4,7 @@ libc.a(wcstombs.o): $(OBJDIR)/wcstombs.o
$(OBJDIR)/wcstombs.o: src/stdlib/wcstombs.c
$(OBJDIR)/wcstombs.o: src/stdlib/_stdlib.h
+$(OBJDIR)/wcstombs.o: src/_forced/wcslen.h
$(OBJDIR)/wcstombs.o:
@mkdir -p $(@D)
$(CC) -c -o $@ $(CFLAGS) src/stdlib/wcstombs.c
diff --git a/src/__dangerous.c b/src/__dangerous.c
new file mode 100644
index 00000000..d4fb4bad
--- /dev/null
+++ b/src/__dangerous.c
@@ -0,0 +1,6 @@
+#include "_safety.h"
+
+#if 0
+_Thread_local
+#endif
+struct __dangerous __dangerous = { 0 };