From 9979eacd9c3be00517f69a6631209222b8128bba Mon Sep 17 00:00:00 2001 From: Carl-Daniel Hailfinger Date: Mon, 22 Mar 2010 12:29:45 +0000 Subject: Refine compile-time checks for libpci Idwer Vollering reported problems with the current libpci check on FreeBSD 8.0-RELEASE i386. This is caused by a strict linker. Parsing linker error messages is an exercise in futility, and library detection with $CC --print-file-name is totally useless for libraries outside the standard hardcoded builtin gcc search path (probably the same for other compilers as well). Look for libpciutils instead of libpci on NetBSD during the check. Corresponding to flashrom svn r968. Signed-off-by: Carl-Daniel Hailfinger Acked-by: Idwer Vollering --- Makefile | 21 ++++++--------------- 1 file changed, 6 insertions(+), 15 deletions(-) diff --git a/Makefile b/Makefile index 1a9c0fdc..fa67b731 100644 --- a/Makefile +++ b/Makefile @@ -279,26 +279,17 @@ pciutils: compiler echo "Please install libpci headers (package pciutils-devel)."; \ echo "See README for more information."; echo; \ rm -f .test.c .test.o; exit 1) - @printf "Checking for libpci... " - @$(shell ( echo "#include "; \ - echo "int main(int argc, char **argv)"; \ - echo "{ return 0; }"; ) > .test1.c ) - @$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) .test1.c -o .test1 -lpci $(LIBS) >/dev/null 2>&1 && \ - echo "found." || ( echo "not found."; echo; \ - echo "Please install libpci (package pciutils)."; \ - echo "See README for more information."; echo; \ - rm -f .test1.c .test1; exit 1) - @printf "Checking if libpci is sufficient... " + @printf "Checking if libpci is present and sufficient... " @printf "" > .libdeps - @$(CC) $(LDFLAGS) .test.o -o .test -lpci $(LIBS) >/dev/null 2>&1 && \ + @$(CC) $(LDFLAGS) .test.o -o .test $(LIBS) >/dev/null 2>&1 && \ echo "yes." || ( echo "no."; \ - printf "Checking if libz is present and supplies all needed symbols..."; \ - $(CC) $(LDFLAGS) .test.o -o .test -lpci -lz $(LIBS) >/dev/null 2>&1 && \ + printf "Checking if libz+libpci are present and sufficient..."; \ + $(CC) $(LDFLAGS) .test.o -o .test $(LIBS) -lz >/dev/null 2>&1 && \ ( echo "yes."; echo "NEEDLIBZ := yes" > .libdeps ) || ( echo "no."; echo; \ - echo "Please install libz."; \ + echo "Please install libpci (package pciutils) and/or libz."; \ echo "See README for more information."; echo; \ rm -f .test.c .test.o .test; exit 1) ) - @rm -f .test.c .test.o .test .test1.c .test1 + @rm -f .test.c .test.o .test else pciutils: compiler @printf "" > .libdeps -- cgit v1.2.3