X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=Makefile;h=041fde68aec9cfe910638b840116f720acb24af3;hb=596cc4d213c59e0795e542e1017913904d137ca9;hp=bb58e3640573f3de5b3ae21259710ac387c13a0a;hpb=e4842ff3b1ab7e061e0fb7f81fcb88d9995a63a2;p=pciutils.git diff --git a/Makefile b/Makefile index bb58e36..041fde6 100644 --- a/Makefile +++ b/Makefile @@ -1,39 +1,116 @@ -# $Id: Makefile,v 1.7 1998/03/31 21:02:12 mj Exp $ +# $Id: Makefile,v 1.43 2002/12/26 19:28:33 mj Exp $ # Makefile for Linux PCI Utilities -# (c) 1998 Martin Mares +# (c) 1998--2002 Martin Mares -ARCH=$(shell uname -m | sed -e 's/i.86/i386/' -e 's/sun4u/sparc64/' | tr 'a-z' 'A-Z') -KERN_H=$(shell if [ ! -f pci.h ] ; then echo '-DKERNEL_PCI_H' ; fi) OPT=-O2 -fomit-frame-pointer -CFLAGS=$(OPT) -Wall -W -Wno-parentheses -Wstrict-prototypes -Wno-unused -Werror -DARCH_$(ARCH) $(KERN_H) +#OPT=-O2 -g +CFLAGS=$(OPT) -Wall -W -Wno-parentheses -Wstrict-prototypes -PREFIX=/ -MANPREFIX=/usr +VERSION=2.1.11 +SUFFIX=-pre1 +DATE=2002-12-26 -all: lspci +INSTALL=install +DIRINSTALL=install -d +PCILIB=libpci.a +ifeq ($(shell uname),FreeBSD) +ROOT=/usr/local +PREFIX=/usr/local +else +ifeq ($(shell uname),NetBSD) +ROOT=$(PREFIX) +PCILIB=libpciutils.a +LDFLAGS+=-lpci +else +ifeq ($(shell uname),AIX) +ROOT=/usr/local +PREFIX=/usr/local +CFLAGS=-g +INSTALL=installbsd +DIRINSTALL=mkdir -p +else +ROOT=/ +PREFIX=/usr +endif +endif +endif +MANDIR=$(shell if [ -d $(PREFIX)/share/man ] ; then echo $(PREFIX)/share/man ; else echo $(PREFIX)/man ; fi) +DISTTMP=/tmp/pciutils-dist -#all: lspci setpci +export -lspci: lspci.o names.o filter.o +all: lib lspci setpci lspci.8 setpci.8 pci.ids -lspci.o: lspci.c pciutils.h -names.o: names.c pciutils.h -filter.o: filter.c pciutils.h +lib: lib/config.h + $(MAKE) -C lib all -setpci: setpci.o filter.o +lib/config.h: + cd lib && ./configure $(PREFIX) $(VERSION) -setpci.o: setpci.c +lspci: lspci.o common.o lib/libpci.a +setpci: setpci.o common.o lib/libpci.a + +lspci.o: lspci.c pciutils.h lib/libpci.a +setpci.o: setpci.c pciutils.h lib/libpci.a +common.o: common.c pciutils.h lib/libpci.a + +%.8: %.man + M=`echo $(DATE) | sed 's/-01-/-January-/;s/-02-/-February-/;s/-03-/-March-/;s/-04-/-April-/;s/-05-/-May-/;s/-06-/-June-/;s/-07-/-July-/;s/-08-/-August-/;s/-09-/-September-/;s/-10-/-October-/;s/-11-/-November-/;s/-12-/-December-/;s/\(.*\)-\(.*\)-\(.*\)/\3 \2 \1/'` ; sed <$< >$@ "s/@TODAY@/$$M/;s/@VERSION@/pciutils-$(VERSION)$(SUFFIX)/" clean: - rm -f `find . -name "*~" -or -name "*.[oa]" -or -name "\#*\#" -or -name TAGS -or -name core` - rm -f lspci setpci pci.h + rm -f `find . -name "*~" -o -name "*.[oa]" -o -name "\#*\#" -o -name TAGS -o -name core` + rm -f lspci setpci lib/config.* *.8 + rm -rf dist install: all - install -o root -g root -m 755 -s lspci $(PREFIX)/sbin - install -o root -g root -m 644 pci.ids $(PREFIX)/etc - install -o root -g root -m 644 lspci.8 $(MANPREFIX)/man/man8 - -dist: clean - cp /usr/src/linux/include/linux/pci.h . - sh -c 'X=`pwd` ; X=`basename $$X` ; cd .. ; tar czvvf /tmp/$$X.tar.gz $$X --exclude CVS --exclude tmp' - rm -f pci.h +# -c is ignored on Linux, but required on FreeBSD + $(DIRINSTALL) -m 755 $(ROOT)/sbin $(PREFIX)/share $(MANDIR)/man8 + $(INSTALL) -c -m 755 -s lspci setpci $(ROOT)/sbin + if [ ! -f $(PREFIX)/share/pci.ids -o pci.ids -nt $(PREFIX)/share/pci.ids ] ; then \ + $(INSTALL) -c -m 644 pci.ids $(PREFIX)/share ; \ + elif [ -f $(PREFIX)/share/pci.ids ] ; then \ + echo "$(PREFIX)/share/pci.ids is same or newer than the version to be installed, skipping." ; \ + fi + $(INSTALL) -c -m 644 lspci.8 setpci.8 $(MANDIR)/man8 +# Remove relics from old versions + rm -f $(ROOT)/etc/pci.ids + +uninstall: all + rm -f $(ROOT)/sbin/lspci $(ROOT)/sbin/setpci + rm -f $(PREFIX)/share/pci.ids + rm -f $(PREFIX)/man/man8/lspci.8 $(PREFIX)/man/man8/setpci.8 + +update-ids: + if [ ! -f pci.ids.orig ] ; then mv pci.ids pci.ids.orig ; fi + wget http://pciids.sf.net/pci.ids.bz2 + bzip2 -d pci.ids.bz2 + +get-ids: + cp ~/tree/pciids/pci.ids pci.ids + +pci.ids: + @ [ -f pci.ids ] || echo >&2 "The pci.ids file is no longer part of the CVS. Please do make update-ids to download them." && false + +release: + sed "s/^\\(Version:[ ]*\\)[0-9.]*/\\1$(VERSION)/;s/^\\(Entered-date:[ ]*\\)[0-9]*/\\1`date -d$(DATE) '+%y%m%d'`/;s/\\(pciutils-\\)[0-9.]*/\\1$(VERSION)\\./" pciutils.lsm.new + sed "s/^\\(Version:[ ]*\\)[0-9.]*/\\1$(VERSION)/" pciutils.spec.new + sed "s/\\(, version \\).*\./\\1$(VERSION)$(SUFFIX)./" README.new + mv pciutils.lsm.new pciutils.lsm + mv pciutils.spec.new pciutils.spec + mv README.new README + +REL=pciutils-$(VERSION)$(SUFFIX) + +dist: clean pci.ids + rm -rf $(DISTTMP) + mkdir $(DISTTMP) + cp -a . $(DISTTMP)/$(REL) + rm -rf `find $(DISTTMP)/$(REL) -name CVS -o -name tmp -o -name maint` + [ -f $(DISTTMP)/$(REL)/lib/header.h ] || cp /usr/src/linux/include/linux/pci.h dist/$(REL)/lib/header.h + cd $(DISTTMP) ; tar czvvf /tmp/$(REL).tar.gz $(REL) + rm -rf $(DISTTMP) + +upload: dist + maint/upload $(REL) + +.PHONY: all lib clean install uninstall dist man release upload update-ids get-ids