summaryrefslogtreecommitdiff
path: root/extras/scsi_id/Makefile
blob: 399de76911370ebc0c2f85b084358ff687fff56f (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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# Makefile for udev extra invoked from the udev main Makefile
#
# Copyright (C) 2003 IBM
# Copyright (C) 2004-2005 Kay Sievers <kay.sievers@vrfy.org>
#
# Released under the GNU General Public License, version 2.
#

SCSI_ID_VERSION = 0.9

PROG = scsi_id
OBJS= scsi_serial.o
HEADERS = scsi_id.h scsi.h scsi_id_version.h
GEN_HEADERS = scsi_id_version.h
MAN_PAGES = scsi_id.8

prefix =
etcdir =	${prefix}/etc
sbindir =	${prefix}/sbin
usrbindir =	${prefix}/usr/bin
usrsbindir =	${prefix}/usr/sbin
libudevdir =	${prefix}/lib/udev
mandir =	${prefix}/usr/share/man
configdir =	${etcdir}/udev/

INSTALL = /usr/bin/install -c
INSTALL_PROGRAM = ${INSTALL}
INSTALL_DATA  = ${INSTALL} -m 644
INSTALL_SCRIPT = ${INSTALL_PROGRAM}

# be able to run without udev
LIBSYSFS = -lsysfs
CROSS =
QUIET =
CC = $(CROSS)gcc
LD = $(CROSS)gcc
AR = $(CROSS)ar
STRIPCMD = $(CROSS)strip
CFLAGS += -Wall -pipe -fno-builtin -Wstrict-prototypes -Wsign-compare -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64
LDFLAGS += -Wl

all: $(PROG) $(MAN_PAGES)
.PHONY: all
.DEFAULT: all

%.o: %.c $(GEN_HEADERS)
	$(QUIET) $(CC) -c $(CFLAGS) $< -o $@

$(PROG): %: $(HEADERS) %.o $(OBJS)
	$(QUIET) $(LD) $(LDFLAGS) $@.o $(OBJS) -o $@ $(LIBUDEV) $(LIBSYSFS) $(LIB_OBJS)
ifneq ($(strip $(STRIPCMD)),)
	$(QUIET) $(STRIPCMD) $@
endif

scsi_id_version.h:
	@echo "/* This file is auto-generated by the Makefile */" > $@
	@echo \#define SCSI_ID_VERSION     \"$(SCSI_ID_VERSION)\" >> $@
	@echo \#define SCSI_ID_CONFIG_FILE     \"$(etcdir)/scsi_id.config\" >> $@

# man pages
%.8: %.xml
	xmlto man $?
.PRECIOUS: %.8

clean:
	rm -f $(PROG) $(OBJS) $(GEN_HEADERS)
.PHONY: clean

install-bin: all
	$(INSTALL_PROGRAM) $(PROG) $(DESTDIR)$(sbindir)/$(PROG)
.PHONY: install-bin

uninstall-bin:
	- rm $(DESTDIR)$(sbindir)/$(PROG)
.PHONY: uninstall-bin

install-man:
	$(INSTALL_DATA) -D scsi_id.8 $(DESTDIR)$(mandir)/man8/scsi_id.8
.PHONY: uninstall-man

uninstall-man:
	-rm -f $(DESTDIR)$(mandir)/man8/scsi_id.8
.PHONY: uninstall-man

install-config:
	@if [ ! -r $(DESTDIR)$(etcdir)/scsi_id.config ]; then \
		echo $(INSTALL_DATA) -D ./scsi_id.config  $(DESTDIR)$(etcdir); \
		$(INSTALL_DATA) -D ./scsi_id.config $(DESTDIR)$(etcdir)/scsi_id.config; \
	fi
.PHONY: install-config

install: all install-bin install-config install-man
.PHONY: install

uninstall: uninstall-bin uninstall-man
.PHONY: uninstall