From 80804ccfffc4335a7a59dbe2144a031e78b1e526 Mon Sep 17 00:00:00 2001 From: Justine Tunney Date: Sun, 22 Sep 2024 03:57:35 -0700 Subject: [PATCH] Upgrade to cosmocc v3.9.2 --- .vscode/settings.json | 2 +- Makefile | 108 +++++++++++++++++++++--------------------- build/objdump | 16 +++---- libc/nexgen32e/pid.c | 3 ++ 4 files changed, 65 insertions(+), 64 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 56c99cef4..6ce0ca591 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,5 +1,5 @@ { - "C_Cpp.default.compilerPath": ".cosmocc/3.8.0/bin/aarch64-linux-cosmo-c++", + "C_Cpp.default.compilerPath": ".cosmocc/3.9.2/bin/aarch64-linux-cosmo-c++", "C_Cpp.default.compilerArgs": [ "-nostdinc", "-nostdlib", diff --git a/Makefile b/Makefile index cd93cdeb9..111a0681c 100644 --- a/Makefile +++ b/Makefile @@ -147,10 +147,10 @@ export MODE export SOURCE_DATE_EPOCH export TMPDIR -COSMOCC = .cosmocc/3.8.0 +COSMOCC = .cosmocc/3.9.2 BOOTSTRAP = $(COSMOCC)/bin TOOLCHAIN = $(COSMOCC)/bin/$(ARCH)-linux-cosmo- -DOWNLOAD := $(shell build/download-cosmocc.sh $(COSMOCC) 3.8.0 813c6b2f95062d2e0a845307a79505424cb98cb038e8013334f8a22e3b92a474) +DOWNLOAD := $(shell build/download-cosmocc.sh $(COSMOCC) 3.9.2 f4ff13af65fcd309f3f1cfd04275996fb7f72a4897726628a8c9cf732e850193) IGNORE := $(shell $(MKDIR) $(TMPDIR)) @@ -433,64 +433,62 @@ loc: o/$(MODE)/tool/build/summy find -name \*.h -or -name \*.hpp -or -name \*.c -or -name \*.cc -or -name \*.cpp -or -name \*.S -or -name \*.mk | \ $(XARGS) wc -l | grep total | awk '{print $$1}' | $< -# PLEASE: MAINTAIN TOPOLOGICAL ORDER -# FROM HIGHEST LEVEL TO LOWEST LEVEL -COSMOPOLITAN_OBJECTS = \ +COSMOPOLITAN = \ CTL \ - THIRD_PARTY_DOUBLECONVERSION \ - THIRD_PARTY_OPENMP \ - TOOL_ARGS \ - NET_HTTP \ DSP_AUDIO \ - LIBC_SOCK \ - LIBC_NT_WS2_32 \ - LIBC_NT_IPHLPAPI \ - LIBC_X \ - THIRD_PARTY_GETOPT \ - LIBC_LOG \ - THIRD_PARTY_TZ \ - THIRD_PARTY_MUSL \ - THIRD_PARTY_ZLIB_GZ \ - THIRD_PARTY_LIBCXXABI \ - THIRD_PARTY_LIBUNWIND \ - LIBC_STDIO \ - THIRD_PARTY_GDTOA \ - THIRD_PARTY_REGEX \ - LIBC_THREAD \ - LIBC_PROC \ - THIRD_PARTY_NSYNC_MEM \ - LIBC_MEM \ - THIRD_PARTY_DLMALLOC \ - LIBC_DLOPEN \ - LIBC_RUNTIME \ - THIRD_PARTY_NSYNC \ - LIBC_ELF \ - LIBC_IRQ \ LIBC_CALLS \ - LIBC_SYSV_CALLS \ - LIBC_VGA \ - LIBC_NT_REALTIME \ - LIBC_NT_PSAPI \ - LIBC_NT_POWRPROF \ - LIBC_NT_PDH \ - LIBC_NT_GDI32 \ - LIBC_NT_COMDLG32 \ - LIBC_NT_USER32 \ - LIBC_NT_NTDLL \ - LIBC_NT_ADVAPI32 \ - LIBC_NT_SYNCHRONIZATION \ + LIBC_DLOPEN \ + LIBC_ELF \ LIBC_FMT \ - THIRD_PARTY_ZLIB \ - THIRD_PARTY_PUFF \ - THIRD_PARTY_COMPILER_RT \ - LIBC_TINYMATH \ - THIRD_PARTY_XED \ + LIBC_INTRIN \ + LIBC_IRQ \ + LIBC_LOG \ + LIBC_MEM \ + LIBC_NEXGEN32E \ + LIBC_NT_ADVAPI32 \ + LIBC_NT_BCRYPTPRIMITIVES \ + LIBC_NT_COMDLG32 \ + LIBC_NT_GDI32 \ + LIBC_NT_IPHLPAPI \ + LIBC_NT_KERNEL32 \ + LIBC_NT_NTDLL \ + LIBC_NT_PDH \ + LIBC_NT_POWRPROF \ + LIBC_NT_PSAPI \ + LIBC_NT_REALTIME \ + LIBC_NT_SYNCHRONIZATION \ + LIBC_NT_USER32 \ + LIBC_NT_WS2_32 \ + LIBC_PROC \ + LIBC_RUNTIME \ + LIBC_SOCK \ + LIBC_STDIO \ LIBC_STR \ LIBC_SYSV \ - LIBC_INTRIN \ - LIBC_NT_BCRYPTPRIMITIVES \ - LIBC_NT_KERNEL32 \ - LIBC_NEXGEN32E + LIBC_SYSV_CALLS \ + LIBC_THREAD \ + LIBC_TINYMATH \ + LIBC_VGA \ + LIBC_X \ + NET_HTTP \ + THIRD_PARTY_COMPILER_RT \ + THIRD_PARTY_DLMALLOC \ + THIRD_PARTY_DOUBLECONVERSION \ + THIRD_PARTY_GDTOA \ + THIRD_PARTY_GETOPT \ + THIRD_PARTY_LIBCXXABI \ + THIRD_PARTY_LIBUNWIND \ + THIRD_PARTY_MUSL \ + THIRD_PARTY_NSYNC \ + THIRD_PARTY_NSYNC_MEM \ + THIRD_PARTY_OPENMP \ + THIRD_PARTY_PUFF \ + THIRD_PARTY_REGEX \ + THIRD_PARTY_TZ \ + THIRD_PARTY_XED \ + THIRD_PARTY_ZLIB \ + THIRD_PARTY_ZLIB_GZ \ + TOOL_ARGS \ COSMOPOLITAN_H_PKGS = \ APE \ @@ -538,7 +536,7 @@ COSMOCC_PKGS = \ THIRD_PARTY_INTEL o/$(MODE)/cosmopolitan.a: \ - $(foreach x,$(COSMOPOLITAN_OBJECTS),$($(x)_A_OBJS)) + $(call uniq,$(foreach x,$(COSMOPOLITAN),$($(x)))) COSMOCC_HDRS = \ $(wildcard libc/integral/*) \ diff --git a/build/objdump b/build/objdump index b49667976..358d8f4c8 100755 --- a/build/objdump +++ b/build/objdump @@ -6,14 +6,14 @@ if [ -n "$OBJDUMP" ]; then fi find_objdump() { - if [ -x .cosmocc/3.8.0/bin/$1-linux-cosmo-objdump ]; then - OBJDUMP=.cosmocc/3.8.0/bin/$1-linux-cosmo-objdump - elif [ -x .cosmocc/3.8.0/bin/$1-linux-musl-objdump ]; then - OBJDUMP=.cosmocc/3.8.0/bin/$1-linux-musl-objdump - elif [ -x "$COSMO/.cosmocc/3.8.0/bin/$1-linux-cosmo-objdump" ]; then - OBJDUMP="$COSMO/.cosmocc/3.8.0/bin/$1-linux-cosmo-objdump" - elif [ -x "$COSMO/.cosmocc/3.8.0/bin/$1-linux-musl-objdump" ]; then - OBJDUMP="$COSMO/.cosmocc/3.8.0/bin/$1-linux-musl-objdump" + if [ -x .cosmocc/3.9.2/bin/$1-linux-cosmo-objdump ]; then + OBJDUMP=.cosmocc/3.9.2/bin/$1-linux-cosmo-objdump + elif [ -x .cosmocc/3.9.2/bin/$1-linux-musl-objdump ]; then + OBJDUMP=.cosmocc/3.9.2/bin/$1-linux-musl-objdump + elif [ -x "$COSMO/.cosmocc/3.9.2/bin/$1-linux-cosmo-objdump" ]; then + OBJDUMP="$COSMO/.cosmocc/3.9.2/bin/$1-linux-cosmo-objdump" + elif [ -x "$COSMO/.cosmocc/3.9.2/bin/$1-linux-musl-objdump" ]; then + OBJDUMP="$COSMO/.cosmocc/3.9.2/bin/$1-linux-musl-objdump" else echo "error: toolchain not found (try running 'cosmocc --update' or 'make' in the cosmo monorepo)" >&2 exit 1 diff --git a/libc/nexgen32e/pid.c b/libc/nexgen32e/pid.c index 1abfb511e..235e575f1 100644 --- a/libc/nexgen32e/pid.c +++ b/libc/nexgen32e/pid.c @@ -17,5 +17,8 @@ │ PERFORMANCE OF THIS SOFTWARE. │ ╚─────────────────────────────────────────────────────────────────────────────*/ #include "libc/runtime/internal.h" +#ifndef __x86_64__ int __pid; + +#endif