Added lib/silcapputil for SILC application specific util routines.
[silc.git] / lib / Makefile.ad
1 #
2 #  Makefile.am
3 #
4 #  Author: Pekka Riikonen <priikone@silcnet.org>
5 #
6 #  Copyright (C) 2000 - 2005 Pekka Riikonen
7 #
8 #  This program is free software; you can redistribute it and/or modify
9 #  it under the terms of the GNU General Public License as published by
10 #  the Free Software Foundation; version 2 of the License.
11 #
12 #  This program is distributed in the hope that it will be useful,
13 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
14 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 #  GNU General Public License for more details.
16 #
17
18 AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
19
20 #ifdef SILC_DIST_SFTP
21 #       silcsftp
22 #endif SILC_DIST_SFTP
23
24 # SILC Library dirs
25 SILCLIB_DIRS =          \
26         contrib         \
27         silccore        \
28         silcutil        \
29         silcapputil     \
30         silccrypt       \
31 #ifdef SILC_DIST_SKR
32         silcskr         \
33 #endif SILC_DIST_SKR
34 #ifdef SILC_DIST_MATH
35         silcmath        \
36 #endif SILC_DIST_MATH
37 #ifdef SILC_DIST_SIM
38         silcsim         \
39 #endif SILC_DIST_SIM
40 #ifdef SILC_DIST_ASN1
41         silcasn1        \
42 #endif SILC_DIST_ASN1
43         silcske         \
44 #ifdef SILC_DIST_HTTP
45         silchttp        \
46 #endif SILC_DIST_HTTP
47 #ifdef SILC_DIST_IDCACHE
48         silcvcard       \
49 #endif SILC_DIST_IDCACHE
50
51 SILCLIB = libsilc.a
52
53 #ifdef SILC_DIST_CLIENTLIB
54 # SILC Client Library dirs
55 SILCCLIENTLIB_DIRS = silcclient
56 SILCCLIENTLIB = libsilcclient.a
57 #endif SILC_DIST_CLIENTLIB
58
59 #ifdef SILC_DIST_SERVERLIB
60 # SILC Server Library dirs
61 SILCSERVERLIB_DIRS = silcserver
62 SILCSERVERLIB = libsilcserver.a
63 #endif SILC_DIST_SERVERLIB
64
65 SUBDIRS = $(SILCLIB_DIRS) $(SILCSERVERLIB_DIRS) $(SILCCLIENTLIB_DIRS)
66
67 CLEANFILES = libsilc.a libsilcclient.a libsilcserver.a
68 DISTCLEANFILES = libsilc.a libsilcclient.a libsilcserver.a
69
70 remove:
71         -rm -f libsilc.a
72         -rm -f libsilcclient.a
73         -rm -f libsilcserver.a
74
75 all:    remove $(SILCLIB) $(SILCSERVERLIB) $(SILCCLIENTLIB)
76
77 #ifdef SILC_DIST_TOOLKIT
78 install-exec-hook:
79         -mkdir -p $(DESTDIR)$(libdir)
80         -$(LIBTOOL) $(INSTALL) libsilc.la $(DESTDIR)$(libdir)/
81         -$(LIBTOOL) $(INSTALL) libsilcclient.la $(DESTDIR)$(libdir)/
82         -$(LIBTOOL) $(INSTALL) libsilcserver.la $(DESTDIR)$(libdir)/
83 #else !SILC_DIST_TOOLKIT
84
85 #ifdef SILC_DIST_SERVER
86 install-exec-hook:
87 if SILC_ENABLE_SHARED
88         -mkdir -p $(libdir)
89         -$(LIBTOOL) $(INSTALL) libsilc.la $(DESTDIR)$(libdir)/
90         -$(LIBTOOL) $(INSTALL) libsilcserver.la $(DESTDIR)$(libdir)/
91         -rm -rf $(DESTDIR)$(libdir)/libsilc.a
92         -rm -rf $(DESTDIR)$(libdir)/libsilcserver.a
93 endif
94 #endif SILC_DIST_SERVER
95
96 #ifdef SILC_DIST_CLIENT
97 install-exec-hook:
98 if SILC_ENABLE_SHARED
99         -mkdir -p $(libdir)
100         -$(LIBTOOL) $(INSTALL) libsilc.la $(DESTDIR)$(libdir)/
101         -$(LIBTOOL) $(INSTALL) libsilcclient.la $(DESTDIR)$(libdir)/
102         -rm -rf $(DESTDIR)$(libdir)/libsilc.a
103         -rm -rf $(DESTDIR)$(libdir)/libsilcclient.a
104 endif
105 #endif SILC_DIST_CLIENT
106 #endif SILC_DIST_TOOLKIT
107
108 LIB_BASE_VERSION=@LIB_BASE_VERSION@
109 LIBSILC_CURRENT=@LIBSILC_CURRENT@
110 LIBSILC_REVISION=@LIBSILC_REVISION@
111 LIBSILC_AGE=@LIBSILC_AGE@
112
113 libsilc.a:
114         find $(SILCLIB_DIRS) -type f -name *.lo | xargs \
115         $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) \
116         -version-info $(LIBSILC_CURRENT):$(LIBSILC_REVISION):$(LIBSILC_AGE) \
117         -release $(LIB_BASE_VERSION) -rpath $(DESTDIR)$(libdir) -o libsilc.la
118
119 #ifdef SILC_DIST_CLIENTLIB
120 LIBSILCCLIENT_CURRENT=@LIBSILCCLIENT_CURRENT@
121 LIBSILCCLIENT_REVISION=@LIBSILCCLIENT_REVISION@
122 LIBSILCCLIENT_AGE=@LIBSILCCLIENT_AGE@
123
124 libsilcclient.a:
125         find $(SILCCLIENTLIB_DIRS) -type f -name *.lo | xargs \
126         $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) \
127         -version-info $(LIBSILCCLIENT_CURRENT):$(LIBSILCCLIENT_REVISION):$(LIBSILCCLIENT_AGE) \
128         -release $(LIB_BASE_VERSION) -rpath $(DESTDIR)$(libdir) -o libsilcclient.la
129 #endif SILC_DIST_CLIENTLIB
130
131 #ifdef SILC_DIST_SERVERLIB
132 LIBSILCSERVER_CURRENT=@LIBSILCSERVER_CURRENT@
133 LIBSILCSERVER_REVISION=@LIBSILCSERVER_REVISION@
134 LIBSILCSERVER_AGE=@LIBSILCSERVER_AGE@
135
136 libsilcserver.a:
137         find $(SILCSERVERLIB_DIRS) -type f -name *.lo | xargs \
138         $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(LDFLAGS) \
139         -version-info $(LIBSILCSERVER_CURRENT):$(LIBSILCSERVER_REVISION):$(LIBSILCSERVER_AGE) \
140         -release $(LIB_BASE_VERSION) -rpath $(DESTDIR)$(libdir) -o libsilcserver.la
141 #endif SILC_DIST_SERVERLIB
142
143 #ifdef SILC_DIST_TOOLKIT
144 pkgconfigdir = $(libdir)/pkgconfig
145 pkgconfig_DATA = silc.pc silcclient.pc silcserver.pc
146
147 EXTRA_DIST = silc.pc.in silcclient.pc.in silcserver.pc.in
148 #endif SILC_DIST_TOOLKIT
149
150 #ifdef SILC_DIST_TOOLKIT
151 toolkit-install:
152         -mkdir -p $(docdir)/toolkit/
153         -$(INSTALL_DATA) $(top_srcdir)/doc/toolkit/* $(docdir)/toolkit
154         -$(INSTALL_DATA) $(top_srcdir)/lib/doc/*.gif $(docdir)/toolkit
155         -cp -R $(top_srcdir)/tutorial $(docdir)
156 #endif SILC_DIST_TOOLKIT
157
158 install-data-hook:      \
159 #ifdef SILC_DIST_TOOLKIT
160         toolkit-install
161 #endif SILC_DIST_TOOLKIT
162
163 include $(top_srcdir)/Makefile.defines.in