1# Makefile.am for the SASL plugins 2# Rob Siemborski 3# Rob Earhart 4# $Id: Makefile.am,v 1.6 2006/01/24 20:37:09 snsimon Exp $ 5# 6################################################################ 7# Copyright (c) 2000 Carnegie Mellon University. All rights reserved. 8# 9# Redistribution and use in source and binary forms, with or without 10# modification, are permitted provided that the following conditions 11# are met: 12# 13# 1. Redistributions of source code must retain the above copyright 14# notice, this list of conditions and the following disclaimer. 15# 16# 2. Redistributions in binary form must reproduce the above copyright 17# notice, this list of conditions and the following disclaimer in 18# the documentation and/or other materials provided with the 19# distribution. 20# 21# 3. The name "Carnegie Mellon University" must not be used to 22# endorse or promote products derived from this software without 23# prior written permission. For permission or any other legal 24# details, please contact 25# Office of Technology Transfer 26# Carnegie Mellon University 27# 5000 Forbes Avenue 28# Pittsburgh, PA 15213-3890 29# (412) 268-4387, fax: (412) 268-7395 30# tech-transfer@andrew.cmu.edu 31# 32# 4. Redistributions of any form whatsoever must retain the following 33# acknowledgment: 34# "This product includes software developed by Computing Services 35# at Carnegie Mellon University (http://www.cmu.edu/computing/)." 36# 37# CARNEGIE MELLON UNIVERSITY DISCLAIMS ALL WARRANTIES WITH REGARD TO 38# THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 39# AND FITNESS, IN NO EVENT SHALL CARNEGIE MELLON UNIVERSITY BE LIABLE 40# FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 41# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN 42# AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING 43# OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 44# 45################################################################ 46 47# Library version info - here at the top, for sanity 48# CURRENT:REVISION:AGE 49anonymous_version = 2:22:0 50digestmd5_version = 2:22:0 51kerberos4_version = 2:22:0 52gssapiv2_version = 2:22:0 53crammd5_version = 2:22:0 54passdss_version = 2:22:0 55sasldb_version = 2:22:0 56login_version = 2:22:0 57plain_version = 2:22:0 58ntlm_version = 2:22:0 59otp_version = 2:22:0 60sql_version = 2:22:0 61ldapdb_version = 2:22:0 62srp_version = 2:22:0 63 64INCLUDES=-I$(top_srcdir)/include -I$(top_srcdir)/lib -I$(top_srcdir)/sasldb -I$(top_builddir)/include 65AM_LDFLAGS = -module -export-dynamic -rpath $(plugindir) 66 67COMPAT_OBJS = @LTGETADDRINFOOBJS@ @LTGETNAMEINFOOBJS@ @LTSNPRINTFOBJS@ 68 69EXTRA_DIST = makeinit.sh NTMakefile 70noinst_SCRIPTS = makeinit.sh 71 72LIB_MYSQL = @LIB_MYSQL@ 73 74plugindir = @plugindir@ 75 76common_sources = plugin_common.c plugin_common.h 77 78sasldir = $(prefix)/lib/sasl2 79sasl_LTLIBRARIES = @SASL_MECHS@ 80EXTRA_LTLIBRARIES = libplain.la libanonymous.la libkerberos4.la libcrammd5.la \ 81 libgssapiv2.la libdigestmd5.la liblogin.la libsrp.la libotp.la \ 82 libntlm.la libpassdss.la libsasldb.la libsql.la libldapdb.la 83 84libplain_la_SOURCES = plain.c plain_init.c $(common_sources) 85libplain_la_LDFLAGS = -version-info $(plain_version) 86libplain_la_DEPENDENCIES = $(COMPAT_OBJS) 87libplain_la_LIBADD = $(PLAIN_LIBS) $(COMPAT_OBJS) 88 89libanonymous_la_SOURCES = anonymous.c anonymous_init.c $(common_sources) 90libanonymous_la_LDFLAGS = -version-info $(anonymous_version) 91libanonymous_la_DEPENDENCIES = $(COMPAT_OBJS) 92libanonymous_la_LIBADD = $(COMPAT_OBJS) 93 94libkerberos4_la_SOURCES = kerberos4.c kerberos4_init.c $(common_sources) 95libkerberos4_la_LDFLAGS = -version-info $(kerberos4_version) 96libkerberos4_la_DEPENDENCIES = $(COMPAT_OBJS) 97libkerberos4_la_LIBADD = $(SASL_KRB_LIB) $(LIB_SOCKET) $(COMPAT_OBJS) 98 99libgssapiv2_la_SOURCES = gssapi.c gssapiv2_init.c $(common_sources) 100libgssapiv2_la_LDFLAGS = -version-info $(gssapiv2_version) 101libgssapiv2_la_DEPENDENCIES = $(COMPAT_OBJS) 102libgssapiv2_la_LIBADD = $(GSSAPIBASE_LIBS) $(GSSAPI_LIBS) $(LIB_SOCKET) $(COMPAT_OBJS) 103 104libcrammd5_la_SOURCES = cram.c crammd5_init.c $(common_sources) 105libcrammd5_la_LDFLAGS = -version-info $(crammd5_version) 106libcrammd5_la_DEPENDENCIES = $(COMPAT_OBJS) 107libcrammd5_la_LIBADD = $(COMPAT_OBJS) 108 109libdigestmd5_la_SOURCES = digestmd5.c digestmd5_init.c $(common_sources) 110libdigestmd5_la_LDFLAGS = -version-info $(digestmd5_version) 111libdigestmd5_la_DEPENDENCIES = $(COMPAT_OBJS) 112libdigestmd5_la_LIBADD = $(LIB_DES) $(LIB_SOCKET) $(COMPAT_OBJS) 113 114liblogin_la_SOURCES = login.c login_init.c $(common_sources) 115liblogin_la_LDFLAGS = -version-info $(login_version) 116liblogin_la_DEPENDENCIES = $(COMPAT_OBJS) 117liblogin_la_LIBADD = $(PLAIN_LIBS) $(COMPAT_OBJS) 118 119libsrp_la_SOURCES = srp.c srp_init.c $(common_sources) 120libsrp_la_LDFLAGS = -version-info $(srp_version) 121libsrp_la_DEPENDENCIES = $(COMPAT_OBJS) 122libsrp_la_LIBADD = $(SRP_LIBS) $(COMPAT_OBJS) 123 124libotp_la_SOURCES = otp.c otp_init.c otp.h $(common_sources) 125libotp_la_LDFLAGS = -version-info $(otp_version) 126libotp_la_DEPENDENCIES = $(COMPAT_OBJS) 127libotp_la_LIBADD = $(OTP_LIBS) $(COMPAT_OBJS) 128 129libntlm_la_SOURCES = ntlm.c ntlm_init.c $(common_sources) 130libntlm_la_LDFLAGS = -version-info $(ntlm_version) 131libntlm_la_DEPENDENCIES = $(COMPAT_OBJS) 132libntlm_la_LIBADD = $(NTLM_LIBS) $(COMPAT_OBJS) 133 134libpassdss_la_SOURCES = passdss.c passdss_init.c $(common_sources) 135libpassdss_la_LDFLAGS = -version-info $(passdss_version) 136libpassdss_la_DEPENDENCIES = $(COMPAT_OBJS) 137libpassdss_la_LIBADD = $(PASSDSS_LIBS) $(COMPAT_OBJS) 138 139# Auxprop Plugins 140libsasldb_la_SOURCES = sasldb.c sasldb_init.c $(common_sources) 141libsasldb_la_LDFLAGS = -version-info $(sasldb_version) 142libsasldb_la_DEPENDENCIES = $(COMPAT_OBJS) 143libsasldb_la_LIBADD = ../sasldb/libsasldb.la $(SASL_DB_LIB) $(COMPAT_OBJS) 144 145libldapdb_la_SOURCES = ldapdb.c ldapdb_init.c $(common_sources) 146libldapdb_la_LDFLAGS = $(LIB_LDAP) -version-info $(ldapdb_version) 147libldapdb_la_DEPENDENCIES = $(COMPAT_OBJS) 148libldapdb_la_LIBADD = $(COMPAT_OBJS) 149 150libsql_la_SOURCES = sql.c sql_init.c $(common_sources) 151libsql_la_LDFLAGS = $(LIB_MYSQL) $(LIB_PGSQL) $(LIB_SQLITE) -version-info $(sql_version) 152libsql_la_DEPENDENCIES = $(COMPAT_OBJS) 153libsql_la_LIBADD = $(COMPAT_OBJS) 154 155 156# Instructions for making the _init files 157 158init_src=anonymous_init.c crammd5_init.c digestmd5_init.c gssapiv2_init.c \ 159kerberos4_init.c login_init.c plain_init.c srp_init.c otp_init.c ntlm_init.c \ 160passdss_init.c sasldb_init.c sql_init.c ldapdb_init.c 161 162 163CLEANFILES=$(init_src) 164 165${init_src}: $(srcdir)/makeinit.sh 166 $(SHELL) $(srcdir)/makeinit.sh 167 168# Compatibility function build rules (they build in lib/) 169$(COMPAT_OBJS): 170 rm -f $(COMPAT_OBJS) 171 cd ../lib; $(MAKE) $(COMPAT_OBJS) 172 for file in $(COMPAT_OBJS); do ln -s ../lib/$$file .; done 173 174 175