From 605c791cb2ee591080cd8cf50472fb04d5a55946 Mon Sep 17 00:00:00 2001 From: oharboe Date: Tue, 21 Apr 2009 09:05:02 +0000 Subject: [PATCH] Zach Welch improve Linux ftd2xx configure-time support git-svn-id: svn://svn.berlios.de/openocd/trunk@1490 b42882b7-edfa-0310-969c-e2dbd0fdcd60 --- configure.in | 50 ++++++++++++++++++++++++-------------------------- 1 file changed, 24 insertions(+), 26 deletions(-) diff --git a/configure.in b/configure.in index 039f7e0ba7..458bb0c6ea 100644 --- a/configure.in +++ b/configure.in @@ -522,7 +522,6 @@ then fi if test $build_ft2232_ftd2xx = yes ; then - AC_MSG_CHECKING([for libftd2xx.a (linux)]) # Must be linux - # Cause FTDICHIP does not supply a MAC-OS version if test $host_os != linux-gnu && test $host_os != linux ; then @@ -531,30 +530,26 @@ if test $build_ft2232_ftd2xx = yes ; then # Are we given a TAR directory? if test "${with_ftd2xx_linux_tardir+set}" = set then + AC_MSG_CHECKING([uninstalled ftd2xx distribution]) # The .H file is simple.. - f=$with_ftd2xx_linux_tardir/ftd2xx.h - if test ! -f $f ; then - AC_MSG_ERROR([Option: --with-ftd2xx-linux-tardir appears wrong, cannot find: $f]) + FTD2XX_H=$with_ftd2xx_linux_tardir/ftd2xx.h + if test ! -f "${FTD2XX_H}"; then + AC_MSG_ERROR([Option: --with-ftd2xx-linux-tardir appears wrong, cannot find: ${FTD2XX_H}]) fi CFLAGS="$CFLAGS -I$with_ftd2xx_linux_tardir" - if test $with_ftd2xx_lib = shared - then - LDFLAGS="$LDFLAGS -L$with_ftd2xx_linux_tardir" - LIBS="$LIBS -lftd2xx" - AC_MSG_RESULT([ Assuming: -L$with_ftd2xx_linux_tardir -lftd2xx]) - else + FTD2XX_LDFLAGS="-L$with_ftd2xx_linux_tardir" + FTD2XX_LIB="-lftd2xx" + if test $with_ftd2xx_lib != shared; then # Test #1 - Future proof - if/when ftdichip fixes their distro. # Try it with the simple ".a" suffix. - f=$with_ftd2xx_linux_tardir/static_lib/libftd2xx.a - if test -f $f ; then - # Yea we are done - LDFLAGS="$LDFLAGS -L$with_ftd2xx_linux_tardir/static_lib" - LIBS="$LIBS -lftd2xx" + FTD2XX_LIB="$with_ftd2xx_linux_tardir/static_lib/libftd2xx.a" + if test -f "${FTD2XX_LIB}"; then + FTD2XX_LDFLAGS="${FTD2XX_LDFLAGS}/static_lib" else # Test Number2. # Grr.. perhaps it exists as a version number? - f="$with_ftd2xx_linux_tardir/static_lib/libftd2xx.a.*.*.*" - count=`ls $f | wc -l` + FTD2XX_LIB="$with_ftd2xx_linux_tardir/static_lib/libftd2xx.a.*.*.*" + count=`ls ${FTD2XX_LIB} | wc -l` if test $count -gt 1 ; then AC_MSG_ERROR([Multiple libftd2xx.a files found in: $with_ftd2xx_linux_tardir/static_lib sorry cannot handle this yet]) fi @@ -563,17 +558,20 @@ if test $build_ft2232_ftd2xx = yes ; then fi # Because the "-l" rules do not understand version numbers... # we will just stuff the absolute path onto the LIBS variable - f=`ls $f` - # - LIBS="$LIBS $f -lpthread" - # No need to bother with LDFLAGS... + FTD2XX_LIB="`ls ${FTD2XX_LIB}` -lpthread" + FTD2XX_LDFLAGS="" fi - AC_MSG_RESULT([Found: $f]) fi + LDFLAGS="${LDFLAGS} ${FTD2XX_LDFLAGS}" + LIBS="${LIBS} ${FTD2XX_LIB}" + AC_MSG_RESULT([${FTD2XX_LDFLAGS} ${FTD2XX_LIB}]) else - LIBS="$LIBS -lftd2xx" - AC_MSG_RESULT([Assumed: installed]) - AC_MSG_WARN([The (linux) FTDICHIP.COM files ftd2xx.h and libftd2xx.so are assumed to be in a proper place]) + AC_CHECK_HEADER([ftd2xx.h],[],[ + AC_MSG_ERROR([You seem to be missing the FTD2xx driver header file.]) + ]) + AC_SEARCH_LIBS([FT_GetLibraryVersion],[ftd2xx],,[ + AC_MSG_ERROR([You appear to be missing the FTD2xx driver library.]) + ],[]) fi fi fi @@ -583,7 +581,7 @@ if test $build_ft2232_ftd2xx = yes; then # Before we go any further - make sure we can *BUILD* and *RUN* # a simple app with the "ftd2xx.lib" file - in what ever form we where given # We should be able to compile, link and run this test program now - AC_MSG_CHECKING([Test: Build & Link with ftd2xx]) + AC_MSG_CHECKING([whether ftd2xx library works]) # # Save the LDFLAGS for later.. -- 2.30.2