Major restructuring of the internals of SILC Cipher API
[crypto.git] / lib / Makefile.ad
index 5e12f56ba69bf304f692390b0e9535f5ce553026..286f821391d5259760ad47f4669536758d1290e2 100644 (file)
@@ -3,7 +3,7 @@
 #
 #  Author: Pekka Riikonen <priikone@silcnet.org>
 #
-#  Copyright (C) 2000 - 2005 Pekka Riikonen
+#  Copyright (C) 2000 - 2008 Pekka Riikonen
 #
 #  This program is free software; you can redistribute it and/or modify
 #  it under the terms of the GNU General Public License as published by
 
 AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
 
-# SILC Library dirs
-SILCLIB_DIRS = \
-       contrib \
-       silccore \
-       silccrypt \
-#ifdef SILC_DIST_SIM
-       silcsim \
-#endif SILC_DIST_SIM
-#ifdef SILC_DIST_MATH
-       silcmath \
-#endif SILC_DIST_MATH
-       silcske \
-       silcutil \
-       silcsftp
+# Library dirs
+CRYPTO_DIRS =          \
+       silccrypt       \
+       silcskr         \
+       silcmath        \
+       silcasn1        \
+       silcacc         \
+#ifdef SILC_DIST_SSH
+       silcssh         \
+#endif SILC_DIST_SSH
+#ifdef SILC_DIST_PGP
+       silcpgp         \
+#endif SILC_DIST_PGP
+#ifdef SILC_DIST_PKIX
+       silcpkix
+#endif SILC_DIST_PKIX
 
-SILCLIB = libsilc.a
+if SILC_ENABLE_SHARED
+if SILC_WIN32
+LIBTOOL_OPTS= -release $(CRYPTO_BASE_VERSION) -rpath $(DESTDIR)$(libdir) \
+              -export-dynamic -no-undefined
+else
+LIBTOOL_OPTS= -release $(CRYPTO_BASE_VERSION) -rpath $(DESTDIR)$(libdir)
+endif
+LIBTOOL_CRYPTO_VERSION = \
+   -version-info $(CRYPTO_CURRENT):$(CRYPTO_REVISION):$(CRYPTO_AGE)
+else
+LIBTOOL_OPTS=
+LIBTOOL_CRYPTO_VERSION =
+endif
+if SILC_WIN32
+CRYPTO_LINK_LIBS=$(LIBS)
+else
+CRYPTO_LINK_LIBS=
+endif
 
-#ifdef SILC_DIST_CLIENTLIB
-# SILC Client Library dirs
-SILCCLIENTLIB_DIRS = silcclient
-SILCCLIENTLIB = libsilcclient.a
-#endif SILC_DIST_CLIENTLIB
+CRYPTO_LIB = libsct.a
 
-SUBDIRS = $(SILCLIB_DIRS) $(SILCCLIENTLIB_DIRS)
+SUBDIRS = $(CRYPTO_DIRS)
 
-CLEANFILES = libsilc.a libsilcclient.a
-DISTCLEANFILES = libsilc.a libsilcclient.a
+CLEANFILES = $(CRYPTO_LIB)
+DISTCLEANFILES = $(CRYPTO_LIB)
 
 remove:
-       -rm -f libsilc.a
-       -rm -f libsilcclient.a
+       -rm -f $(CLEANFILES)
 
-all:   remove $(SILCLIB) $(SILCCLIENTLIB)
+all:
+       $(MAKE) remove $(CRYPTO_LIB)
 
-#ifdef SILC_DIST_TOOLKIT
 install-exec-hook:
        -mkdir -p $(DESTDIR)$(libdir)
-       -$(LIBTOOL) $(INSTALL) libsilc.la $(DESTDIR)$(libdir)/
-       -$(LIBTOOL) $(INSTALL) libsilcclient.la $(DESTDIR)$(libdir)/
-#else !SILC_DIST_TOOLKIT
-
-#ifdef SILC_DIST_SERVER
-install-exec-hook:
-if SILC_ENABLE_SHARED
-       -mkdir -p $(libdir)
-       -$(LIBTOOL) $(INSTALL) libsilc.la $(DESTDIR)$(libdir)/
-       -rm -rf $(DESTDIR)$(libdir)/libsilc.a
-endif
-#endif SILC_DIST_SERVER
-
-#ifdef SILC_DIST_CLIENT
-install-exec-hook:
-if SILC_ENABLE_SHARED
-       -mkdir -p $(libdir)
-       -$(LIBTOOL) $(INSTALL) libsilc.la $(DESTDIR)$(libdir)/
-       -$(LIBTOOL) $(INSTALL) libsilcclient.la $(DESTDIR)$(libdir)/
-       -rm -rf $(DESTDIR)$(libdir)/libsilc.a
-       -rm -rf $(DESTDIR)$(libdir)/libsilcclient.a
-endif
-#endif SILC_DIST_CLIENT
-#endif SILC_DIST_TOOLKIT
-
-LIB_BASE_VERSION=@LIB_BASE_VERSION@
-LIBSILC_CURRENT=@LIBSILC_CURRENT@
-LIBSILC_REVISION=@LIBSILC_REVISION@
-LIBSILC_AGE=@LIBSILC_AGE@
-
-libsilc.a:
-       find $(SILCLIB_DIRS) -type f -name *.lo | xargs \
-       $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) \
-       -version-info $(LIBSILC_CURRENT):$(LIBSILC_REVISION):$(LIBSILC_AGE) \
-       -release $(LIB_BASE_VERSION) -rpath $(DESTDIR)$(libdir) -o libsilc.la
-
-#ifdef SILC_DIST_CLIENTLIB
-LIBSILCCLIENT_CURRENT=@LIBSILCCLIENT_CURRENT@
-LIBSILCCLIENT_REVISION=@LIBSILCCLIENT_REVISION@
-LIBSILCCLIENT_AGE=@LIBSILCCLIENT_AGE@
+       -$(LIBTOOL) $(INSTALL) libsct.la $(DESTDIR)$(libdir)/
 
-libsilcclient.a:
-       find $(SILCCLIENTLIB_DIRS) -type f -name *.lo | xargs \
+libsct.a:
+       find $(CRYPTO_DIRS) -type f -name *.lo | xargs \
        $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) \
-       -version-info $(LIBSILCCLIENT_CURRENT):$(LIBSILCCLIENT_REVISION):$(LIBSILCCLIENT_AGE) \
-       -release $(LIB_BASE_VERSION) -rpath $(DESTDIR)$(libdir) -o libsilcclient.la
-#endif SILC_DIST_CLIENTLIB
+       $(CRYPTO_LINK_LIBS) \
+       $(LIBTOOL_CRYPTO_VERSION) \
+       $(LIBTOOL_OPTS) -o libsct.la
 
-#ifdef SILC_DIST_TOOLKIT
 pkgconfigdir = $(libdir)/pkgconfig
-pkgconfig_DATA = silc.pc silcclient.pc
+pkgconfig_DATA = sct.pc
 
-EXTRA_DIST = doc silc.pc.in silcclient.pc.in
-#endif SILC_DIST_TOOLKIT
+EXTRA_DIST = sct.pc.in
 
+include $(top_srcdir)/Makefile.defines.in