From e4197bc1f431fd7e555a31e6f7f1e020b4ec8f4c Mon Sep 17 00:00:00 2001 From: Li xin Date: Fri, 19 Jun 2015 16:45:54 +0900 Subject: [PATCH] Fix makedefs 1)remove RANLIB, SYSLIBS, AR and get them from env. 2)reference sysroot when searching header files 3)include sysroot path instead of absolute include path for Linux2 and Linux3 systems. 4)for non-native build, search STAGING_BASELIBDIR/LIBDIR native build, search host library path for nsl and resolv library which comes from libc Upstream-Status: Inappropriate [embedded specific] Signed-off-by: Yao Zhao --- makedefs | 27 +++++++++++---------------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/makedefs b/makedefs index a740e41..28fb128 100644 --- a/makedefs +++ b/makedefs @@ -230,9 +230,6 @@ echo "# pie=$pie" # Defaults for most sane systems -RANLIB=ranlib -SYSLIBS= -AR=ar ARFL=rv # Ugly function to make our error message more visible among the @@ -563,12 +560,12 @@ case "$SYSTEM.$RELEASE" in case "$CCARGS" in *-DNO_DB*) ;; *-DHAS_DB*) ;; - *) if [ -f /usr/include/db.h ] + *) if [ -f "$BUILD_SYSROOT"/usr/include/db.h ] then : we are all set - elif [ -f /usr/include/db/db.h ] + elif [ -f "$BUILD_SYSROOT"/usr/include/db/db.h ] then - CCARGS="$CCARGS -I/usr/include/db" + CCARGS="$CCARGS -I"$BUILD_SYSROOT"/usr/include/db" else # No, we're not going to try db1 db2 db3 etc. # On a properly installed system, Postfix builds @@ -577,12 +574,12 @@ case "$SYSTEM.$RELEASE" in echo "Install the appropriate db*-devel package first." 1>&2 exit 1 fi - SYSLIBS="-ldb" + SYSLIBS="$SYSLIBS -ldb" ;; esac for name in nsl resolv $GDBM_LIBS do - for lib in /usr/lib64 /lib64 /usr/lib /lib + for lib in $BUILD_SYSROOT_NSL_PATH do test -e $lib/lib$name.a -o -e $lib/lib$name.so && { SYSLIBS="$SYSLIBS -l$name" @@ -602,7 +599,7 @@ case "$SYSTEM.$RELEASE" in if [ `expr "X$CCARGS" : "X.*-DNO_EPOLL"` -gt 0 ] then : - elif [ ! -e /usr/include/sys/epoll.h ] + elif [ ! -e "$BUILD_SYSROOT"/usr/include/sys/epoll.h ] then echo CCARGS="$CCARGS -DNO_EPOLL" else @@ -626,8 +623,6 @@ int main(int argc, char **argv) } EOF ${CC-gcc} -o makedefs.test makedefs.test.c || exit 1 - ./makedefs.test 2>/dev/null || - CCARGS="$CCARGS -DNO_EPOLL" rm -f makedefs.test makedefs.test.[co] fi;; esac @@ -644,12 +639,12 @@ EOF case "$CCARGS" in *-DNO_DB*) ;; *-DHAS_DB*) ;; - *) if [ -f /usr/include/db.h ] + *) if [ -f "$BUILD_SYSROOT"/usr/include/db.h ] then : we are all set - elif [ -f /usr/include/db/db.h ] + elif [ -f "$BUILD_SYSROOT"/usr/include/db/db.h ] then - CCARGS="$CCARGS -I/usr/include/db" + CCARGS="$CCARGS -I"$BUILD_SYSROOT"/usr/include/db" else # On a properly installed system, Postfix builds # by including and by linking with -ldb @@ -657,12 +652,12 @@ EOF echo "Install the appropriate db*-devel package first." 1>&2 exit 1 fi - SYSLIBS="-ldb" + SYSLIBS="$SYSLIBS -ldb" ;; esac for name in nsl resolv do - for lib in /usr/lib64 /lib64 /usr/lib /usr/lib/* /lib /lib/* + for lib in $BUILD_SYSROOT_NSL_PATH do test -e $lib/lib$name.a -o -e $lib/lib$name.so && { SYSLIBS="$SYSLIBS -l$name" -- 2.25.1