Skip to contentSkip to conversation

Patches for 0.8.1

linux-lvm Russell Coker 3 participants 3 messages Dec 16, 2000 – Dec 18, 2000

lore
Share & tools
lore
#0 lore raw

This one removes an unnecessary library check (which doesn't work) and adds version data to the config file (this is so handy).

configure.in Sat Dec 16 16:02:54 2000 renamed from configure.in Sun Nov 12 19:52:12 2000 +3 -4
@@ -31,10 +31,6 @@
 AC_PROG_LN_S
 AC_PROG_MAKE_SET
 
-dnl Checks for libraries.
-dnl Replace `main' with a function in -llvm:
-AC_CHECK_LIB(lvm, main)
-
 dnl Checks for header files.
 AC_HEADER_DIRENT
 AC_HEADER_STDC
@@ -58,6 +54,9 @@
 AC_CHECK_FUNCS(mkdir rmdir uname)
 
 AC_SUBST(JOBS)
+
+AC_SUBST(VERSION)
+VERSION=0.8final
 
 dnl First and last lines should not contain files to generate in order to
 dnl keep utility scripts running properly

The following makes it the library compile as a versioned shared object (allowing multiple versions to be on the machine at the same time). Later I'll submit a patch that adds this and a ./configure option to select shared object or static linking.

tools/lib/Makefile.in Sat Dec 16 16:12:08 2000 renamed from tools/lib/Makefile.in Sun Nov 12 19:52:12 2000 +10 -5
diff -ru lvm-0.8.orig/tools/lib/Makefile.in lvm-0.8.1/tools/lib/Makefile.in
@@ -30,11 +30,14 @@
 
 include ../../make.tmpl
 include ../tools_and_lib.make.tmpl
+CFLAGS += -fPIC
 
+VERSION=@VERSION@
 ARCHIVE = liblvm.a
-SO = liblvm.so
+BASESO = liblvm.so
+SO = ${BASESO}.${VERSION}
 
-ALL_RM = $(ALL_OBJECTS) $(ARCHIVE) $(SO)
+ALL_RM = $(ALL_OBJECTS) $(ARCHIVE) $(SO) ${BASESO}
 
 all_this: $(ARCHIVE) $(SO) Makefile
        @echo ""
@@ -45,9 +48,10 @@
        @echo "*** Installing $(ARCHIVE) and $(SO) in ${prefix}/lib ***"
        @rm -f ${libdir}/${SO} ${libdir}/$(ARCHIVE);
        @INSTALL@ -d ${libdir}
-       @INSTALL@ $(ARCHIVE) $(SO) ${libdir}
-       chmod 444 ${libdir}/$(ARCHIVE)
+       @INSTALL@ $(SO) ${libdir}
        chmod 555 ${libdir}/$(SO)
+#      @INSTALL@ $(ARCHIVE) ${libdir}
+#      chmod 444 ${libdir}/$(ARCHIVE)
 
 remove_this:
        @echo "*** Removing $(ARCHIVE) and $(SO) in ${prefix}/lib ***"
@@ -64,7 +68,8 @@
        ranlib $@
 
 $(SO): $(ALL_OBJECTS)
-       ld -shared -o $(SO) $(ALL_OBJECTS)
+       ld -shared -soname=${SO} -o $(SO) $(ALL_OBJECTS)
+       ln -sf ${SO} ${BASESO}
 
 clean_this:
        rm -f $(ALL_RM)
Signature · 4 lines
http://www.coker.com.au/bonnie++/     Bonnie++ hard drive benchmark
http://www.coker.com.au/postal/       Postal SMTP/POP benchmark
http://www.coker.com.au/projects.html Projects I am working on
http://www.coker.com.au/~russell/     My home page
#1 lore raw

tools/lib/Makefile.in Sat Dec 16 16:12:08 2000 line 72

Quoted 5 lines

$(SO): $(ALL_OBJECTS)

tools/lib/Makefile.in Sat Dec 16 16:12:08 2000 renamed from tools/lib/Makefile.in Sun Nov 12 19:52:12 2000 +2 -1
-       ld -shared -o $(SO) $(ALL_OBJECTS)
+       ld -shared -soname=${SO} -o $(SO) $(ALL_OBJECTS)
+       ln -sf ${SO} ${BASESO}

i thought it was better to use 'gcc -shared -Wl,-soname,${SO}' to link shared libraries, especially under libc6

L.

Signature · 6 lines
Luca Berra -- [email protected]
        Communication Media & Services S.r.l.
 /"\
 \ /     ASCII RIBBON CAMPAIGN
  X        AGAINST HTML MAIL
 / \
#2 lore raw
In reply to Russell Coker
Quoted 2 lines · Russell Coker

This one removes an unnecessary library check (which doesn't work) and adds version data to the config file (this is so handy).

Now we just have to make sure we rev the version number before a release. ;)

configure.in Sat Dec 16 16:02:54 2000 line 59

Quoted 2 lines
configure.in Sat Dec 16 16:02:54 2000 renamed from configure.in Sun Nov 12 19:52:12 2000 +2 -0
+AC_SUBST(VERSION)
+VERSION=0.8final

Shouldn't this be '+VERSION=0.8.1'?

I'm not going to put this completely in until we get the ./configure stuff worked out, but I'll hand apply most of it to the 'LVM_0-9-patches' and 'LVM_0-8-1-patches' tagged version of the CVS. Make sure you're working with those as you continue.

Thanks,

Signature · 9 lines
AJ Lewis
Sistina Software Inc.                  Voice:  612-379-3951
1313 5th St SE, Suite 111              Fax:    612-379-3952
Minneapolis, MN 55414                  E-Mail: [email protected]
http://www.sistina.com
Current GPG fingerprint = 3B5F 6011 5216 76A5 2F6B  52A0 941E 1261 0029 2648

I have yet to meet a C compiler that is more friendly and easier to use
than eating soup with a knife.