Unified · Split
| @@ -1703,12 +1703,14 @@ enum { · 1702 unmodified lines | |||
| 1703 | TCC_OPTION_o, | 1703 | TCC_OPTION_o, |
| 1704 | TCC_OPTION_r, | 1704 | TCC_OPTION_r, |
| 1705 | TCC_OPTION_s, | 1705 | TCC_OPTION_s, |
| 1706 | TCC_OPTION_traditional, | ||
| 1706 | TCC_OPTION_Wl, | 1707 | TCC_OPTION_Wl, |
| 1707 | TCC_OPTION_W, | 1708 | TCC_OPTION_W, |
| 1708 | TCC_OPTION_O, | 1709 | TCC_OPTION_O, |
| 1709 | TCC_OPTION_m, | 1710 | TCC_OPTION_m, |
| 1710 | TCC_OPTION_f, | 1711 | TCC_OPTION_f, |
| 1711 | TCC_OPTION_isystem, | 1712 | TCC_OPTION_isystem, |
| 1713 | TCC_OPTION_iwithprefix, | ||
| 1712 | TCC_OPTION_nostdinc, | 1714 | TCC_OPTION_nostdinc, |
| 1713 | TCC_OPTION_nostdlib, | 1715 | TCC_OPTION_nostdlib, |
| 1714 | TCC_OPTION_print_search_dirs, | 1716 | TCC_OPTION_print_search_dirs, |
| @@ -1764,12 +1766,14 @@ static const TCCOption tcc_options[] = { · 49 unmodified lines | |||
| 1764 | { "rdynamic", TCC_OPTION_rdynamic, 0 }, | 1766 | { "rdynamic", TCC_OPTION_rdynamic, 0 }, |
| 1765 | { "r", TCC_OPTION_r, 0 }, | 1767 | { "r", TCC_OPTION_r, 0 }, |
| 1766 | { "s", TCC_OPTION_s, 0 }, | 1768 | { "s", TCC_OPTION_s, 0 }, |
| 1769 | { "traditional", TCC_OPTION_traditional, 0 }, | ||
| 1767 | { "Wl,", TCC_OPTION_Wl, TCC_OPTION_HAS_ARG | TCC_OPTION_NOSEP }, | 1770 | { "Wl,", TCC_OPTION_Wl, TCC_OPTION_HAS_ARG | TCC_OPTION_NOSEP }, |
| 1768 | { "W", TCC_OPTION_W, TCC_OPTION_HAS_ARG | TCC_OPTION_NOSEP }, | 1771 | { "W", TCC_OPTION_W, TCC_OPTION_HAS_ARG | TCC_OPTION_NOSEP }, |
| 1769 | { "O", TCC_OPTION_O, TCC_OPTION_HAS_ARG | TCC_OPTION_NOSEP }, | 1772 | { "O", TCC_OPTION_O, TCC_OPTION_HAS_ARG | TCC_OPTION_NOSEP }, |
| 1770 | { "m", TCC_OPTION_m, TCC_OPTION_HAS_ARG }, | 1773 | { "m", TCC_OPTION_m, TCC_OPTION_HAS_ARG }, |
| 1771 | { "f", TCC_OPTION_f, TCC_OPTION_HAS_ARG | TCC_OPTION_NOSEP }, | 1774 | { "f", TCC_OPTION_f, TCC_OPTION_HAS_ARG | TCC_OPTION_NOSEP }, |
| 1772 | { "isystem", TCC_OPTION_isystem, TCC_OPTION_HAS_ARG }, | 1775 | { "isystem", TCC_OPTION_isystem, TCC_OPTION_HAS_ARG }, |
| 1776 | { "iwithprefix", TCC_OPTION_iwithprefix, TCC_OPTION_HAS_ARG }, | ||
| 1773 | { "nostdinc", TCC_OPTION_nostdinc, 0 }, | 1777 | { "nostdinc", TCC_OPTION_nostdinc, 0 }, |
| 1774 | { "nostdlib", TCC_OPTION_nostdlib, 0 }, | 1778 | { "nostdlib", TCC_OPTION_nostdlib, 0 }, |
| 1775 | { "print-search-dirs", TCC_OPTION_print_search_dirs, 0 }, | 1779 | { "print-search-dirs", TCC_OPTION_print_search_dirs, 0 }, |
| @@ -1971,6 +1975,27 @@ PUB_FUNC int tcc_parse_args(TCCState *s, int argc, char **argv) · 195 unmodified lines | |||
| 1971 | case TCC_OPTION_isystem: | 1975 | case TCC_OPTION_isystem: |
| 1972 | tcc_add_sysinclude_path(s, optarg); | 1976 | tcc_add_sysinclude_path(s, optarg); |
| 1973 | break; | 1977 | break; |
| 1978 | case TCC_OPTION_iwithprefix: | ||
| 1979 | if (1) { | ||
| 1980 | char buf[1024]; | ||
| 1981 | int buf_size = sizeof(buf)-1; | ||
| 1982 | char *p = &buf[0]; | ||
| 1983 | |||
| 1984 | char *sysroot = "{B}/"; | ||
| 1985 | int len = strlen(sysroot); | ||
| 1986 | if (len > buf_size) | ||
| 1987 | len = buf_size; | ||
| 1988 | strncpy(p, sysroot, len); | ||
| 1989 | p += len; | ||
| 1990 | buf_size -= len; | ||
| 1991 | |||
| 1992 | len = strlen(optarg); | ||
| 1993 | if (len > buf_size) | ||
| 1994 | len = buf_size; | ||
| 1995 | strncpy(p, optarg, len+1); | ||
| 1996 | tcc_add_sysinclude_path(s, buf); | ||
| 1997 | } | ||
| 1998 | break; | ||
| 1974 | case TCC_OPTION_nostdinc: | 1999 | case TCC_OPTION_nostdinc: |
| 1975 | s->nostdinc = 1; | 2000 | s->nostdinc = 1; |
| 1976 | break; | 2001 | break; |
| @@ -2031,6 +2056,8 @@ PUB_FUNC int tcc_parse_args(TCCState *s, int argc, char **argv) · 54 unmodified lines | |||
| 2031 | case TCC_OPTION_s: | 2056 | case TCC_OPTION_s: |
| 2032 | s->do_strip = 1; | 2057 | s->do_strip = 1; |
| 2033 | break; | 2058 | break; |
| 2059 | case TCC_OPTION_traditional: | ||
| 2060 | break; | ||
| 2034 | case TCC_OPTION_x: | 2061 | case TCC_OPTION_x: |
| 2035 | if (*optarg == 'c') | 2062 | if (*optarg == 'c') |
| 2036 | filetype = TCC_FILETYPE_C; | 2063 | filetype = TCC_FILETYPE_C; |