-include Makefile.inc
 -include ../project/version.properties
 
+version=${module.version}
+
 CC=gcc
 
 VPATH=${top_srcdir}/interface:${top_srcdir}/src:${top_srcdir}/examples
 LOBJS:=${OBJS:.o=.lo}
 LTESTOBJS:=${TESTOBJS:.o=.lo}
 
+# In order to use libtool versioning correcty, we must have:
+#
+# current = major + minor + offset
+# revision = patch
+# age = minor
+#
+# where offset is a sum of maximal released minor's of all previous major's
+# 
+
+# counted minors: 1.0
+offset=0
+
+version_info:=-version-info ${shell \
+       perl -e '$$,=":"; @F=split "\\.","${version}"; print $$F[0]+$$F[1]+${offset},$$F[2],$$F[1]' }
+
 default all: compile doc
 
 check_soname:
        fi
 
 libglite_lbu_db.la: check_soname ${LOBJS}
-       ${LINK} -o $@ $+ ${EXT_LIBS}
+       ${LINK} ${version_info} -o $@ $+ ${EXT_LIBS}
 
 libglite_lbu_dbtest.la: check_soname ${LTESTOBJS}
-       ${LINK} -o $@ $+ ${EXT_LIBS}
+       ${LINK} ${version_info} -o $@ $+ ${EXT_LIBS}
 
 dbtest.lo dbtest.o: db.c db.h
        ${COMPILE} -DGLITE_LBU_DEFAULT_RESULT_BUFFER_LENGTH=10 -c $< -o $@
 
 CC=gcc
 
 -include Makefile.inc
+-include ../project/version.properties
 
+version=${module.version}
 
 VPATH=${top_srcdir}/src:${top_srcdir}/test:${top_srcdir}/project:${jpproject}
 
 DEBUG:=-g -O0 -W -Wno-sign-compare
 CFLAGS:=${DEBUG} -D_GNU_SOURCE -I. -I${top_srcdir}/interface -I${stagedir}/include
 
+# In order to use libtool versioning correcty, we must have:
+#
+# current = major + minor + offset
+# revision = patch
+# age = minor
+#
+# where offset is a sum of maximal released minor's of all previous major's
+# 
+
+# counted minors: n/a
 offset=0
+
 version_info:=-version-info ${shell \
        perl -e '$$,=":"; @F=split "\\.","${version}"; print $$F[0]+$$F[1]+${offset},$$F[2],$$F[1]' }
 
 
 -include Makefile.inc
 -include ../project/version.properties
 
+version=${module.version}
+
 CC=gcc
 
 VPATH=${top_srcdir}/interface:${top_srcdir}/src:${top_srcdir}/examples
 HDRS:=maildir.h
 LOBJS:=${OBJS:.o=.lo}
 
+# In order to use libtool versioning correcty, we must have:
+#
+# current = major + minor + offset
+# revision = patch
+# age = minor
+#
+# where offset is a sum of maximal released minor's of all previous major's
+# 
+
+# counted minors: n/a
+offset=0
+
+version_info:=-version-info ${shell \
+       perl -e '$$,=":"; @F=split "\\.","${version}"; print $$F[0]+$$F[1]+${offset},$$F[2],$$F[1]' }
+
 default all: compile doc
 
 libglite_lbu_maildir.la: ${LOBJS}
-       ${LINK} -o $@ $< ${EXT_LIBS}
+       ${LINK} ${version_info} -o $@ $< ${EXT_LIBS}
 
 compile: libglite_lbu_maildir.la
 
 
 -include Makefile.inc
 -include ../project/version.properties
 
+version=${module.version}
+
 VPATH=${top_srcdir}/src:${top_srcdir}/examples
 
 DEBUG:=-g -O0 -Wall
 
 HDRS:=srvbones.h
 
+# In order to use libtool versioning correcty, we must have:
+#
+# current = major + minor + offset
+# revision = patch
+# age = minor
+#
+# where offset is a sum of maximal released minor's of all previous major's
+# 
+
+# counted minors: n/a
+offset=0
+
+version_info:=-version-info ${shell \
+       perl -e '$$,=":"; @F=split "\\.","${version}"; print $$F[0]+$$F[1]+${offset},$$F[2],$$F[1]' }
+
 default all: compile
 
 compile: ${STATICLIB} ${LTLIB} example
        ranlib $@
 
 ${LTLIB}: ${LOBJS}
-       ${LINK} -o $@ ${LOBJS} ${LOG4C_LIBS}
+       ${LINK} ${version_info} -o $@ ${LOBJS} ${LOG4C_LIBS}
 
 stage: compile
        $(MAKE) install PREFIX=${stagedir} DOSTAGE=yes
 
 -include Makefile.inc
 -include ../project/version.properties
 
+version=${module.version}
+
 VPATH=${top_srcdir}/src:${top_srcdir}/test::${top_srcdir}/doc
 
 CC=gcc