aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Preud'homme <robotux@celest.fr>2013-09-07 19:26:36 +0200
committerThomas Preud'homme <robotux@celest.fr>2013-09-07 19:28:06 +0200
commit9382d6f1a0e2d0104a82ed805207d9e742c6b068 (patch)
tree180aad19cd1d596e57e9bd2b1b0a052ae50e9ab5
parent73faaea227a53e365dd75f1dba7a5071c7b5e541 (diff)
downloadtinycc-9382d6f1a0e2d0104a82ed805207d9e742c6b068.tar.gz
tinycc-9382d6f1a0e2d0104a82ed805207d9e742c6b068.tar.bz2
Fix lib, include, crt and libgcc search paths
-rwxr-xr-xconfigure2
-rw-r--r--tcc.h21
2 files changed, 12 insertions, 11 deletions
diff --git a/configure b/configure
index b513cc1..d654fd9 100755
--- a/configure
+++ b/configure
@@ -304,7 +304,7 @@ if test -z "$cross_prefix" ; then
if test "$mingw32" = "no" ; then
triplet="$($CONFTEST triplet)"
if test -f "/usr/lib/$triplet/crti.o" ; then
- tcc_lddir="lib/$triplet"
+ tcc_lddir="lib"
multiarch_triplet="$triplet"
elif test -f "/usr/lib64/crti.o" ; then
tcc_lddir="lib64"
diff --git a/tcc.h b/tcc.h
index c988e4f..98f28db 100644
--- a/tcc.h
+++ b/tcc.h
@@ -168,10 +168,13 @@
#ifndef CONFIG_LDDIR
# define CONFIG_LDDIR "lib"
#endif
+#ifndef CONFIG_MULTIARCHDIR
+#define CONFIG_MULTIARCHDIR
+#endif
/* path to find crt1.o, crti.o and crtn.o */
#ifndef CONFIG_TCC_CRTPREFIX
-# define CONFIG_TCC_CRTPREFIX CONFIG_SYSROOT "/usr/" CONFIG_LDDIR
+# define CONFIG_TCC_CRTPREFIX CONFIG_SYSROOT "/usr/" CONFIG_LDDIR "/" CONFIG_MULTIARCHDIR
#endif
/* Below: {B} is substituted by CONFIG_TCCDIR (rsp. -B option) */
@@ -180,16 +183,11 @@
#ifndef CONFIG_TCC_SYSINCLUDEPATHS
# ifdef TCC_TARGET_PE
# define CONFIG_TCC_SYSINCLUDEPATHS "{B}/include;{B}/include/winapi"
-# elif defined CONFIG_MULTIARCHDIR
+# else
# define CONFIG_TCC_SYSINCLUDEPATHS \
- CONFIG_SYSROOT "/usr/local/include" \
":" CONFIG_SYSROOT "/usr/local/include/" CONFIG_MULTIARCHDIR \
- ":" CONFIG_SYSROOT "/usr/include" \
+ ":" CONFIG_SYSROOT "/usr/local/include" \
":" CONFIG_SYSROOT "/usr/include/" CONFIG_MULTIARCHDIR \
- ":" "{B}/include"
-# else
-# define CONFIG_TCC_SYSINCLUDEPATHS \
- CONFIG_SYSROOT "/usr/local/include" \
":" CONFIG_SYSROOT "/usr/include" \
":" "{B}/include"
# endif
@@ -201,8 +199,11 @@
# define CONFIG_TCC_LIBPATHS "{B}/lib;{B}"
# else
# define CONFIG_TCC_LIBPATHS \
- CONFIG_SYSROOT "/usr/" CONFIG_LDDIR \
+ CONFIG_SYSROOT "/usr/" CONFIG_LDDIR "/" CONFIG_MULTIARCHDIR \
+ ":" CONFIG_SYSROOT "/usr/" CONFIG_LDDIR \
+ ":" CONFIG_SYSROOT "/" CONFIG_LDDIR "/" CONFIG_MULTIARCHDIR \
":" CONFIG_SYSROOT "/" CONFIG_LDDIR \
+ ":" CONFIG_SYSROOT "/usr/local/" CONFIG_LDDIR "/" CONFIG_MULTIARCHDIR \
":" CONFIG_SYSROOT "/usr/local/" CONFIG_LDDIR
# endif
#endif
@@ -235,7 +236,7 @@
#endif
/* library to use with CONFIG_USE_LIBGCC instead of libtcc1.a */
-#define TCC_LIBGCC CONFIG_SYSROOT "/" CONFIG_LDDIR "/libgcc_s.so.1"
+#define TCC_LIBGCC CONFIG_SYSROOT "/" CONFIG_LDDIR "/" CONFIG_MULTIARCHDIR "/libgcc_s.so.1"
/* -------------------------------------------- */
/* include the target specific definitions */