summaryrefslogtreecommitdiff
path: root/extras/scsi_id/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'extras/scsi_id/Makefile')
-rw-r--r--extras/scsi_id/Makefile124
1 files changed, 66 insertions, 58 deletions
diff --git a/extras/scsi_id/Makefile b/extras/scsi_id/Makefile
index 3b75e165fb..bb3422a9c4 100644
--- a/extras/scsi_id/Makefile
+++ b/extras/scsi_id/Makefile
@@ -1,85 +1,93 @@
+# Makefile for udev extra invoked from the udev main Makefile
#
# Copyright (C) 2003 IBM
+# Copyright (C) 2004-2005 Kay Sievers <kay.sievers@vrfy.org>
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; version 2 of the License.
+# Released under the GNU General Public License, version 2.
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-SCSI_ID_VERSION=0.9
+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
+exec_prefix = ${prefix}
+etcdir = ${prefix}/etc
+sbindir = ${exec_prefix}/sbin
+usrbindir = ${exec_prefix}/usr/bin
+usrsbindir = ${exec_prefix}/usr/sbin
mandir = ${prefix}/usr/share/man
+configdir = ${etcdir}/udev/
+srcdir = .
-INSTALL = /usr/bin/install -c
+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
+RANLIB = $(CROSS)ranlib
+HOSTCC = gcc
+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)
+ $(QUIET) $(STRIPCMD) $@
-# Note some of the variables used here are set when built under udev, and
-# otherwise might not be set.
-
-CFLAGS+=-Wall -fno-builtin
-
-PROG=scsi_id
-LIBSYSFS=-lsysfs
-
-#
-# Built static and stripped when built with udev.
-#
-# STRIP=-s
-# LDFLAGS=$(STRIP)
-LD=$(CC)
-
-OBJS= scsi_id.o scsi_serial.o
+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\" >> $@
-all: $(PROG)
+# man pages
+%.8: %.xml
+ xmlto man $?
+.PRECIOUS: %.8
-# XXX use a compressed man page?
+clean:
+ rm -f $(PROG) $(OBJS) $(GEN_HEADERS)
+.PHONY: clean
install-bin: all
- $(INSTALL_PROGRAM) -D $(PROG) $(DESTDIR)$(sbindir)/$(PROG)
+ $(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 $(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
-
-uninstall-bin:
- -rm $(DESTDIR)$(sbindir)/$(PROG)
-
-uninstall-man:
- -rm $(DESTDIR)$(mandir)/man8/scsi_id.8
-
-GEN_HEADER=scsi_id_version.h
-
-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\" >> $@
-$(OBJS): scsi_id.h scsi.h scsi_id_version.h
-
-clean:
- rm -f $(PROG) $(OBJS) $(GEN_HEADER)
-
-spotless: clean
-
-.c.o:
- $(QUIET) $(CC) $(CFLAGS) -c -o $@ $<
+.PHONY: install-config
-$(PROG): $(OBJS)
- $(QUIET) $(LD) $(LDFLAGS) -o $(PROG) $(CRT0) $(OBJS) $(LIBSYSFS) $(LIB_OBJS) $(ARCH_LIB_OBJS)