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