3 # Copyright (C) 2003 Christophe Varoqui, <christophe.varoqui@free.fr>
8 exec_prefix = ${prefix}
9 bindir = ${exec_prefix}/sbin
11 klibcdir = $(udevdir)/klibc
12 sysfsdir = $(udevdir)/libsysfs
13 mandir = /usr/share/man/man8
18 GCCINCDIR := ${shell $(CC) -print-search-dirs | sed -ne "s/install: \(.*\)/\1include/gp"}
19 KERNEL_DIR = /lib/modules/${shell uname -r}/build
20 CFLAGS = -pipe -g -O2 -Wall -Wunused -Wstrict-prototypes -nostdinc \
21 -I$(klibcdir)/klibc/include -I$(klibcdir)/klibc/include/bits32 \
22 -I$(GCCINCDIR) -I$(KERNEL_DIR)/include -I$(sysfsdir) -I.
24 OBJS = devinfo.o main.o
25 CRT0 = ../../klibc/klibc/crt0.o
26 LIB = ../../klibc/klibc/libc.a
27 LIBGCC := $(shell $(CC) -print-libgcc-file-name )
29 DMOBJS = libdevmapper/libdm-common.o libdevmapper/ioctl/libdevmapper.o
30 SYSFSOBJS = ../../libsysfs/dlist.o ../../libsysfs/sysfs_bus.o \
31 ../../libsysfs/sysfs_class.o ../../libsysfs/sysfs_device.o \
32 ../../libsysfs/sysfs_dir.o ../../libsysfs/sysfs_driver.o \
33 ../../libsysfs/sysfs_utils.o
35 SUBDIRS = libdevmapper
38 @for dir in $(SUBDIRS); do\
39 $(MAKE) KERNEL_DIR=$(KERNEL_DIR) -C $$dir ; \
49 $(LD) -o $(EXEC) $(CRT0) $(OBJS) $(SYSFSOBJS) $(DMOBJS) $(LIB) $(LIBGCC)
51 $(GZIP) $(EXEC).8 > $(EXEC).8.gz
53 devmap_name: devmap_name.o
54 $(LD) -o devmap_name $(CRT0) devmap_name.o $(DMOBJS) $(LIB) $(LIBGCC)
56 $(GZIP) devmap_name.8 > devmap_name.8.gz
59 rm -f core *.o $(EXEC) devmap_name *.gz
60 $(MAKE) -C libdevmapper clean
63 install -d $(DESTDIR)$(bindir)
64 install -m 755 $(EXEC) $(DESTDIR)$(bindir)/
65 install -m 755 devmap_name $(DESTDIR)$(bindir)/
66 install -d $(DESTDIR)/etc/hotplug.d/scsi/
67 install -m 755 multipath.hotplug $(DESTDIR)/etc/hotplug.d/scsi/
68 install -d $(DESTDIR)$(mandir)
69 install -m 644 devmap_name.8.gz $(DESTDIR)$(mandir)
70 install -m 644 multipath.8.gz $(DESTDIR)$(mandir)
73 rm $(DESTDIR)/etc/hotplug.d/scsi/multipath.hotplug
74 rm $(DESTDIR)$(bindir)/$(EXEC)
75 rm $(DESTDIR)$(bindir)/devmap_name
76 rm $(DESTDIR)$(mandir)/devmap_name.8.gz
77 rm $(DESTDIR)$(mandir)/multipath.8.gz
80 main.o: main.c main.h sg_include.h devinfo.h