chiark / gitweb /
8a8c714a8768071680985dc39ea83bee992b90de
[elogind.git] / extras / scsi_id / Makefile
1 # Makefile for udev extra invoked from the udev main Makefile
2 #
3 # Copyright (C) 2003 IBM
4 # Copyright (C) 2004-2005 Kay Sievers <kay.sievers@vrfy.org>
5 #
6 # Released under the GNU General Public License, version 2.
7 #
8
9 SCSI_ID_VERSION = 0.9
10
11 PROG = scsi_id
12 OBJS= scsi_serial.o
13 HEADERS = scsi_id.h scsi.h scsi_id_version.h
14 GEN_HEADERS = scsi_id_version.h
15 MAN_PAGES = scsi_id.8
16
17 prefix =
18 exec_prefix =   ${prefix}
19 etcdir =        ${prefix}/etc
20 sbindir =       ${exec_prefix}/sbin
21 usrbindir =     ${exec_prefix}/usr/bin
22 usrsbindir =    ${exec_prefix}/usr/sbin
23 mandir =        ${prefix}/usr/share/man
24 configdir =     ${etcdir}/udev/
25 srcdir = .
26
27 INSTALL = /usr/bin/install -c
28 INSTALL_PROGRAM = ${INSTALL}
29 INSTALL_DATA  = ${INSTALL} -m 644
30 INSTALL_SCRIPT = ${INSTALL_PROGRAM}
31
32 # be able to run without udev
33 LIBSYSFS = -lsysfs
34 CROSS =
35 QUIET =
36 CC = $(CROSS)gcc
37 LD = $(CROSS)gcc
38 AR = $(CROSS)ar
39 STRIPCMD = $(CROSS)strip
40 CFLAGS += -Wall -pipe -fno-builtin -Wstrict-prototypes -Wsign-compare -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64
41 LDFLAGS += -Wl
42
43 all: $(PROG) $(MAN_PAGES)
44 .PHONY: all
45 .DEFAULT: all
46
47 %.o: %.c $(GEN_HEADERS)
48         $(QUIET) $(CC) -c $(CFLAGS) $< -o $@
49
50 $(PROG): %: $(HEADERS) %.o $(OBJS)
51         $(QUIET) $(LD) $(LDFLAGS) $@.o $(OBJS) -o $@ $(LIBUDEV) $(LIBSYSFS) $(LIB_OBJS)
52         $(QUIET) $(STRIPCMD) $@
53
54 scsi_id_version.h:
55         @echo "/* This file is auto-generated by the Makefile */" > $@
56         @echo \#define SCSI_ID_VERSION     \"$(SCSI_ID_VERSION)\" >> $@
57         @echo \#define SCSI_ID_CONFIG_FILE     \"$(etcdir)/scsi_id.config\" >> $@
58
59 # man pages
60 %.8: %.xml
61         xmlto man $?
62 .PRECIOUS: %.8
63
64 clean:
65         rm -f $(PROG) $(OBJS) $(GEN_HEADERS)
66 .PHONY: clean
67
68 install-bin: all
69         $(INSTALL_PROGRAM) $(PROG) $(DESTDIR)$(sbindir)/$(PROG)
70 .PHONY: install-bin
71
72 uninstall-bin:
73         - rm $(DESTDIR)$(sbindir)/$(PROG)
74 .PHONY: uninstall-bin
75
76 install-man:
77         $(INSTALL_DATA) -D scsi_id.8 $(DESTDIR)$(mandir)/man8/scsi_id.8
78 .PHONY: uninstall-man
79
80 uninstall-man:
81         -rm -f $(DESTDIR)$(mandir)/man8/scsi_id.8
82 .PHONY: uninstall-man
83
84 install-config:
85         @if [ ! -r $(DESTDIR)$(etcdir)/scsi_id.config ]; then \
86                 echo $(INSTALL_DATA) -D ./scsi_id.config  $(DESTDIR)$(etcdir); \
87                 $(INSTALL_DATA) -D ./scsi_id.config $(DESTDIR)$(etcdir)/scsi_id.config; \
88         fi
89 .PHONY: install-config
90
91 install: all install-bin install-config install-man
92 .PHONY: install
93
94 uninstall: uninstall-bin uninstall-man
95 .PHONY: uninstall