Hi, maybe I've overlooked something in configure.in, but to me it seems that it is impossible to compile vim7 without searching /usr/local/include and /usr/local/lib.
Thing is, on solaris fex, if iconv.h is found in /usr/local/include, /usr/local/lib/libiconv.so get linked too. But the rpath for libiconv.so.3 does not get encoded into the binary, and I really don't want to set LD_LIBRARY_PATH (hmm, maybe this should be in system loader path). Additionally, I also want to be able to compile completely independent of /usr/local, with a gcc built --with-local-prefix=/another/prefix, and with libiconv and others from that prefix. So I have two new requirements for the /usr/local search: 1) Of course, I want to keep the default as is. 2) completely disable adding /usr/local/include and /usr/local/lib 3) set a different path to be used instead of /usr/local Attached is a patch for src/configure.in to accept "--with-local-prefix" flag, which solves above requirements: 1) default: do not pass any --with-local-prefix argument. 2) disable: use --without-local-prefix or even --with-local-prefix=no 3) change: use --with-local-prefix=/another/prefix Thanks, haubi -- Michael Haubenwallner SALOMON Automation GmbH Forschung & Entwicklung A-8114 Friesach bei Graz mailto:[EMAIL PROTECTED] http://www.salomon.at No HTML/MIME please, see http://expita.com/nomime.html
--- src/configure.in +++ src/configure.in @@ -186,8 +186,22 @@ dnl Add /usr/local/lib to $LDFLAGS and /usr/local/include to CFLAGS. dnl Only when the directory exists and it wasn't there yet. dnl For gcc don't do this when it is already in the default search path. +AC_MSG_CHECKING(for local prefix) +local_prefix=/usr/local have_local_include='' have_local_lib='' +AC_ARG_WITH(local-prefix, [ --with-local-prefix=/prefix build against /prefix instead of /usr/local], [ + local_prefix="$withval" + case "$withval" in + */*) ;; + no) + # avoid adding local prefix to LDFLAGS and CPPFLAGS + have_local_include=yes + have_local_lib=yes + ;; + *) AC_MSG_ERROR(must pass path argument to --with-local-prefix) ;; + esac +], [ if test "$GCC" = yes; then echo 'void f(){}' > conftest.c dnl -no-cpp-precomp is needed for OS X 10.2 (Ben Fowler) @@ -195,18 +209,20 @@ have_local_lib=`${CC-cc} -c -v conftest.c 2>&1 | grep '/usr/local/lib'` rm -f conftest.c conftest.o fi -if test -z "$have_local_lib" -a -d /usr/local/lib; then - tt=`echo "$LDFLAGS" | sed -e 's+-L/usr/local/lib ++g' -e 's+-L/usr/local/lib$++g'` +]) +if test -z "$have_local_lib" -a -d "${local_prefix}"/lib; then + tt=`echo "$LDFLAGS" | sed -e "s+-L${local_prefix}lib ++g" -e "s+-L${local_prefix}/lib$++g"` if test "$tt" = "$LDFLAGS"; then - LDFLAGS="$LDFLAGS -L/usr/local/lib" + LDFLAGS="$LDFLAGS -L${local_prefix}/lib" fi fi -if test -z "$have_local_include" -a -d /usr/local/include; then - tt=`echo "$CPPFLAGS" | sed -e 's+-I/usr/local/include ++g' -e 's+-I/usr/local/include$++g'` +if test -z "$have_local_include" -a -d "${local_prefix}"/include; then + tt=`echo "$CPPFLAGS" | sed -e "s+-I${local_prefix}/include ++g" -e "s+-I${local_prefix}/include$++g"` if test "$tt" = "$CPPFLAGS"; then - CPPFLAGS="$CPPFLAGS -I/usr/local/include" + CPPFLAGS="$CPPFLAGS -I${local_prefix}/include" fi fi +AC_MSG_RESULT($local_prefix) AC_MSG_CHECKING(--with-vim-name argument) AC_ARG_WITH(vim-name, [ --with-vim-name=NAME what to call the Vim executable],