summaryrefslogtreecommitdiffstats
path: root/Makefile
blob: ac7d295a46b8718f673968471eb2e55b1089fc4f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
project = ldetect
prefix = /usr
bindir = $(prefix)/bin
libdir = $(prefix)/lib
includedir = $(prefix)/include

binaries = lspcidrake
libraries = libldetect.a
CFLAGS = -Wall -W -Os -Wstrict-prototypes -g

build: $(binaries) $(libraries)

lspcidrake: lspcidrake.c libldetect.a

libldetect.a: pciusb.o pci.o usb.o pciclass.o usbclass.o
	ar rsc $@ $^

pciclass.c: /usr/include/linux/pci.h /usr/include/linux/pci_ids.h
	rm -f $@
	perl generate_pciclass.pl $^ > $@
	chmod a-w $@

usbclass.c: /usr/share/usb.ids
	rm -f $@
	perl generate_usbclass.pl $^ > $@
	chmod a-w $@

pciusb.o:	pciusb.c libldetect.h libldetect-private.h common.h
pci.o:	pci.c libldetect.h libldetect-private.h common.h
usb.o:	usb.c libldetect.h libldetect-private.h common.h

clean:
	rm -f *~ *.o pciclass.c usbclass.c $(binaries) $(libraries)

install: build
	install -d $(bindir) $(libdir) $(includedir)
	install $(binaries) $(bindir)
	install $(libraries) $(libdir)
	install libldetect.h $(includedir)

rpm: clean $(RPM)
	(echo "# !! DON'T MODIFY HERE, MODIFY IN THE CVS !!" ; \
         cat $(project).spec \
        ) > $(RPM)/SPECS/$(project).spec

	(cd .. ; tar cfj $(RPM)/SOURCES/$(project).tar.bz2 $(project))
	rpm -ba --clean --rmsource --rmspec $(RPM)/SPECS/$(project).spec