mirror of
https://github.com/frida/tinycc
synced 2024-12-29 16:19:40 +03:00
ulibc: #define TCC_UCLIBC and load elf_interp
This commit is contained in:
parent
bf8d8f5f3e
commit
68310299b6
@ -1,8 +1,10 @@
|
|||||||
version 0.9.25:
|
version 0.9.25:
|
||||||
|
|
||||||
- split tcc.c into tcc.h libtcc.c tccpp.c tccgen.c tcc.c
|
|
||||||
- first support for x86-64 target (Shinichiro Hamaji)
|
- first support for x86-64 target (Shinichiro Hamaji)
|
||||||
|
- support µClibc
|
||||||
|
- split tcc.c into tcc.h libtcc.c tccpp.c tccgen.c tcc.c
|
||||||
- improved preprocess output with linenumbers and spaces preserved
|
- improved preprocess output with linenumbers and spaces preserved
|
||||||
|
- tcc_relocate now copies code into user buffer
|
||||||
- fix bitfields with non-int types and in unions
|
- fix bitfields with non-int types and in unions
|
||||||
- improve ARM cross-compiling (Daniel Glöckner)
|
- improve ARM cross-compiling (Daniel Glöckner)
|
||||||
- link stabstr sections from multiple objects
|
- link stabstr sections from multiple objects
|
||||||
|
5
Makefile
5
Makefile
@ -58,6 +58,11 @@ endif
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifneq ($(wildcard /lib/ld-uClibc.so.0),)
|
||||||
|
NATIVE_TARGET+=-DTCC_UCLIBC
|
||||||
|
BCHECK_O=
|
||||||
|
endif
|
||||||
|
|
||||||
ifdef CONFIG_USE_LIBGCC
|
ifdef CONFIG_USE_LIBGCC
|
||||||
LIBTCC1=
|
LIBTCC1=
|
||||||
endif
|
endif
|
||||||
|
8
tccelf.c
8
tccelf.c
@ -1272,17 +1272,17 @@ static void tcc_add_linker_symbols(TCCState *s1)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* name of ELF interpreter */
|
/* name of ELF interpreter */
|
||||||
#ifdef __FreeBSD__
|
#if defined __FreeBSD__
|
||||||
static char elf_interp[] = "/usr/libexec/ld-elf.so.1";
|
static char elf_interp[] = "/usr/libexec/ld-elf.so.1";
|
||||||
#else
|
#elif defined TCC_ARM_EABI
|
||||||
#ifdef TCC_ARM_EABI
|
|
||||||
static char elf_interp[] = "/lib/ld-linux.so.3";
|
static char elf_interp[] = "/lib/ld-linux.so.3";
|
||||||
#elif defined(TCC_TARGET_X86_64)
|
#elif defined(TCC_TARGET_X86_64)
|
||||||
static char elf_interp[] = "/lib/ld-linux-x86-64.so.2";
|
static char elf_interp[] = "/lib/ld-linux-x86-64.so.2";
|
||||||
|
#elif defined(TCC_UCLIBC)
|
||||||
|
static char elf_interp[] = "/lib/ld-uClibc.so.0";
|
||||||
#else
|
#else
|
||||||
static char elf_interp[] = "/lib/ld-linux.so.2";
|
static char elf_interp[] = "/lib/ld-linux.so.2";
|
||||||
#endif
|
#endif
|
||||||
#endif
|
|
||||||
|
|
||||||
static void tcc_output_binary(TCCState *s1, FILE *f,
|
static void tcc_output_binary(TCCState *s1, FILE *f,
|
||||||
const int *section_order)
|
const int *section_order)
|
||||||
|
Loading…
Reference in New Issue
Block a user