aboutsummaryrefslogtreecommitdiff
path: root/tccelf.c
diff options
context:
space:
mode:
authorThomas Preud'homme <robotux@celest.fr>2014-01-03 18:17:52 +0800
committerThomas Preud'homme <robotux@celest.fr>2014-01-03 18:20:51 +0800
commit9e79b18bca641b12b6b12e5cec46202f6d6fad65 (patch)
tree35687520eaca3006f31d94ceee8637d61b87918f /tccelf.c
parente0e9a2a29562ac0f07c5d29070e1797fa48b144f (diff)
downloadtinycc-9e79b18bca641b12b6b12e5cec46202f6d6fad65.tar.gz
tinycc-9e79b18bca641b12b6b12e5cec46202f6d6fad65.tar.bz2
Use libtcc.a for static link even with USE_LIBGCC
When statically linking, runtime library should be static as well. tcc could link with libgcc.a but it's in a gcc version specific directory. Another solution, followed by this patch, is to use libtcc.a when statically linking, even if USE_LIBGCC was configured.
Diffstat (limited to 'tccelf.c')
-rw-r--r--tccelf.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/tccelf.c b/tccelf.c
index 91155e3..caa8281 100644
--- a/tccelf.c
+++ b/tccelf.c
@@ -1363,7 +1363,12 @@ ST_FUNC void tcc_add_runtime(TCCState *s1)
if (!s1->nostdlib) {
tcc_add_library(s1, "c");
#ifdef CONFIG_USE_LIBGCC
- tcc_add_file(s1, TCC_LIBGCC);
+ if (!s1->static_link)
+ tcc_add_file(s1, TCC_LIBGCC);
+#if !defined WITHOUT_LIBTCC
+ else
+ tcc_add_support(s1, "libtcc1.a");
+#endif
#elif !defined WITHOUT_LIBTCC
tcc_add_support(s1, "libtcc1.a");
#endif