+Thu Nov 28 16:19:18 CET 2002 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added library versioning for shared libraries. Affected
+ files configure.in.pre and lib/Makefile.am.pre.
+
Wed Nov 27 21:51:52 CET 2002 Jochen Eisinger <c0ffee@penguin-breeder.org>
* Display INVITE and BAN lists as specified by SILC 1.2
CFLAGS="-Wall -finline-functions $CFLAGS"
fi
+#
+# Library versioning.
+#
+# Do the releases and library versioning according to following rules:
+#
+# - If any code has changed in library, increment [LIB]_REVISION
+# - If functions were added, set [LIB]_REVISION to 0
+# - If functions were added, removed or changed, increment [LIB]_CURRENT
+# - If functions were added, increment [LIB]_AGE
+# - If functions were removed, set [LIB]_AGE to 0
+#
+# where [LIB] is LIBSILC and LIBSILCCLIENT, and where "functions" means
+# functions public interfaces.
+#
+# The LIB_BASE_VERSION defines the SILC software major.minor version and
+# it is increment only when these version numbers actually change.
+#
+
+# Base version for libraries. Do not change this unless SILC version
+# changes too.
+LIB_BASE_VERSION=1.0
+
+# libsilc versions
+LIBSILC_CURRENT=0
+LIBSILC_REVISION=0
+LIBSILC_AGE=0
+
+# libsilcclient versions
+LIBSILCCLIENT_CURRENT=0
+LIBSILCCLIENT_REVISION=0
+LIBSILCCLIENT_AGE=0
+
+# Substitute the version numbers
+AC_SUBST(LIB_BASE_VERSION)
+AC_SUBST(LIBSILC_CURRENT)
+AC_SUBST(LIBSILC_REVISION)
+AC_SUBST(LIBSILC_AGE)
+AC_SUBST(LIBSILCCLIENT_CURRENT)
+AC_SUBST(LIBSILCCLIENT_REVISION)
+AC_SUBST(LIBSILCCLIENT_AGE)
+
#
# Program checking
#
test "x$silc_dist" = "xsilc-toolkit"; then
silcd="yes"
if test x$without_silcd = xtrue; then
- without_silcd="no"
+ silcd="no"
fi
echo " Compile SILC Server ...........: $silcd"
echo " Server configuration file .....: $summary_silcd_configfile"
-mno-cygwin -o silcclient.dll libsilcclient.a -L. -lsilc -lwsock32
endif
+LIB_BASE_VERSION=@LIB_BASE_VERSION@
+LIBSILC_CURRENT=@LIBSILC_CURRENT@
+LIBSILC_REVISION=@LIBSILC_REVISION@
+LIBSILC_AGE=@LIBSILC_AGE@
+LIBSILCCLIENT_CURRENT=@LIBSILCCLIENT_CURRENT@
+LIBSILCCLIENT_REVISION=@LIBSILCCLIENT_REVISION@
+LIBSILCCLIENT_AGE=@LIBSILCCLIENT_AGE@
+
libsilc.a:
find $(SILCLIB_DIRS) -type f -name *.lo | xargs \
$(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) \
- -rpath $(libdir) -o libsilc.la
+ -version-info $(LIBSILC_CURRENT):$(LIBSILC_REVISION):$(LIBSILC_AGE) \
+ -release $(LIB_BASE_VERSION) -rpath $(libdir) -o libsilc.la
libsilcclient.a:
find $(SILCCLIENTLIB_DIRS) -type f -name *.lo | xargs \
$(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) \
- -rpath $(libdir) -o libsilcclient.la
+ -version-info $(LIBSILCCLIENT_CURRENT):$(LIBSILCCLIENT_REVISION):$(LIBSILCCLIENT_AGE) \
+ -release $(LIB_BASE_VERSION) -rpath $(libdir) -o libsilcclient.la
if SILC_DIST_TOOLKIT
SILC_EXTRA_DIST = doc