diff -rud tcc-0.9.24-immed2/configure tcc-0.9.24-immed3/configure --- tcc-0.9.24-immed2/configure Mon Mar 31 09:24:00 2008 +++ tcc-0.9.24-immed3/configure Fri Sep 5 18:13:24 2008 @@ -26,6 +26,7 @@ tccdir="" includedir="" mandir="" +sysroot="" cross_prefix="" cc="gcc" host_cc="gcc" @@ -102,6 +103,8 @@ ;; --mandir=*) mandir=`echo $opt | cut -d '=' -f 2` ;; + --sysroot=*) sysroot=`echo $opt | cut -d '=' -f 2` + ;; --source-path=*) source_path=`echo $opt | cut -d '=' -f 2` ;; --cross-prefix=*) cross_prefix=`echo $opt | cut -d '=' -f 2` @@ -218,6 +221,7 @@ echo "Advanced options (experts only):" echo " --source-path=PATH path of source code [$source_path]" echo " --cross-prefix=PREFIX use PREFIX for compile tools [$cross_prefix]" +echo " --sysroot=PREFIX prepend PREFIX to library/include paths []" echo " --cc=CC use C compiler CC [$cc]" echo " --make=MAKE use specified make [$make]" echo "" @@ -267,6 +271,7 @@ echo "Include directory $includedir" echo "Manual directory $mandir" echo "Doc directory $docdir" +echo "Target root prefix $sysroot" echo "Source path $source_path" echo "C compiler $cc" echo "make $make" @@ -287,6 +292,7 @@ echo "includedir=$includedir" >> config.mak echo "mandir=$mandir" >> config.mak echo "docdir=$docdir" >> config.mak +echo "#define CONFIG_SYSROOT \"$sysroot\"" >> $TMPH echo "#define CONFIG_TCCDIR \"$tccdir\"" >> $TMPH echo "MAKE=$make" >> config.mak echo "CC=$cc" >> config.mak diff -rud tcc-0.9.24-immed2/tcc.c tcc-0.9.24-immed3/tcc.c --- tcc-0.9.24-immed2/tcc.c Fri Sep 5 18:07:10 2008 +++ tcc-0.9.24-immed3/tcc.c Fri Sep 5 18:13:24 2008 @@ -113,7 +113,7 @@ /* path to find crt1.o, crti.o and crtn.o. Only needed when generating executables or dlls */ -#define CONFIG_TCC_CRT_PREFIX "/usr/lib" +#define CONFIG_TCC_CRT_PREFIX CONFIG_SYSROOT "/usr/lib" #define INCLUDE_STACK_SIZE 32 #define IFDEF_STACK_SIZE 64 @@ -10143,9 +10143,9 @@ #ifndef TCC_TARGET_PE /* default library paths */ - tcc_add_library_path(s, "/usr/local/lib"); - tcc_add_library_path(s, "/usr/lib"); - tcc_add_library_path(s, "/lib"); + tcc_add_library_path(s, CONFIG_SYSROOT "/usr/local/lib"); + tcc_add_library_path(s, CONFIG_SYSROOT "/usr/lib"); + tcc_add_library_path(s, CONFIG_SYSROOT "/lib"); #endif /* no section zero */ @@ -10426,8 +10426,8 @@ /* default include paths */ /* XXX: reverse order needed if -isystem support */ #ifndef TCC_TARGET_PE - tcc_add_sysinclude_path(s, "/usr/local/include"); - tcc_add_sysinclude_path(s, "/usr/include"); + tcc_add_sysinclude_path(s, CONFIG_SYSROOT "/usr/local/include"); + tcc_add_sysinclude_path(s, CONFIG_SYSROOT "/usr/include"); #endif snprintf(buf, sizeof(buf), "%s/include", tcc_lib_path); tcc_add_sysinclude_path(s, buf);