chiark / gitweb /
[PATCH] extras/multipath update
[elogind.git] / extras / multipath / Makefile
index 9e0ce12..bccf126 100644 (file)
@@ -13,17 +13,35 @@ CFLAGS = -pipe -g -O2 -Wall -Wunused -Wstrict-prototypes -nostdinc -I../../klibc
 LDFLAGS = -lsysfs -ldevmapper -ldlist
 
 OBJS = main.o
-
-all:   $(EXEC)
-       strip $(EXEC)
+CRT0 = ../../klibc/klibc/crt0.o
+LIB = ../../klibc/klibc/libc.a
+LIBGCC = /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.1/libgcc.a
+DMOBJS = libdevmapper/libdm-common.o libdevmapper/ioctl/libdevmapper.o
+SYSFSOBJS = ../../libsysfs/dlist.o ../../libsysfs/sysfs_bus.o \
+           ../../libsysfs/sysfs_class.o ../../libsysfs/sysfs_device.o \
+           ../../libsysfs/sysfs_dir.o ../../libsysfs/sysfs_driver.o \
+           ../../libsysfs/sysfs_utils.o
+
+SUBDIRS = libdevmapper
+
+recurse:
+       @for dir in $(SUBDIRS); do\
+       $(MAKE) -C $$dir ; \
+       done
+       $(MAKE) $(EXEC)
+
+all:   recurse
        @echo ""
        @echo "Make complete"
 
+
 $(EXEC): $(OBJS)
-       $(CC) $(OBJS) -o $(EXEC) $(LDFLAGS) $(CFLAGS)
+       $(LD) -o $(EXEC) $(CRT0) $(OBJS) $(SYSFSOBJS) $(DMOBJS) $(LIB) $(LIBGCC)
+       strip $(EXEC)
 
 clean:
        rm -f core *.o $(EXEC)
+       $(MAKE) -C libdevmapper clean
 
 install:
        install -d $(bindir)