X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=configure.in;h=951eb32407b9cf0db7791a71d398ca934befda91;hb=118576a9da18d9f0fe6be19dc43afbbb91f20187;hp=5ab89837113cd410e8acc168da50838ce5945b29;hpb=4565de8dfc8dcbf5b4499d370cda376982b4398c;p=uclinux-h8%2Felf2flt.git diff --git a/configure.in b/configure.in index 5ab8983..951eb32 100644 --- a/configure.in +++ b/configure.in @@ -2,64 +2,101 @@ dnl Process this file with autoconf to produce a configure script. AC_INIT(elf2flt.c) AC_ARG_WITH(zlib-prefix, - [ --with-zlib-prefix= path to installed zlib ], + AS_HELP_STRING([--with-zlib-prefix=], [path to installed zlib]), [ ac_zlib_prefix=$withval ], [ ac_zlib_prefix=NONE ] ) AC_ARG_WITH(libbfd, - [ --with-libbfd= path to libbfd.a library to use ], + AS_HELP_STRING([--with-libbfd=], [path to libbfd.a library to use]), [ ac_libbfd=$withval ], [ ac_libbfd=NONE ] ) AC_ARG_WITH(libiberty, - [ --with-libiberty= path to libiberty.a library to use ], + AS_HELP_STRING([--with-libiberty=], [path to libiberty.a library to use]), [ ac_libiberty=$withval ], [ ac_libiberty=NONE ] ) AC_ARG_WITH(bfd-include-dir, - [ --with-bfd-include-dir= include path for correct bfd.h ], + AS_HELP_STRING([--with-bfd-include-dir=], [include path for correct bfd.h]), [ ac_bfd_include_dir=$withval ], [ ac_bfd_include_dir=NONE ] ) AC_ARG_WITH(binutils-include-dir, - [ --with-binutils-include-dir= include path for binutils headers ], + AS_HELP_STRING([--with-binutils-include-dir=], [include path for binutils headers]), [ ac_binutils_include_dir=$withval ], [ ac_binutils_include_dir=NONE ] ) AC_ARG_WITH(binutils-ldscript-dir, - [ --with-binutils-ldscript-dir= path to install elf2flt.ld ], + AS_HELP_STRING([--with-binutils-ldscript-dir=], [path to install elf2flt.ld]), [ ac_binutils_ldscript_dir=$withval ], [ ac_binutils_ldscript_dir=NONE ] ) AC_ARG_WITH(binutils-build-dir, - [ --with-binutils-build-dir= path to compiled binutils tree ], + AS_HELP_STRING([--with-binutils-build-dir=], [path to compiled binutils tree]), [ ac_binutils_build_dir=$withval ], [ ac_binutils_build_dir=NONE ] ) +AC_ARG_ENABLE(ld-elf2flt-binary, + AS_HELP_STRING([--disable-ld-elf2flt-binary], [use ld-elf2flt shell script]), + [ use_ld_elf2flt_binary=$enableval ], + [ use_ld_elf2flt_binary=yes ] +) + +dnl convert a yes/no variable to 1/0 for C code +var_yn_to_10() { + if eval test \"\$$1\" = yes ; then + eval $1=1 + else + eval $1=0 + fi +} + AC_ARG_ENABLE(got-check, - [ --disable-got-check - disable check for GOT (needed on H8) ], + AS_HELP_STRING([--disable-got-check], [disable check for GOT (needed on H8)]), [ got_check=$enableval ], [ got_check=yes ] ) +var_yn_to_10 got_check -AC_ARG_ENABLE(emit_relocs, - [ --disable-emit-relocs - don't use the --emit-relocs (-q) linker option ], +AC_ARG_ENABLE(emit-relocs, + AS_HELP_STRING([--disable-emit-relocs], [don't use the --emit-relocs (-q) linker option]), [ emit_relocs=$enableval ], [ emit_relocs=yes ] ) +var_yn_to_10 emit_relocs + +AC_ARG_ENABLE(emit-ctor-dtor, + AS_HELP_STRING([--enable-emit-ctor-dtor], [manually create ctor/dtor list]), + [ emit_ctor_dtor=$enableval ], + [ emit_ctor_dtor=no ] +) +var_yn_to_10 emit_ctor_dtor + +AC_ARG_ENABLE(always-reloc-text, + AS_HELP_STRING([--enable-always-reloc-text], [always process text relocs ignoring pic/got (needed on Blackfin)]), + [ always_reloc_text=$enableval ], + [ + case $target in + bfin*) always_reloc_text=yes;; + *) always_reloc_text=no;; + esac + ] +) +var_yn_to_10 always_reloc_text AC_CANONICAL_HOST AC_CANONICAL_TARGET dnl Checks for programs. AC_PROG_CC +AC_USE_SYSTEM_EXTENSIONS AC_PROG_INSTALL if test "$ac_binutils_build_dir" != "NONE"; then @@ -135,6 +172,13 @@ Run configure again specifying these options: ]) fi +SYMBOL_PREFIX= +case $target in + h8300|bfin*) + SYMBOL_PREFIX=_ + ;; +esac + dnl Make sure we resolve system symbols before libiberty/libbfd ones. dnl Otherwise, things like getopt get screwed up because the system headers dnl redirect some functions to the system symbols, but other local symbols @@ -152,7 +196,14 @@ AC_C_CONST dnl Checks for library functions. AC_FUNC_VPRINTF -AC_CHECK_FUNCS(dcgettext libintl_dgettext) +AC_CHECK_FUNCS([ \ + dcgettext \ + getline \ + libintl_dgettext \ + strsignal \ +]) + +test "$GCC" = yes && CFLAGS="-Wall $CFLAGS" dnl Subsitute values AC_SUBST(target) @@ -164,8 +215,12 @@ AC_SUBST(bfd_include_dir) AC_SUBST(binutils_include_dir) AC_SUBST(zlib_include_dir) AC_SUBST(binutils_ldscript_dir) +AC_SUBST(use_ld_elf2flt_binary) AC_SUBST(got_check) AC_SUBST(emit_relocs) +AC_SUBST(emit_ctor_dtor) +AC_SUBST(always_reloc_text) +AC_SUBST(SYMBOL_PREFIX) -AC_OUTPUT(Makefile ld-elf2flt) +AC_OUTPUT(ld-elf2flt.sh:ld-elf2flt.in Makefile elf2flt.ld)