xref: /pciutils/Makefile (revision a2ea548f)
1*a2ea548fSMartin Mares# $Id: Makefile,v 1.38 2001/11/04 15:33:07 mj Exp $
298e39e09SMartin Mares# Makefile for Linux PCI Utilities
3783ed67dSMartin Mares# (c) 1998--2000 Martin Mares <[email protected]>
498e39e09SMartin Mares
5f17b962bSMartin MaresOPT=-O2 -fomit-frame-pointer
6727ce158SMartin Mares#OPT=-O2 -g
7727ce158SMartin MaresCFLAGS=$(OPT) -Wall -W -Wno-parentheses -Wstrict-prototypes -Werror
8727ce158SMartin Mares
9783ed67dSMartin MaresVERSION=2.1.9
104a219d5fSMartin Mares#SUFFIX=-pre2
1155c815b5SMartin Mares#SUFFIX=-alpha
12783ed67dSMartin MaresDATE=2001-11-04
13168b4f46SMartin Mares
1414d6c0a3SMartin MaresINSTALL=install
1514d6c0a3SMartin MaresDIRINSTALL=install -d
16168b4f46SMartin Maresifeq ($(shell uname),FreeBSD)
17168b4f46SMartin MaresROOT=/usr/local
18168b4f46SMartin MaresPREFIX=/usr/local
19168b4f46SMartin Mareselse
2014d6c0a3SMartin Maresifeq ($(shell uname),AIX)
2114d6c0a3SMartin MaresROOT=/usr/local
2214d6c0a3SMartin MaresPREFIX=/usr/local
2314d6c0a3SMartin MaresCFLAGS=-g
2414d6c0a3SMartin MaresINSTALL=installbsd
2514d6c0a3SMartin MaresDIRINSTALL=mkdir -p
2614d6c0a3SMartin Mareselse
27168b4f46SMartin MaresROOT=/
28168b4f46SMartin MaresPREFIX=/usr
29168b4f46SMartin Maresendif
3014d6c0a3SMartin Maresendif
31f8141ae2SMartin MaresMANDIR=$(shell if [ -d $(PREFIX)/share/man ] ; then echo $(PREFIX)/share/man ; else echo $(PREFIX)/man ; fi)
32*a2ea548fSMartin MaresDISTTMP=/tmp/pciutils-dist
33f6c86928SMartin Mares
34727ce158SMartin Maresexport
35e4842ff3SMartin Mares
36727ce158SMartin Maresall: lib lspci setpci lspci.8 setpci.8
3798e39e09SMartin Mares
38727ce158SMartin Mareslib: lib/config.h
39727ce158SMartin Mares	$(MAKE) -C lib all
40727ce158SMartin Mares
41727ce158SMartin Mareslib/config.h:
42727ce158SMartin Mares	cd lib && ./configure $(PREFIX) $(VERSION)
43727ce158SMartin Mares
44727ce158SMartin Mareslspci: lspci.o common.o lib/libpci.a
45727ce158SMartin Maressetpci: setpci.o common.o lib/libpci.a
46727ce158SMartin Mares
47727ce158SMartin Mareslspci.o: lspci.c pciutils.h lib/libpci.a
48727ce158SMartin Maressetpci.o: setpci.c pciutils.h lib/libpci.a
49727ce158SMartin Marescommon.o: common.c pciutils.h lib/libpci.a
50727ce158SMartin Mares
51727ce158SMartin Mares%.8: %.man
52168b4f46SMartin Mares	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)/"
5398e39e09SMartin Mares
5498e39e09SMartin Maresclean:
5514d6c0a3SMartin Mares	rm -f `find . -name "*~" -o -name "*.[oa]" -o -name "\#*\#" -o -name TAGS -o -name core`
56d6b297d0SMartin Mares	rm -f lspci setpci lib/config.* *.8
57f6c86928SMartin Mares	rm -rf dist
58f17b962bSMartin Mares
59f17b962bSMartin Maresinstall: all
60168b4f46SMartin Mares	# -c is ignored on Linux, but required on FreeBSD
6114d6c0a3SMartin Mares	$(DIRINSTALL) -m 755 $(ROOT)/sbin $(PREFIX)/share $(MANDIR)/man8
6214d6c0a3SMartin Mares	$(INSTALL) -c -m 755 -s lspci setpci $(ROOT)/sbin
6314d6c0a3SMartin Mares	$(INSTALL) -c -m 644 pci.ids $(PREFIX)/share
6414d6c0a3SMartin Mares	$(INSTALL) -c -m 644 lspci.8 setpci.8 $(MANDIR)/man8
65d38471fdSMartin Mares	# Remove relics from old versions
66d38471fdSMartin Mares	rm -f $(ROOT)/etc/pci.ids
67f17b962bSMartin Mares
6882ce97c9SMartin Maresuninstall: all
6982ce97c9SMartin Mares	rm -f $(ROOT)/sbin/lspci $(ROOT)/sbin/setpci
7065b4327eSMartin Mares	rm -f $(PREFIX)/share/pci.ids
7182ce97c9SMartin Mares	rm -f $(PREFIX)/man/man8/lspci.8 $(PREFIX)/man/man8/setpci.8
7282ce97c9SMartin Mares
73f6c86928SMartin Maresrelease:
74f6c86928SMartin Mares	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 >pciutils.lsm.new
75f6c86928SMartin Mares	sed "s/^\\(Version:[ 	]*\\)[0-9.]*/\\1$(VERSION)/" <pciutils.spec >pciutils.spec.new
76f6c86928SMartin Mares	sed "s/\\(, version \\).*\./\\1$(VERSION)$(SUFFIX)./" <README >README.new
77f6c86928SMartin Mares	mv pciutils.lsm.new pciutils.lsm
78f6c86928SMartin Mares	mv pciutils.spec.new pciutils.spec
79f6c86928SMartin Mares	mv README.new README
80727ce158SMartin Mares
814a219d5fSMartin MaresREL=pciutils-$(VERSION)$(SUFFIX)
82f6c86928SMartin Mares
83f6c86928SMartin Maresdist: clean
84*a2ea548fSMartin Mares	rm -rf $(DISTTMP)
85*a2ea548fSMartin Mares	mkdir $(DISTTMP)
86*a2ea548fSMartin Mares	cp -a . $(DISTTMP)/$(REL)
87*a2ea548fSMartin Mares	rm -rf `find $(DISTTMP)/$(REL) -name CVS -o -name tmp`
88*a2ea548fSMartin Mares	[ -f $(DISTTMP)/$(REL)/lib/header.h ] || cp /usr/src/linux/include/linux/pci.h dist/$(REL)/lib/header.h
89*a2ea548fSMartin Mares	cd $(DISTTMP) ; tar czvvf /tmp/$(REL).tar.gz $(REL)
90*a2ea548fSMartin Mares	rm -rf $(DISTTMP)
91f6c86928SMartin Mares
9241e6513dSMartin Maresupload: dist
9341e6513dSMartin Mares	tmp/upload $(REL)
9441e6513dSMartin Mares
95f6c86928SMartin Mares.PHONY: all lib clean install dist man release
96