https://bugs.internet2.edu/jira/browse/SSPCPP-365
[shibboleth/sp.git] / shibsp / Makefile.am
1 AUTOMAKE_OPTIONS = foreign
2
3 lib_LTLIBRARIES = libshibsp.la libshibsp-lite.la
4
5 libshibspincludedir = $(includedir)/shibsp
6
7 attrincludedir = $(includedir)/shibsp/attribute
8
9 attrresincludedir = $(includedir)/shibsp/attribute/resolver
10
11 attrfiltincludedir = $(includedir)/shibsp/attribute/filtering
12
13 bindincludedir = $(includedir)/shibsp/binding
14
15 handincludedir = $(includedir)/shibsp/handler
16
17 liteincludedir = $(includedir)/shibsp/lite
18
19 mdincludedir = $(includedir)/shibsp/metadata
20
21 remincludedir = $(includedir)/shibsp/remoting
22
23 secincludedir = $(includedir)/shibsp/security
24
25 utilincludedir = $(includedir)/shibsp/util
26
27 libshibspinclude_HEADERS = \
28         AbstractSPRequest.h \
29         AccessControl.h \
30         Application.h \
31         base.h \
32         config_pub.h \
33         exceptions.h \
34         paths.h \
35         GSSRequest.h \
36         RequestMapper.h \
37         ServiceProvider.h \
38         SessionCache.h \
39         SessionCacheEx.h \
40         SPConfig.h \
41         SPRequest.h \
42         TransactionLog.h \
43         version.h
44
45 attrinclude_HEADERS = \
46         attribute/Attribute.h \
47         attribute/AttributeDecoder.h \
48         attribute/BinaryAttribute.h \
49         attribute/ExtensibleAttribute.h \
50         attribute/NameIDAttribute.h \
51         attribute/ScopedAttribute.h \
52         attribute/SimpleAttribute.h \
53         attribute/XMLAttribute.h
54
55 attrfiltinclude_HEADERS = \
56         attribute/filtering/AttributeFilter.h \
57         attribute/filtering/BasicFilteringContext.h \
58         attribute/filtering/FilteringContext.h \
59         attribute/filtering/FilterPolicyContext.h \
60         attribute/filtering/MatchFunctor.h
61
62 attrresinclude_HEADERS = \
63         attribute/resolver/AttributeExtractor.h \
64         attribute/resolver/AttributeResolver.h \
65         attribute/resolver/ResolutionContext.h
66
67 bindinclude_HEADERS = \
68         binding/ArtifactResolver.h \
69         binding/ProtocolProvider.h \
70         binding/SOAPClient.h
71
72 handinclude_HEADERS = \
73         handler/AbstractHandler.h \
74         handler/AssertionConsumerService.h \
75         handler/Handler.h \
76         handler/LogoutHandler.h \
77         handler/LogoutInitiator.h \
78         handler/RemotedHandler.h \
79         handler/SessionInitiator.h
80
81 liteinclude_HEADERS = \
82         lite/CommonDomainCookie.h \
83         lite/SAMLConstants.h
84
85 mdinclude_HEADERS = \
86         metadata/MetadataExt.h \
87         metadata/MetadataProviderCriteria.h
88
89 reminclude_HEADERS = \
90         remoting/ddf.h \
91         remoting/ListenerService.h
92         
93 secinclude_HEADERS = \
94         security/PKIXTrustEngine.h \
95         security/SecurityPolicy.h \
96         security/SecurityPolicyProvider.h
97
98 utilinclude_HEADERS = \
99         util/CGIParser.h \
100         util/DOMPropertySet.h \
101         util/PropertySet.h \
102         util/SPConstants.h \
103         util/TemplateParameters.h
104
105 noinst_HEADERS = \
106         internal.h \
107         remoting/impl/SocketListener.h
108
109 common_sources = \
110         AbstractSPRequest.cpp \
111         Application.cpp \
112         ServiceProvider.cpp \
113         SPConfig.cpp \
114     version.cpp \
115         attribute/Attribute.cpp \
116         attribute/BinaryAttribute.cpp \
117         attribute/ExtensibleAttribute.cpp \
118         attribute/NameIDAttribute.cpp \
119         attribute/SimpleAttribute.cpp \
120         attribute/ScopedAttribute.cpp \
121         attribute/XMLAttribute.cpp \
122         binding/impl/XMLProtocolProvider.cpp \
123         handler/impl/AbstractHandler.cpp \
124         handler/impl/AssertionConsumerService.cpp \
125         handler/impl/AssertionLookup.cpp \
126         handler/impl/ChainingLogoutInitiator.cpp \
127         handler/impl/ChainingSessionInitiator.cpp \
128         handler/impl/CookieSessionInitiator.cpp \
129         handler/impl/DiscoveryFeed.cpp \
130         handler/impl/FormSessionInitiator.cpp \
131         handler/impl/LocalLogoutInitiator.cpp \
132         handler/impl/LogoutHandler.cpp \
133         handler/impl/LogoutInitiator.cpp \
134         handler/impl/MetadataGenerator.cpp \
135         handler/impl/RemotedHandler.cpp \
136         handler/impl/StatusHandler.cpp \
137         handler/impl/SessionHandler.cpp \
138         handler/impl/SAML1Consumer.cpp \
139         handler/impl/SAML2Consumer.cpp \
140         handler/impl/SAML2ArtifactResolution.cpp \
141         handler/impl/SAML2Logout.cpp \
142         handler/impl/SAML2LogoutInitiator.cpp \
143         handler/impl/SAML2NameIDMgmt.cpp \
144         handler/impl/SAML2SessionInitiator.cpp \
145         handler/impl/SAMLDSSessionInitiator.cpp \
146         handler/impl/SessionInitiator.cpp \
147         handler/impl/Shib1SessionInitiator.cpp \
148         handler/impl/TransformSessionInitiator.cpp \
149         handler/impl/WAYFSessionInitiator.cpp \
150         impl/ChainingAccessControl.cpp \
151     impl/StorageServiceSessionCache.cpp \
152         impl/XMLAccessControl.cpp \
153         impl/XMLRequestMapper.cpp \
154         impl/XMLServiceProvider.cpp \
155         remoting/impl/ddf.cpp \
156         remoting/impl/ListenerService.cpp \
157         remoting/impl/SocketListener.cpp \
158         remoting/impl/TCPListener.cpp \
159         remoting/impl/UnixListener.cpp \
160         util/CGIParser.cpp \
161         util/DOMPropertySet.cpp \
162         util/SPConstants.cpp \
163         util/TemplateParameters.cpp
164
165 libshibsp_lite_la_SOURCES = \
166         ${common_sources} \
167         lite/CommonDomainCookie.cpp \
168         lite/SAMLConstants.cpp
169
170 libshibsp_la_SOURCES = \
171         ${common_sources} \
172         attribute/Base64AttributeDecoder.cpp \
173         attribute/DOMAttributeDecoder.cpp \
174         attribute/KeyInfoAttributeDecoder.cpp \
175         attribute/NameIDAttributeDecoder.cpp \
176         attribute/NameIDFromScopedAttributeDecoder.cpp \
177         attribute/ScopedAttributeDecoder.cpp \
178         attribute/StringAttributeDecoder.cpp \
179         attribute/XMLAttributeDecoder.cpp \
180         attribute/filtering/impl/AttributeFilter.cpp \
181         attribute/filtering/impl/ChainingAttributeFilter.cpp \
182         attribute/filtering/impl/DummyAttributeFilter.cpp \
183         attribute/filtering/impl/XMLAttributeFilter.cpp \
184         attribute/filtering/impl/BasicFilteringContext.cpp \
185         attribute/filtering/impl/MatchFunctor.cpp \
186         attribute/filtering/impl/AndMatchFunctor.cpp \
187         attribute/filtering/impl/AnyMatchFunctor.cpp \
188         attribute/filtering/impl/NotMatchFunctor.cpp \
189         attribute/filtering/impl/OrMatchFunctor.cpp \
190         attribute/filtering/impl/AttributeIssuerStringFunctor.cpp \
191         attribute/filtering/impl/AttributeRequesterStringFunctor.cpp \
192         attribute/filtering/impl/AttributeScopeStringFunctor.cpp \
193         attribute/filtering/impl/AttributeValueStringFunctor.cpp \
194         attribute/filtering/impl/AuthenticationMethodStringFunctor.cpp \
195         attribute/filtering/impl/AttributeIssuerRegexFunctor.cpp \
196         attribute/filtering/impl/AttributeRequesterRegexFunctor.cpp \
197         attribute/filtering/impl/AttributeScopeRegexFunctor.cpp \
198         attribute/filtering/impl/AttributeValueRegexFunctor.cpp \
199         attribute/filtering/impl/AuthenticationMethodRegexFunctor.cpp \
200         attribute/filtering/impl/NameIDQualifierStringFunctor.cpp \
201         attribute/filtering/impl/NumberOfAttributeValuesFunctor.cpp \
202         attribute/filtering/impl/AttributeIssuerInEntityGroupFunctor.cpp \
203         attribute/filtering/impl/AttributeRequesterInEntityGroupFunctor.cpp \
204         attribute/filtering/impl/AttributeScopeMatchesShibMDScopeFunctor.cpp \
205         attribute/resolver/impl/ChainingAttributeResolver.cpp \
206         attribute/resolver/impl/QueryAttributeResolver.cpp \
207         attribute/resolver/impl/SimpleAggregationAttributeResolver.cpp \
208         attribute/resolver/impl/ChainingAttributeExtractor.cpp \
209         attribute/resolver/impl/DelegationAttributeExtractor.cpp \
210         attribute/resolver/impl/KeyDescriptorAttributeExtractor.cpp \
211         attribute/resolver/impl/XMLAttributeExtractor.cpp \
212         binding/impl/ArtifactResolver.cpp \
213         binding/impl/SOAPClient.cpp \
214         impl/XMLSecurityPolicyProvider.cpp \
215         metadata/DynamicMetadataProvider.cpp \
216         metadata/MetadataExtImpl.cpp \
217         metadata/MetadataExtSchemaValidators.cpp \
218         metadata/MetadataProviderCriteria.cpp \
219         security/PKIXTrustEngine.cpp \
220         security/SecurityPolicy.cpp
221
222 # this is different from the project version
223 # http://sources.redhat.com/autobook/autobook/autobook_91.html
224 libshibsp_la_LDFLAGS = -version-info 6:0:0
225 libshibsp_la_LIBADD = $(XMLSEC_LIBS)
226 libshibsp_lite_la_LDFLAGS = -version-info 6:0:0
227 libshibsp_lite_la_LIBADD = $(LITE_LIBS)
228 libshibsp_lite_la_CPPFLAGS = -DSHIBSP_LITE
229
230 pkgsysconfdir = $(sysconfdir)/@PACKAGE_NAME@
231 pkgxmldir = $(datadir)/xml/@PACKAGE_NAME@
232 logdir = ${localstatedir}/log
233 rundir = $(localstatedir)/run
234 xmldir = $(datadir)/xml
235
236 paths.h: ${srcdir}/paths.h.in Makefile ${top_builddir}/config.status
237         rm -f $@.tmp
238         sed < ${srcdir}/$@.in > $@.tmp \
239             -e 's:@-PREFIX-@:${prefix}:g' \
240         -e 's:@-LIBDIR-@:${libdir}:g' \
241         -e 's:@-SYSCONFDIR-@:${sysconfdir}:g' \
242         -e 's:@-LOGDIR-@:${logdir}:g' \
243         -e 's:@-RUNDIR-@:${rundir}:g' \
244         -e 's:@-XMLDIR-@:${xmldir}:g' \
245             -e 's:@-PKGSYSCONFDIR-@:${pkgsysconfdir}:g' \
246             -e 's:@-PKGXMLDIR-@:${pkgxmldir}:g' \
247             -e 's:@-XMLTOOLINGXMLDIR-@:${XMLTOOLINGXMLDIR}:g' \
248             -e 's:@-OPENSAMLXMLDIR-@:${OPENSAMLXMLDIR}:g'
249         cmp -s $@ $@.tmp || mv $@.tmp $@
250         rm -f $@.tmp
251
252 install-exec-hook:
253         for la in $(lib_LTLIBRARIES) ; do rm -f $(DESTDIR)$(libdir)/$$la ; done
254
255 EXTRA_DIST = \
256         shibsp.vcxproj \
257         shibsp-lite.vcxproj \
258         shibsp.vcxproj.filters \
259         shibsp-lite.vcxproj.filters \
260         config_pub.h.in \
261     config_pub_win32.h\
262         paths.h.in \
263         resource.h \
264         shibsp.rc
265 BUILT_SOURCES = paths.h