From 76adc5770f4ab5b1aaa2e5dde6104efc06431fe2 Mon Sep 17 00:00:00 2001 From: Thomas Preud'homme Date: Mon, 1 Aug 2011 22:32:44 +0200 Subject: Add a --multiarch-triplet switch to configure Add a --multiarch-triplet switch to configure. The switch will allow files to be search for each default path in path/ and then path. Default paths handled that way: - CONFIG_TCC_SYSINCLUDE_PATHS - CONFIG_TCC_LIBPATH - path to crt*.o - path to libgcc_s.so.1 Path missing: elf interpreter path (will be handled in another commit) --- tccelf.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'tccelf.c') diff --git a/tccelf.c b/tccelf.c index c0f1c94..f58ae83 100644 --- a/tccelf.c +++ b/tccelf.c @@ -1238,7 +1238,10 @@ ST_FUNC void tcc_add_runtime(TCCState *s1) if (!s1->nostdlib) { #ifdef CONFIG_USE_LIBGCC tcc_add_library(s1, "c"); - tcc_add_file(s1, CONFIG_SYSROOT CONFIG_TCC_LDDIR"/libgcc_s.so.1"); +#ifdef CONFIG_TCC_MULTIARCH_TRIPLET + if (tcc_add_file_internal(s1, CONFIG_SYSROOT CONFIG_TCC_LDDIR "/" CONFIG_TCC_MULTIARCH_TRIPLET "/libgcc_s.so.1", 0)) +#endif + tcc_add_file(s1, CONFIG_SYSROOT CONFIG_TCC_LDDIR"/libgcc_s.so.1"); #else tcc_add_library(s1, "c"); #ifndef WITHOUT_LIBTCC @@ -1252,7 +1255,10 @@ ST_FUNC void tcc_add_runtime(TCCState *s1) } /* add crt end if not memory output */ if (s1->output_type != TCC_OUTPUT_MEMORY && !s1->nostdlib) { - tcc_add_file(s1, CONFIG_SYSROOT CONFIG_TCC_CRT_PREFIX "/crtn.o"); +#ifdef CONFIG_TCC_MULTIARCH_TRIPLET + if (tcc_add_file_internal(s1, CONFIG_SYSROOT CONFIG_TCC_CRT_PREFIX "/" CONFIG_TCC_MULTIARCH_TRIPLET "/crtn.o", 0)) +#endif + tcc_add_file(s1, CONFIG_SYSROOT CONFIG_TCC_CRT_PREFIX "/crtn.o"); } } -- cgit v1.3.1