X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=Makefile;h=db7ff755c75a4c912fa13befaea0d43979186ebb;hb=a662543285001bc75f60e4957b4e505af82db0b4;hp=e68454ca6b4d6ac08a4dd370fbbdd039a85281e8;hpb=cdf0f4802d20c9b32dac03875460457a7a672903;p=pciutils.git diff --git a/Makefile b/Makefile index e68454c..db7ff75 100644 --- a/Makefile +++ b/Makefile @@ -1,11 +1,11 @@ # Makefile for The PCI Utilities -# (c) 1998--2008 Martin Mares +# (c) 1998--2017 Martin Mares OPT=-O2 CFLAGS=$(OPT) -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -VERSION=3.1.0-alpha4 -DATE=2008-12-13 +VERSION=3.5.4 +DATE=2017-02-25 # Host OS and release (override if you are cross-compiling) HOST= @@ -21,7 +21,14 @@ DNS= # Build libpci as a shared library (yes/no; or local for testing; requires GCC) SHARED=no +# Use libkmod to resolve kernel modules on Linux (yes/no, default: detect) +LIBKMOD= + +# Use libudev to resolve device names using hwdb on Linux (yes/no, default: detect) +HWDB= + # ABI version suffix in the name of the shared library +# (as we use proper symbol versioning, this seldom needs changing) ABI_VERSION=.3 # Installation directories @@ -62,7 +69,7 @@ force: lib/config.h lib/config.mk: cd lib && ./configure -lspci: lspci.o ls-vpd.o ls-caps.o ls-ecaps.o ls-kernel.o ls-tree.o ls-map.o common.o lib/$(PCILIB) +lspci: lspci.o ls-vpd.o ls-caps.o ls-caps-vendor.o ls-ecaps.o ls-kernel.o ls-tree.o ls-map.o common.o lib/$(PCILIB) setpci: setpci.o common.o lib/$(PCILIB) LSPCIINC=lspci.h pciutils.h $(PCIINC) @@ -77,6 +84,9 @@ ls-map.o: ls-map.c $(LSPCIINC) setpci.o: setpci.c pciutils.h $(PCIINC) common.o: common.c pciutils.h $(PCIINC) +lspci: LDLIBS+=$(LIBKMOD_LIBS) +ls-kernel.o: CFLAGS+=$(LIBKMOD_CFLAGS) + update-pciids: update-pciids.sh sed <$< >$@ "s@^DEST=.*@DEST=$(IDSDIR)/$(PCI_IDS)@;s@^PCI_COMPRESSED_IDS=.*@PCI_COMPRESSED_IDS=$(PCI_COMPRESSED_IDS)@" chmod +x $@ @@ -107,18 +117,31 @@ install: all $(INSTALL) -c -m 644 lspci.8 setpci.8 update-pciids.8 $(DESTDIR)$(MANDIR)/man8 $(INSTALL) -c -m 644 pcilib.7 $(DESTDIR)$(MANDIR)/man7 ifeq ($(SHARED),yes) +ifeq ($(LIBEXT),dylib) + ln -sf $(PCILIB) $(DESTDIR)$(LIBDIR)/$(LIBNAME)$(ABI_VERSION).$(LIBEXT) +else + ln -sf $(PCILIB) $(DESTDIR)$(LIBDIR)/$(LIBNAME).$(LIBEXT)$(ABI_VERSION) +endif +endif + +ifeq ($(SHARED),yes) +install: install-pcilib +endif + +install-pcilib: lib/$(PCILIB) $(DIRINSTALL) -m 755 $(DESTDIR)$(LIBDIR) $(INSTALL) -c -m 644 lib/$(PCILIB) $(DESTDIR)$(LIBDIR) - ln -sf $(PCILIB) $(DESTDIR)$(LIBDIR)/$(LIBNAME).so$(ABI_VERSION) -endif -install-lib: $(PCIINC_INS) lib/$(PCILIB) lib/$(PCILIBPC) - $(DIRINSTALL) -m 755 $(DESTDIR)$(INCDIR)/pci $(DESTDIR)$(LIBDIR) $(DESTDIR)$(PKGCFDIR) +install-lib: $(PCIINC_INS) lib/$(PCILIBPC) install-pcilib + $(DIRINSTALL) -m 755 $(DESTDIR)$(INCDIR)/pci $(DESTDIR)$(PKGCFDIR) $(INSTALL) -c -m 644 $(PCIINC_INS) $(DESTDIR)$(INCDIR)/pci - $(INSTALL) -c -m 644 lib/$(PCILIB) $(DESTDIR)$(LIBDIR) $(INSTALL) -c -m 644 lib/$(PCILIBPC) $(DESTDIR)$(PKGCFDIR) ifeq ($(SHARED),yes) - ln -sf $(LIBNAME).so$(ABI_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME).so +ifeq ($(LIBEXT),dylib) + ln -sf $(LIBNAME)$(ABI_VERSION).$(LIBEXT) $(DESTDIR)$(LIBDIR)/$(LIBNAME).$(LIBEXT) +else + ln -sf $(LIBNAME).$(LIBEXT)$(ABI_VERSION) $(DESTDIR)$(LIBDIR)/$(LIBNAME).$(LIBEXT) +endif endif uninstall: all @@ -131,6 +154,6 @@ ifeq ($(SHARED),yes) endif pci.ids.gz: pci.ids - gzip -9 <$< >$@ + gzip -9n <$< >$@ .PHONY: all clean distclean install install-lib uninstall force