Commit 9979eacd authored by Carl-Daniel Hailfinger's avatar Carl-Daniel Hailfinger
Browse files

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: default avatarCarl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: default avatarIdwer Vollering <vidwer@gmail.com>
parent 4e54de94
......@@ -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 <pci/pci.h>"; \
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
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment