Fix breakages in Linux-only build modes

- compile.com now polyfills -march=native which gcc/clang removed
- Guarantee zero Windows code is linked into non-Windows binaries
- MODE=tinylinux binaries are now back to being as tiny as ~4kb
- Improve the runtime's stack allocation / alignment hack
- GitHub Actions now tests Linux modes for assurance
This commit is contained in:
Justine Tunney 2023-07-09 19:47:46 -07:00
parent 0e4c828a8e
commit 3dc86ce154
No known key found for this signature in database
GPG key ID: BE714B4575D6E328
32 changed files with 283 additions and 104 deletions

View file

@ -41,7 +41,7 @@
#include "libc/time/time.h"
#include "tool/decode/lib/flagger.h"
#include "tool/decode/lib/idname.h"
#ifdef __x86_64__
#if defined(__x86_64__) && SupportsWindows()
char *GetString(struct NtUnicodeString *s) {
static char buf[1024];
@ -538,4 +538,9 @@ int main(int argc, char *argv[]) {
return 0;
}
#endif /* __x86_64__ */
#else
int main(int argc, char *argv[]) {
fprintf(stderr, "printpeb not supported on this cpu arch or build config\n");
return 1;
}
#endif /* __x86_64__ && SupportsWindows() */