Sophie

Sophie

distrib > Mandriva > 2009.0 > i586 > by-pkgid > 50bb24b4bac1ed1abe2530fdf692898f > files > 4

device-mapper-1.02.24-3mnb2.src.rpm

* Sun May 28 2006 Luca Berra <bluca@vodka.it>
* Thu Sep 30 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com>
static libraries should be installed even if we do not build static dmsetup
add dietlibc version of dmsetup and static libraries
allow building of static, dynamic and dietlibc at the same time

diff -p -up device-mapper.1.02.24/dmeventd/Makefile.in.build device-mapper.1.02.24/dmeventd/Makefile.in
--- device-mapper.1.02.24/dmeventd/Makefile.in.build	2007-08-21 16:26:06.000000000 +0000
+++ device-mapper.1.02.24/dmeventd/Makefile.in	2008-01-23 11:09:04.000000000 +0000
@@ -42,9 +42,7 @@ dmeventd: $(LIB_SHARED) dmeventd.o
 
 INSTALL_TYPE = install_dynamic
 
-ifeq ("@STATIC_LINK@", "yes")
-  INSTALL_TYPE += install_static
-endif
+INSTALL_TYPE += install_static
 
 ifeq ("@PKGCONFIG@", "yes")
   INSTALL_TYPE += install_pkgconfig
diff -p -up device-mapper.1.02.24/lib/Makefile.in.build device-mapper.1.02.24/lib/Makefile.in
--- device-mapper.1.02.24/lib/Makefile.in.build	2007-10-03 10:48:27.000000000 +0000
+++ device-mapper.1.02.24/lib/Makefile.in	2008-01-23 11:15:18.000000000 +0000
@@ -46,22 +46,28 @@ VERSIONED_SHLIB = libdevmapper.$(LIB_SUF
 DEFS += -DDEVICE_UID=@DEVICE_UID@ -DDEVICE_GID=@DEVICE_GID@ \
 	-DDEVICE_MODE=@DEVICE_MODE@
 
+ifeq ("@STATIC_LINK_DIET@", "yes")
+  LIB_STATIC_DIET = $(interface)/libdevmapper-diet.a
+endif
+
 include ../make.tmpl
 
 .PHONY: install_dynamic install_static install_include \
 	install_ioctl install_ioctl_static \
-	install_pkgconfig
+	install_pkgconfig install_static_diet
 
 INSTALL_TYPE = install_dynamic
 
-ifeq ("@STATIC_LINK@", "yes")
-  INSTALL_TYPE += install_static
-endif
+INSTALL_TYPE += install_static
 
 ifeq ("@PKGCONFIG@", "yes")
   INSTALL_TYPE += install_pkgconfig
 endif
 
+ifeq ("@STATIC_LINK_DIET@", "yes")
+  INSTALL_TYPE += install_static_diet
+endif
+
 install: $(INSTALL_TYPE) install_include
 
 install_include:
@@ -75,6 +81,9 @@ install_dynamic: install_@interface@
 install_static: install_@interface@_static
 	$(LN_S) -f libdevmapper.a.$(LIB_VERSION) $(libdir)/libdevmapper.a
 
+install_static_diet: install_@interface@_static_diet
+	$(LN_S) -f libdevmapper-diet.a.$(LIB_VERSION) $(libdir)/libdevmapper-diet.a
+
 install_ioctl: ioctl/libdevmapper.$(LIB_SUFFIX)
 	$(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \
 		$(libdir)/libdevmapper.$(LIB_SUFFIX).$(LIB_VERSION)
@@ -91,6 +100,10 @@ $(VERSIONED_SHLIB): %.$(LIB_SUFFIX).$(LI
 	rm -f $@
 	$(LN_S) $< $@
 
+install_ioctl_static_diet: ioctl/libdevmapper-diet.a
+	$(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< \
+		$(libdir)/libdevmapper-diet.a.$(LIB_VERSION)
+
 .PHONY: distclean_lib distclean
 
 distclean_lib:
diff -p -up device-mapper.1.02.24/configure.in.build device-mapper.1.02.24/configure.in
--- device-mapper.1.02.24/configure.in.build	2007-10-10 00:02:03.000000000 +0000
+++ device-mapper.1.02.24/configure.in	2008-01-23 11:09:04.000000000 +0000
@@ -199,6 +199,11 @@ AC_ARG_ENABLE(static_link, [  --enable-s
                           statically.  Default is dynamic linking],  STATIC_LINK=$enableval, STATIC_LINK=no)
 
 ################################################################################
+dnl -- Enables staticly-linked tools built with dietlibc
+AC_ARG_ENABLE(static_link_dietlibc, [  --enable-static_link_dietlibc    Use this create tools and libraries statically
+                          linked with dietlibc.  Default does not create dietlibc versions.],  STATIC_LINK_DIET=$enableval, STATIC_LINK_DIET=no)
+
+################################################################################
 dnl -- Clear default exec_prefix - install into /sbin rather than /usr/sbin
 if [[ "x$exec_prefix" = xNONE -a "x$prefix" = xNONE ]];
  then  exec_prefix="";
@@ -400,6 +405,7 @@ fi
 AC_SUBST(usrlibdir)
 AC_SUBST(JOBS)
 AC_SUBST(STATIC_LINK)
+AC_SUBST(STATIC_LINK_DIET)
 AC_SUBST(OWNER)
 AC_SUBST(GROUP)
 AC_SUBST(LIBS)
diff -p -up device-mapper.1.02.24/make.tmpl.in.build device-mapper.1.02.24/make.tmpl.in
diff -p -up device-mapper.1.02.24/dmsetup/Makefile.in.build device-mapper.1.02.24/dmsetup/Makefile.in
--- device-mapper.1.02.24/dmsetup/Makefile.in.build	2007-08-21 20:32:30.000000000 +0000
+++ device-mapper.1.02.24/dmsetup/Makefile.in	2008-01-23 11:12:31.000000000 +0000
@@ -21,12 +21,17 @@ INSTALL_TYPE = install_dynamic
 LIB_PTHREAD = @LIB_PTHREAD@
 
 ifeq ("@STATIC_LINK@", "yes")
-  TARGETS += dmsetup.static
+  TARGETS += dmsetup-static
   INSTALL_TYPE += install_static
 endif
+ 
+ifeq ("@STATIC_LINK_DIET@", "yes")
+  TARGETS += dmsetup-static-diet
+  INSTALL_TYPE += install_static_diet
+endif
 
 SOURCES = dmsetup.c
-CLEAN_TARGETS = dmsetup dmsetup.static
+CLEAN_TARGETS = dmsetup dmsetup-static dmsetup-static-diet
 
 include ../make.tmpl
 
@@ -34,11 +39,15 @@ dmsetup: $(OBJECTS) $(interfacedir)/libd
 	$(CC) -o $@ $(OBJECTS) $(CFLAGS) $(LDFLAGS) \
 	      -L$(interfacedir) -L$(DESTDIR)/lib -ldevmapper $(LIBS)
 
-dmsetup.static: $(OBJECTS) $(interfacedir)/libdevmapper.a
+dmsetup-static: $(OBJECTS) $(interfacedir)/libdevmapper.a
 	$(CC) -o $@ $(OBJECTS) $(CFLAGS) $(LDFLAGS) -static \
 	      -L$(interfacedir) -L$(DESTDIR)/lib -ldevmapper $(LIBS) \
 	      $(LIB_PTHREAD)
 
+dmsetup-static-diet: $(DIET_OBJECTS) $(interfacedir)/libdevmapper-diet.a
+	diet $(CC) -o $@ $(DIET_OBJECTS) $(LDFLAGS) -static \
+	      -L$(interfacedir) -L$(DESTDIR)/lib -ldevmapper-diet -lcompat $(LIBS)
+
 install: $(INSTALL_TYPE)
 
 .PHONY: install_dynamic install_static
@@ -46,6 +55,9 @@ install: $(INSTALL_TYPE)
 install_dynamic: dmsetup
 	$(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< $(sbindir)/$<
 
-install_static: dmsetup.static
+install_static: dmsetup-static
+	$(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< $(sbindir)/$<
+
+install_static_diet: dmsetup-static-diet
 	$(INSTALL) -D $(OWNER) $(GROUP) -m 555 $(STRIP) $< $(sbindir)/$<
 
--- device-mapper.1.02.24/make.tmpl.in.build	2007-10-03 10:48:27.000000000 +0000
+++ device-mapper.1.02.24/make.tmpl.in	2008-01-23 11:14:46.000000000 +0000
@@ -58,7 +58,9 @@ endif
 
 .SUFFIXES: .c .d .o .so .a .po .pot .mo .dylib
 
-CFLAGS += -fPIC -Wall -Wundef -Wshadow -Wcast-align -Wwrite-strings -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline
+PIC = -fPIC
+
+CFLAGS += -Wall -Wundef -Wshadow -Wcast-align -Wwrite-strings -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline
 
 #CFLAGS += -W -Wconversion -Wpointer-arith -Wredundant-decls -Wbad-function-cast -Wcast-qual -Wmissing-noreturn
 
@@ -68,6 +70,7 @@ ifeq ("@DEBUG@", "yes")
   CFLAGS += -g -fno-omit-frame-pointer
   DEFS += -DDEBUG
   DEFS += -DDEBUG_MEM
+  LDFLAGS += -g
 endif
 
 ifeq ("@INTL@", "yes")
@@ -112,7 +115,10 @@ INC_LNS = $(top_srcdir)/include/.symlink
 DEPS = $(top_srcdir)/make.tmpl $(top_srcdir)/VERSION Makefile $(INC_LNS)
 
 OBJECTS = $(SOURCES:%.c=%.o)
+PIC_OBJECTS = $(SOURCES:%.c=%.pic.o)
+DIET_OBJECTS = $(SOURCES:%.c=%.diet.o)
 POTFILES = $(SOURCES:%.c=%.pot)
+DEPFILES = $(SOURCES:%.c=%.d)
 
 SUBDIRS.install := $(SUBDIRS:=.install)
 SUBDIRS.pofile := $(SUBDIRS:=.pofile)
@@ -123,7 +129,7 @@ SUBDIRS.distclean := $(SUBDIRS:=.distcle
 .PHONY: $(SUBDIRS) $(SUBDIRS.install) $(SUBDIRS.clean) $(SUBDIRS.distclean)
 .PHONY: $(SUBDIRS.pofile)
 
-TARGETS += $(LIB_SHARED) $(LIB_STATIC) $(VERSIONED_SHLIB)
+TARGETS += $(LIB_SHARED) $(LIB_STATIC) $(VERSIONED_SHLIB) $(LIB_STATIC_DIET)
 
 all: $(SUBDIRS) $(TARGETS)
 
@@ -153,6 +159,12 @@ $(TARGETS): $(OBJECTS)
 %.o: %.c
 	$(CC) -c $(INCLUDES) $(DEFS) $(CFLAGS) $< -o $@
 
+%.pic.o: %.c
+	$(CC) -c $(INCLUDES) $(DEFS) $(CFLAGS) $(PIC) $< -o $@
+
+%.diet.o: %.c
+	diet $(CC) -c $(INCLUDES) $(DEFS) $(CFLAGS) $(PIC) $< -o $@
+
 %.pot: %.c Makefile
 	$(CC) -E $(INCLUDES) -include $(top_srcdir)/include/pogen.h \
 		$(DEFS) $(CFLAGS) $< > $@
@@ -161,21 +173,27 @@ $(TARGETS): $(OBJECTS)
 	$(CC) -c $(INCLUDES) $(DEFS) $(CFLAGS) $< -o $@
 
 ifeq ("@LIB_SUFFIX@","so")
-$(LIB_SHARED): $(OBJECTS) $(LDDEPS)
+$(LIB_SHARED): $(PIC_OBJECTS) $(LDDEPS)
 	$(CC) -shared -Wl,-soname,$(notdir $@).$(LIB_VERSION) \
-	$(CFLAGS) $(CLDFLAGS) $(OBJECTS) $(LIBS) -o $@
+	$(CFLAGS) $(CLDFLAGS) $(PIC_OBJECTS) $(LIBS) -o $@
 endif
 
 ifeq ("@LIB_SUFFIX@","dylib")
-$(LIB_SHARED): $(OBJECTS) $(LDDEPS)
+$(LIB_SHARED): $(PIC_OBJECTS) $(LDDEPS)
 	$(CC) -dynamiclib -dylib_current_version,$(LIB_VERSION) \
-	$(CFLAGS) $(CLDFLAGS) $(OBJECTS) $(LIBS) -o $@
+	$(CFLAGS) $(CLDFLAGS) $(PIC_OBJECTS) $(LIBS) -o $@
 endif
 
 $(LIB_STATIC): $(OBJECTS)
 	$(RM) $@
 	$(AR) rs $@ $(OBJECTS)
 
+ifeq ("@STATIC_LINK_DIET@", "yes")
+$(LIB_STATIC_DIET): $(DIET_OBJECTS)
+	$(RM) $@
+	$(AR) rs $@ $(DIET_OBJECTS)
+endif
+
 %.d: %.c
 	set -e; \
 	FILE=`echo $@ | sed 's/\\//\\\\\\//g;s/\\.d//g'`; \
@@ -188,12 +206,12 @@ $(LIB_STATIC): $(OBJECTS)
 	$(MSGFMT) -o $@ $<
 
 clean: $(SUBDIRS.clean)
-	$(RM) $(OBJECTS) $(TARGETS) $(CLEAN_TARGETS) $(SOURCES:%.c=%.d) \
-	      $(SOURCES:%.c=%.pot) $(LDDEPS)
+	$(RM) $(OBJECTS) $(PIC_OBJECTS) $(TARGETS) $(CLEAN_TARGETS) $(DEPFILES) \
+	      $(POTFILES) $(LDDEPS) $(DIET_OBJECTS)
 
 distclean: $(SUBDIRS.distclean)
-	$(RM) $(OBJECTS) $(TARGETS) $(CLEAN_TARGETS) $(SOURCES:%.c=%.d) \
-	      $(SOURCES:%.c=%.pot) $(LDDEPS) \
+	$(RM) $(OBJECTS) $(PIC_OBJECTS) $(TARGETS) $(CLEAN_TARGETS) $(DEPFILES) \
+	      $(POTFILES) $(LDDEPS) $(DIET_OBJECTS) \
 	      config.cache config.log config.status \
 	      Makefile make.tmpl core \
 	      device-mapper.po