mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-07-26 12:30:30 +00:00
Make Cosmopolitan ANSI C89 compatible
You can now use cosmopolitan.h with an ANSI C89 compiler like MSVC. The Cosmopolitan codebase itself won't support being compiled that way. But you can build objects that link against Cosmopolitan using any compiler and you can furthermore use tools like IntelliSense that can't even GNU See also #40
This commit is contained in:
parent
46085797b6
commit
a8d7195777
34 changed files with 262 additions and 9561 deletions
1022
third_party/lemon/README
vendored
1022
third_party/lemon/README
vendored
File diff suppressed because it is too large
Load diff
5968
third_party/lemon/lemon.c
vendored
5968
third_party/lemon/lemon.c
vendored
File diff suppressed because it is too large
Load diff
61
third_party/lemon/lemon.mk
vendored
61
third_party/lemon/lemon.mk
vendored
|
@ -1,61 +0,0 @@
|
|||
#-*-mode:makefile-gmake;indent-tabs-mode:t;tab-width:8;coding:utf-8-*-┐
|
||||
#───vi: set et ft=make ts=8 tw=8 fenc=utf-8 :vi───────────────────────┘
|
||||
|
||||
PKGS += THIRD_PARTY_LEMON
|
||||
THIRD_PARTY_LEMON_FILES := $(wildcard third_party/lemon/*)
|
||||
THIRD_PARTY_LEMON_HDRS = $(filter %.h,$(THIRD_PARTY_LEMON_FILES))
|
||||
THIRD_PARTY_LEMON_INCS = $(filter %.inc,$(THIRD_PARTY_LEMON_FILES))
|
||||
THIRD_PARTY_LEMON_SRCS = $(filter %.c,$(THIRD_PARTY_LEMON_FILES))
|
||||
|
||||
LEMON = $(MKDIR) $(@D) && ACTION="LEMON $@" build/do $(THIRD_PARTY_LEMON)
|
||||
|
||||
THIRD_PARTY_LEMON = o/$(MODE)/third_party/lemon/lemon.com.dbg
|
||||
|
||||
THIRD_PARTY_LEMON_OBJS = \
|
||||
o/$(MODE)/third_party/lemon/lemon.o \
|
||||
o/$(MODE)/third_party/lemon/lempar.c.txt.zip.o
|
||||
|
||||
THIRD_PARTY_LEMON_COMS = \
|
||||
o/$(MODE)/third_party/lemon/lemon.com
|
||||
|
||||
THIRD_PARTY_LEMON_LINK = \
|
||||
$(THIRD_PARTY_LEMON_DEPS) \
|
||||
o/$(MODE)/third_party/lemon/%.o \
|
||||
$(CRT) \
|
||||
$(APE)
|
||||
|
||||
THIRD_PARTY_LEMON_DIRECTDEPS = \
|
||||
LIBC_ALG \
|
||||
LIBC_CALLS \
|
||||
LIBC_FMT \
|
||||
LIBC_INTRIN \
|
||||
LIBC_MEM \
|
||||
LIBC_NEXGEN32E \
|
||||
LIBC_RUNTIME \
|
||||
LIBC_STDIO \
|
||||
LIBC_STR \
|
||||
LIBC_STUBS \
|
||||
LIBC_UNICODE \
|
||||
LIBC_X \
|
||||
LIBC_ZIPOS \
|
||||
THIRD_PARTY_GDTOA
|
||||
|
||||
THIRD_PARTY_LEMON_DEPS := \
|
||||
$(call uniq,$(foreach x,$(THIRD_PARTY_LEMON_DIRECTDEPS),$($(x))))
|
||||
|
||||
o/$(MODE)/third_party/lemon/lemon.pkg: \
|
||||
$(THIRD_PARTY_LEMON_OBJS) \
|
||||
$(foreach x,$(THIRD_PARTY_LEMON_DIRECTDEPS),$($(x)_A).pkg)
|
||||
|
||||
o/$(MODE)/third_party/lemon/lemon.com.dbg: \
|
||||
$(THIRD_PARTY_LEMON_DEPS) \
|
||||
o/$(MODE)/third_party/lemon/lemon.pkg \
|
||||
o/$(MODE)/third_party/lemon/lemon.o \
|
||||
o/$(MODE)/third_party/lemon/lempar.c.txt.zip.o \
|
||||
$(CRT) \
|
||||
$(APE)
|
||||
-@$(APELINK)
|
||||
|
||||
.PHONY: o/$(MODE)/third_party/lemon
|
||||
o/$(MODE)/third_party/lemon: \
|
||||
o/$(MODE)/third_party/lemon/lemon.com
|
1083
third_party/lemon/lempar.c.txt
vendored
1083
third_party/lemon/lempar.c.txt
vendored
File diff suppressed because it is too large
Load diff
1
third_party/third_party.mk
vendored
1
third_party/third_party.mk
vendored
|
@ -11,7 +11,6 @@ o/$(MODE)/third_party: \
|
|||
o/$(MODE)/third_party/duktape \
|
||||
o/$(MODE)/third_party/f2c \
|
||||
o/$(MODE)/third_party/getopt \
|
||||
o/$(MODE)/third_party/lemon \
|
||||
o/$(MODE)/third_party/lz4cli \
|
||||
o/$(MODE)/third_party/musl \
|
||||
o/$(MODE)/third_party/regex \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue