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