chiark / gitweb /
volume_id: fix sqashfs detection
[elogind.git] / extras / volume_id / lib / Makefile
index 6a12f0e67a7ffa655a87be453eb79cea84cc412f..ce07d8dd20aeccf4fe70668e2768b3c563e17b14 100644 (file)
@@ -8,12 +8,12 @@ includedir =  ${prefix}/usr/include
 libdir =       ${prefix}/lib
 usrlibdir =    ${prefix}/usr/lib
 
-INSTALL = /usr/bin/install -c
+INSTALL = install -c
 INSTALL_DATA  = ${INSTALL} -m 644
 INSTALL_LIB = ${INSTALL} -m 755
 
 SHLIB_CUR = 0
-SHLIB_REV = 61
+SHLIB_REV = 80
 SHLIB_AGE = 0
 SHLIB = libvolume_id.so.$(SHLIB_CUR).$(SHLIB_REV).$(SHLIB_AGE)
 
@@ -28,6 +28,9 @@ OBJS=                         \
        silicon_raid.o          \
        nvidia_raid.o           \
        promise_raid.o          \
+       adaptec_raid.o          \
+       jmicron_raid.o          \
+       ddf_raid.o              \
        iso9660.o               \
        jfs.o                   \
        linux_raid.o            \
@@ -43,10 +46,12 @@ OBJS=                               \
        romfs.o                 \
        sysv.o                  \
        minix.o                 \
+       gfs.o                   \
        luks.o                  \
        ocfs.o                  \
        vxfs.o                  \
        squashfs.o              \
+       netware.o               \
        volume_id.o             \
        util.o
 
@@ -54,22 +59,19 @@ HEADERS=                    \
        libvolume_id.h          \
        util.h
 
-AR = $(CROSS)ar
-RANLIB = $(CROSS)ranlib
-
 all: libvolume_id.a $(SHLIB) libvolume_id.pc
 .PHONY: all
 .DEFAULT: all
 
+.SUFFIXES:
+
 %.o: %.c
        $(E) "  CC      " $@
        $(Q) $(CC) -c $(CFLAGS) $< -o $@
 
-.shlib:
-       $(Q) mkdir .shlib
-
 .shlib/%.o: %.c
        $(E) "  CC      " $@
+       $(Q) mkdir -p $(dir $@)
        $(Q) $(CC) -c $(CFLAGS) -fPIC $< -o $@
 
 libvolume_id.a: $(HEADERS) $(OBJS)
@@ -79,16 +81,17 @@ libvolume_id.a: $(HEADERS) $(OBJS)
        $(E) "  RANLIB  " $@
        $(Q) $(RANLIB) $@
 
-$(SHLIB): $(HEADERS) .shlib $(addprefix .shlib/,$(OBJS))
+$(SHLIB): $(HEADERS) exported_symbols $(addprefix .shlib/,$(OBJS))
        $(E) "  CC      " $@
-       $(Q) $(CC) -shared $(CFLAGS) -o $@ -Wl,-soname,libvolume_id.so.$(SHLIB_CUR) $(addprefix .shlib/,$(OBJS))
+       $(Q) $(CC) -shared $(CFLAGS) -o $@ \
+               -Wl,-soname,libvolume_id.so.$(SHLIB_CUR),--version-script,exported_symbols \
+               $(addprefix .shlib/,$(OBJS))
        $(Q) ln -sf $@ libvolume_id.so.$(SHLIB_CUR)
        $(Q) ln -sf $@ libvolume_id.so
 
 libvolume_id.pc:
        $(E) "  GENPC   " $@
-       $(Q) echo "prefix=${prefix}" > $@
-       $(Q) echo "libdir=${libdir}" >> $@
+       $(Q) echo "libdir=${usrlibdir}" >> $@
        $(Q) echo "includedir=${includedir}" >> $@
        $(Q) echo "" >> $@
        $(Q) echo "Name: libvolume_id" >> $@
@@ -99,10 +102,10 @@ libvolume_id.pc:
 
 install: all
        $(INSTALL_DATA) -D libvolume_id.h $(DESTDIR)$(includedir)/libvolume_id.h
-       $(INSTALL_LIB) -D libvolume_id.a $(DESTDIR)$(usrlibdir)/libvolume_id.a
        $(INSTALL_LIB) -D $(SHLIB) $(DESTDIR)$(libdir)/$(SHLIB)
-       ln -sf $(DESTDIR)$(libdir)/$(SHLIB) $(DESTDIR)$(libdir)/libvolume_id.so.$(SHLIB_CUR)
-       ln -sf $(DESTDIR)$(libdir)/$(SHLIB) $(DESTDIR)$(usrlibdir)/libvolume_id.so
+       mkdir -p $(DESTDIR)$(usrlibdir)/
+       ln -sf $(SHLIB) $(DESTDIR)$(libdir)/libvolume_id.so.$(SHLIB_CUR)
+       ln -sf $(libdir)/$(SHLIB) $(DESTDIR)$(usrlibdir)/libvolume_id.so
        $(INSTALL_DATA) -D libvolume_id.pc $(DESTDIR)$(usrlibdir)/pkgconfig/libvolume_id.pc
 .PHONY: install