Create ELF aliases for identical symbols

This change greatly reduces the number of modules that need to be
compiled. The only issue right now is that sometimes when viewing
symbol table entries, the aliased symbol is chosen.
This commit is contained in:
Justine Tunney 2023-06-06 03:30:37 -07:00
parent e1b83399bd
commit b8a6a989c0
No known key found for this signature in database
GPG key ID: BE714B4575D6E328
191 changed files with 414 additions and 2190 deletions

View file

@ -19,8 +19,6 @@ struct tm {
char *asctime(const struct tm *);
char *asctime_r(const struct tm *, char[hasatleast 26]);
char *iso8601(char[hasatleast 20], struct tm *);
char *iso8601us(char[hasatleast 27], struct tm *, long);
char *strptime(const char *, const char *, struct tm *);
int64_t mktime(struct tm *);
int64_t timegm(struct tm *);
@ -34,6 +32,13 @@ struct tm *gmtime_r(const int64_t *, struct tm *);
struct tm *localtime(const int64_t *);
struct tm *localtime_r(const int64_t *, struct tm *);
#ifdef COSMO
#define iso8601 __iso8601
#define iso8601us __iso8601us
char *iso8601(char[hasatleast 20], struct tm *);
char *iso8601us(char[hasatleast 27], struct tm *, long);
#endif /* COSMO */
COSMOPOLITAN_C_END_
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
#endif /* COSMOPOLITAN_LIBC_TIME_STRUCT_TM_H_ */