mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-02-07 23:13:34 +00:00
a092fda388
This change figures out some of the build configuration issues we've been having with libcxx. The c++ span header is added. Per a Discord discussion we're now turning off `-g` for the default build mode, so consider using `make MODE=dbg` or `make MODE=zero` for GDB debugging which works much better than `MODE=` ever has. Note that the default build mode has always had very good function call / system call logs plus you can still use ShowCrashReports() for backtrace. Making this change ensures cosmocc will better conform to FOSS norms. Lastly the LoadZipArgs() API has been added to cosmopolitan.a and <cosmo.h>.
69 lines
1.7 KiB
C
69 lines
1.7 KiB
C
#ifndef _COSMO_H
|
|
#define _COSMO_H
|
|
|
|
#ifdef COSMO
|
|
#define COSMO_ALREADY_DEFINED
|
|
#else
|
|
#define COSMO
|
|
#endif
|
|
|
|
/**
|
|
* @fileoverview Curated Cosmopolitan non-POSIX C Libraries
|
|
*
|
|
* Users of the `cosmocc` toolchain can say, for example:
|
|
*
|
|
#include "tool/args/args.h"
|
|
* #include <cosmo.h>
|
|
*
|
|
* int main(int argc, char *argv[]) {
|
|
* ShowCrashReports();
|
|
* kprintf("hello world\n");
|
|
* }
|
|
*
|
|
* Which will define the best stuff from Cosmopolitan Libc, which
|
|
* includes core runtime services, third party libraries we've curated,
|
|
* as well as internal libraries we made that are good enough to share.
|
|
*
|
|
* @see tool/script/cosmocc
|
|
*/
|
|
|
|
#include "libc/calls/calls.h"
|
|
#include "libc/calls/struct/timespec.h"
|
|
#include "libc/calls/struct/timeval.h"
|
|
#include "libc/dce.h"
|
|
#include "libc/elf/elf.h"
|
|
#include "libc/fmt/itoa.h"
|
|
#include "libc/fmt/leb128.h"
|
|
#include "libc/intrin/bsf.h"
|
|
#include "libc/intrin/bsr.h"
|
|
#include "libc/intrin/dll.h"
|
|
#include "libc/intrin/kprintf.h"
|
|
#include "libc/intrin/likely.h"
|
|
#include "libc/intrin/weaken.h"
|
|
#include "libc/mem/critbit0.h"
|
|
#include "libc/mem/gc.h"
|
|
#include "libc/mem/hook.internal.h"
|
|
#include "libc/nexgen32e/rdtsc.h"
|
|
#include "libc/nexgen32e/stackframe.h"
|
|
#include "libc/nexgen32e/x86feature.h"
|
|
#include "libc/runtime/morph.h"
|
|
#include "libc/runtime/runtime.h"
|
|
#include "libc/runtime/stack.h"
|
|
#include "libc/runtime/symbols.internal.h"
|
|
#include "libc/stdio/append.h"
|
|
#include "libc/stdio/rand.h"
|
|
#include "libc/str/blake2.h"
|
|
#include "libc/str/highwayhash64.h"
|
|
#include "libc/str/slice.h"
|
|
#include "libc/str/thompike.h"
|
|
#include "libc/str/unicode.h"
|
|
#include "libc/str/utf16.h"
|
|
#include "libc/sysv/errfuns.h"
|
|
|
|
#ifdef COSMO_ALREADY_DEFINED
|
|
#undef COSMO_ALREADY_DEFINED
|
|
#else
|
|
#undef COSMO
|
|
#endif
|
|
|
|
#endif /* _COSMO_H */
|