allow building without libmoonshot
[mech_eap.git] / mech_eap / Makefile.am
1 AUTOMAKE_OPTIONS = foreign
2
3 EXTRA_DIST = gsseap_err.et radsec_err.et \
4         mech_eap.exports mech_eap-noacceptor.exports 
5
6 gssincludedir = $(includedir)/gssapi
7 gssinclude_HEADERS = gssapi_eap.h
8
9 EAP_CFLAGS = -I$(srcdir)/../libeap/src -I$(srcdir)/../libeap/src/common -I$(srcdir)/../libeap/src/eap_common  \
10         -I$(srcdir)/../libeap/src/utils
11
12 if GSSEAP_ENABLE_ACCEPTOR
13 GSSEAP_EXPORTS = mech_eap.exports
14 else
15 GSSEAP_EXPORTS = mech_eap-noacceptor.exports
16 endif
17
18 gssdir = $(libdir)/gss
19 gss_LTLIBRARIES = mech_eap.la
20
21 if TARGET_WINDOWS
22 EAP_CFLAGS += -DCONFIG_WIN32_DEFAULTS -DUSE_INTERNAL_CRYPTO
23 OS_LIBS = -lshell32 -ladvapi32 -lws2_32 -lcomerr32
24 mech_eap_la_CFLAGS   = -Zi
25 mech_eap_la_CXXFLAGS = -Zi
26 else
27 EAP_CFLAGS += -DEAP_TLS -DEAP_PEAP -DEAP_TTLS -DEAP_MD5 -DEAP_MSCHAPv2 -DEAP_GTC -DEAP_OTP -DEAP_LEAP -DEAP_PSK -DEAP_PAX -DEAP_SAKE -DEAP_GPSK -DEAP_GPSK_SHA256 -DEAP_SERVER_IDENTITY -DEAP_SERVER_TLS -DEAP_SERVER_PEAP -DEAP_SERVER_TTLS -DEAP_SERVER_MD5 -DEAP_SERVER_MSCHAPV2 -DEAP_SERVER_GTC -DEAP_SERVER_PSK -DEAP_SERVER_PAX -DEAP_SERVER_SAKE -DEAP_SERVER_GPSK -DEAP_SERVER_GPSK_SHA256 -DIEEE8021X_EAPOL
28 OS_LIBS =
29 mech_eap_la_CFLAGS   = -Werror -Wall -Wunused-parameter
30 mech_eap_la_CXXFLAGS = -Werror -Wall -Wunused-parameter
31 endif
32 mech_eap_la_DEPENDENCIES = $(GSSEAP_EXPORTS)
33
34 mech_eap_la_CPPFLAGS = -DBUILD_GSSEAP_LIB -DSYSCONFDIR=\"${sysconfdir}\" -DDATAROOTDIR=\"${datarootdir}\"
35 mech_eap_la_CFLAGS   += \
36                         @KRB5_CFLAGS@ @RADSEC_CFLAGS@ @TARGET_CFLAGS@ $(EAP_CFLAGS)
37 mech_eap_la_CXXFLAGS += \
38                         @KRB5_CFLAGS@ @RADSEC_CFLAGS@ \
39                         @OPENSAML_CXXFLAGS@ @SHIBRESOLVER_CXXFLAGS@ @SHIBSP_CXXFLAGS@ \
40                         @TARGET_CFLAGS@ $(EAP_CFLAGS)
41 mech_eap_la_LDFLAGS  = -avoid-version -module \
42                         -export-symbols $(GSSEAP_EXPORTS) -no-undefined \
43                         @RADSEC_LDFLAGS@ @TARGET_LDFLAGS@
44 if TARGET_WINDOWS
45 mech_eap_la_LDFLAGS += -debug
46 endif
47
48 mech_eap_la_LIBADD   = @KRB5_LIBS@ ../libeap/libeap.la @RADSEC_LIBS@ \
49                        @OPENSAML_LIBS@ @SHIBRESOLVER_LIBS@ @SHIBSP_LIBS@ @JANSSON_LIBS@
50 mech_eap_la_SOURCES =                           \
51         acquire_cred.c                          \
52         acquire_cred_with_password.c            \
53         add_cred.c                              \
54         add_cred_with_password.c                \
55         authorize_localname.c                   \
56         canonicalize_name.c                     \
57         compare_name.c                          \
58         context_time.c                          \
59         delete_sec_context.c                    \
60         display_name.c                          \
61         display_name_ext.c                      \
62         display_status.c                        \
63         duplicate_name.c                        \
64         eap_mech.c                              \
65         exchange_meta_data.c                    \
66         export_name.c                           \
67         export_sec_context.c                    \
68         get_mic.c                               \
69         gsseap_err.c                            \
70         import_name.c                           \
71         import_sec_context.c                    \
72         indicate_mechs.c                        \
73         init_sec_context.c                      \
74         inquire_attrs_for_mech.c                \
75         inquire_context.c                       \
76         inquire_cred.c                          \
77         inquire_cred_by_mech.c                  \
78         inquire_cred_by_oid.c                   \
79         inquire_mech_for_saslname.c             \
80         inquire_mechs_for_name.c                \
81         inquire_names_for_mech.c                \
82         inquire_saslname_for_mech.c             \
83         inquire_sec_context_by_oid.c            \
84         process_context_token.c                 \
85         pseudo_random.c                         \
86         query_mechanism_info.c                  \
87         query_meta_data.c                       \
88         radsec_err.c                            \
89         release_cred.c                          \
90         release_name.c                          \
91         release_oid.c                           \
92         set_cred_option.c                       \
93         set_sec_context_option.c                \
94         store_cred.c                            \
95         unwrap.c                                \
96         unwrap_iov.c                            \
97         util_buffer.c                           \
98         util_context.c                          \
99         util_cksum.c                            \
100         util_cred.c                             \
101         util_crypt.c                            \
102         util_krb.c                              \
103         util_lucid.c                            \
104         util_mech.c                             \
105         util_name.c                             \
106         util_oid.c                              \
107         util_ordering.c                         \
108         util_sm.c                               \
109         util_tld.c                              \
110         util_token.c                            \
111         verify_mic.c                            \
112         wrap.c                                  \
113         wrap_iov.c                              \
114         wrap_iov_length.c                       \
115         wrap_size_limit.c \
116         gssapiP_eap.h \
117         util_attr.h \
118         util_base64.h \
119         util.h \
120         util_json.h \
121         util_radius.h \
122         util_reauth.h \
123         util_saml.h \
124         util_shib.h
125
126 if LIBMOONSHOT
127 mech_eap_la_SOURCES += util_moonshot.c
128 mech_eap_la_CFLAGS  += @LIBMOONSHOT_CFLAGS@
129 mech_eap_la_LDFLAGS += @LIBMOONSHOT_LDFLAGS@
130 mech_eap_la_LIBADD  += @LIBMOONSHOT_LIBS@
131 endif
132
133 if GSSEAP_ENABLE_ACCEPTOR
134
135 mech_eap_la_SOURCES +=                          \
136         accept_sec_context.c                    \
137         delete_name_attribute.c                 \
138         export_name_composite.c                 \
139         get_name_attribute.c                    \
140         inquire_name.c                          \
141         map_name_to_any.c                       \
142         release_any_name_mapping.c              \
143         set_name_attribute.c                    \
144         util_attr.cpp                           \
145         util_base64.c                           \
146         util_json.cpp                           \
147         util_radius.cpp
148
149 if OPENSAML
150 mech_eap_la_SOURCES += util_saml.cpp
151 endif
152
153 if SHIBRESOLVER
154 mech_eap_la_SOURCES += util_shib.cpp
155 endif
156
157 endif
158
159 BUILT_SOURCES = gsseap_err.c radsec_err.c gsseap_err.h radsec_err.h
160
161 if GSSEAP_ENABLE_REAUTH
162 mech_eap_la_SOURCES += util_reauth.c
163
164 if !HEIMDAL
165 krb5pluginsdir = $(libdir)/krb5/plugins/authdata
166 krb5plugins_LTLIBRARIES = radius_ad.la
167
168 radius_ad_la_CFLAGS  = -Werror -Wall -Wunused-parameter \
169                         @KRB5_CFLAGS@ $(EAP_CFLAGS) @RADSEC_CFLAGS@ @TARGET_CFLAGS@
170 radius_ad_la_LDFLAGS = -avoid-version -module \
171                        -export-symbols radius_ad.exports -no-undefined
172 radius_ad_la_LIBADD  = @KRB5_LIBS@
173 radius_ad_la_SOURCES = util_adshim.c authdata_plugin.h
174 endif
175 endif
176
177 gsseap_err.h gsseap_err.c: gsseap_err.et
178         $(COMPILE_ET) $<
179
180 radsec_err.h radsec_err.c: radsec_err.et
181         $(COMPILE_ET) $<
182
183 radsec_err.c: radsec_err.h
184
185 clean-generic:
186         rm -f gsseap_err.[ch] radsec_err.[ch]