mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-03-03 15:38:22 +00:00
Fix ARG_MAX with chibicc documentation generator
This commit is contained in:
parent
d230a01222
commit
1a29424c52
2 changed files with 18 additions and 2 deletions
3
Makefile
3
Makefile
|
@ -354,9 +354,10 @@ o/cosmopolitan.h: \
|
||||||
o/cosmopolitan.html: \
|
o/cosmopolitan.html: \
|
||||||
o/$(MODE)/third_party/chibicc/chibicc.com.dbg \
|
o/$(MODE)/third_party/chibicc/chibicc.com.dbg \
|
||||||
$(filter-out %.s,$(foreach x,$(COSMOPOLITAN_OBJECTS),$($(x)_SRCS)))
|
$(filter-out %.s,$(foreach x,$(COSMOPOLITAN_OBJECTS),$($(x)_SRCS)))
|
||||||
|
$(file >$@.args,$(filter-out %.s,$(foreach x,$(COSMOPOLITAN_OBJECTS),$($(x)_SRCS))))
|
||||||
o/$(MODE)/third_party/chibicc/chibicc.com.dbg -J \
|
o/$(MODE)/third_party/chibicc/chibicc.com.dbg -J \
|
||||||
-fno-common -include libc/integral/normalize.inc -o $@ \
|
-fno-common -include libc/integral/normalize.inc -o $@ \
|
||||||
$(filter-out %.s,$(foreach x,$(COSMOPOLITAN_OBJECTS),$($(x)_SRCS)))
|
@$@.args
|
||||||
|
|
||||||
$(SRCS): \
|
$(SRCS): \
|
||||||
libc/integral/normalize.inc \
|
libc/integral/normalize.inc \
|
||||||
|
|
17
third_party/chibicc/chibicc.main.c
vendored
17
third_party/chibicc/chibicc.main.c
vendored
|
@ -1,7 +1,22 @@
|
||||||
#include "libc/mem/arena.h"
|
#include "libc/mem/arena.h"
|
||||||
#include "libc/runtime/internal.h"
|
#include "libc/runtime/internal.h"
|
||||||
|
#include "libc/x/x.h"
|
||||||
#include "third_party/chibicc/chibicc.h"
|
#include "third_party/chibicc/chibicc.h"
|
||||||
|
#include "tool/build/lib/getargs.h"
|
||||||
|
|
||||||
int main(int argc, char **argv) {
|
int main(int argc, char **argv) {
|
||||||
return chibicc(argc, argv);
|
int n;
|
||||||
|
char **p;
|
||||||
|
const char *arg;
|
||||||
|
struct GetArgs ga;
|
||||||
|
n = 0;
|
||||||
|
p = xcalloc(n + 1, sizeof(*p));
|
||||||
|
getargs_init(&ga, argv);
|
||||||
|
while ((arg = getargs_next(&ga))) {
|
||||||
|
p = xrealloc(p, (++n + 1) * sizeof(*p));
|
||||||
|
p[n - 1] = xstrdup(arg);
|
||||||
|
p[n - 0] = 0;
|
||||||
|
}
|
||||||
|
getargs_destroy(&ga);
|
||||||
|
return chibicc(n, p);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue