https://bugs.internet2.edu/jira/browse/SSPCPP-293
[shibboleth/sp.git] / configs / Makefile.am
1 ## $Id$ 
2
3 AUTOMAKE_OPTIONS = foreign
4
5 pkglibdir = ${libdir}/@PACKAGE@
6 pkglogdir = ${localstatedir}/log/@PACKAGE@
7 pkgdocdir = $(datadir)/doc/@PACKAGE@-@PACKAGE_VERSION@
8 shirelogdir = ${localstatedir}/log/httpd
9 pkgxmldir = $(datadir)/xml/@PACKAGE@
10 pkgrundir = $(localstatedir)/run/@PACKAGE@
11 pkgsysconfdir = $(sysconfdir)/@PACKAGE@
12 pkgsysconf_DATA = \
13         shibd-redhat \
14         shibd-suse \
15         shibd-debian \
16         shibd-osx.plist \
17         apache.config \
18         apache2.config \
19         apache22.config \
20         keygen.sh \
21         metagen.sh \
22         upgrade.xsl
23
24 # The config files are installed "special".  Unlike the entries in
25 # pkgsysconf_DATA, these files are installed as "foo.dist" and only
26 # installed as "foo" if "foo" does not already exist.  In other words,
27 # the config files will not overwrite existing versions.
28 BUILTCONFIGFILES = \
29         native.logger \
30         shibd.logger
31
32 # While BUILTCONFIGFILES are processed, these are not; so we should pull
33 # them from SRCDIR.
34 CONFIGFILES = \
35         shibboleth2.xml \
36         attribute-map.xml \
37         attribute-policy.xml \
38         security-policy.xml \
39         example-metadata.xml \
40         console.logger \
41         syslog.logger \
42         accessError.html \
43         sessionError.html \
44         metadataError.html \
45         bindingTemplate.html \
46         discoveryTemplate.html \
47     postTemplate.html \
48         localLogout.html \
49         globalLogout.html \
50         partialLogout.html \
51         sslError.html
52
53 #
54 # Some of these need building
55 #
56 do-build-file:
57         rm -f ${FILE}.tmp
58         sed < ${srcdir}/${FILE}.in > ${FILE}.tmp \
59         -e 's:@-PREFIX-@:${prefix}:g' \
60         -e 's:@-PKGLIBDIR-@:${pkglibdir}:g' \
61         -e 's:@-PKGSYSCONFDIR-@:${pkgsysconfdir}:g' \
62         -e 's:@-PKGDOCDIR-@:${pkgdocdir}:g' \
63         -e 's:@-PKGXMLDIR-@:${pkgxmldir}:g' \
64         -e 's:@-PKGLOGDIR-@:${pkglogdir}:g' \
65         -e 's:@-SHIRELOGDIR-@:${shirelogdir}:g' \
66         -e 's:@-PKGRUNDIR-@:${pkgrundir}:g'
67         cmp -s ${FILE} ${FILE}.tmp || mv ${FILE}.tmp ${FILE}
68         rm -f ${FILE}.tmp
69
70 apache.config: ${srcdir}/apache.config.in Makefile ${top_builddir}/config.status
71         $(MAKE) do-build-file FILE=$@
72
73 apache2.config: ${srcdir}/apache2.config.in Makefile ${top_builddir}/config.status
74         $(MAKE) do-build-file FILE=$@
75
76 apache22.config: ${srcdir}/apache22.config.in Makefile ${top_builddir}/config.status
77         $(MAKE) do-build-file FILE=$@
78
79 shibd-redhat: ${srcdir}/shibd-redhat.in Makefile ${top_builddir}/config.status
80         $(MAKE) do-build-file FILE=$@
81
82 shibd-suse: ${srcdir}/shibd-suse.in Makefile ${top_builddir}/config.status
83         $(MAKE) do-build-file FILE=$@
84
85 shibd-debian: ${srcdir}/shibd-debian.in Makefile ${top_builddir}/config.status
86         $(MAKE) do-build-file FILE=$@
87
88 shibd-osx.plist: ${srcdir}/shibd-osx.plist.in Makefile ${top_builddir}/config.status
89         $(MAKE) do-build-file FILE=$@
90
91 shibd.logger: ${srcdir}/shibd.logger.in Makefile ${top_builddir}/config.status
92         $(MAKE) do-build-file FILE=$@
93
94 native.logger: ${srcdir}/native.logger.in Makefile ${top_builddir}/config.status
95         $(MAKE) do-build-file FILE=$@
96
97 all-data-local: $(BUILTCONFIGFILES)
98
99 install-data-local:     all-data-local
100         $(mkinstalldirs) $(DESTDIR)$(pkglogdir)
101         $(mkinstalldirs) $(DESTDIR)$(pkgdocdir)
102         $(mkinstalldirs) $(DESTDIR)$(shirelogdir)
103         $(mkinstalldirs) $(DESTDIR)$(pkgrundir)
104         $(mkinstalldirs) $(DESTDIR)$(pkgxmldir)
105         $(mkinstalldirs) $(DESTDIR)$(pkgsysconfdir)
106         for f in $(BUILTCONFIGFILES); do \
107                 if test ! -f $(DESTDIR)${pkgsysconfdir}/$$f; then \
108                         $(INSTALL_DATA) $$f $(DESTDIR)${pkgsysconfdir}; \
109                 fi; \
110                 $(INSTALL_DATA) $$f $(DESTDIR)${pkgsysconfdir}/$$f.dist; \
111         done
112         for f in $(CONFIGFILES); do \
113                 if test ! -f $(DESTDIR)${pkgsysconfdir}/$$f; then \
114                         $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)${pkgsysconfdir}; \
115                 fi; \
116                 $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)${pkgsysconfdir}/$$f.dist; \
117         done
118
119 install-data-hook:
120         chmod +x $(DESTDIR)$(pkgsysconfdir)/keygen.sh
121         chmod +x $(DESTDIR)$(pkgsysconfdir)/metagen.sh
122         if test -z "$(NOKEYGEN)"; then \
123                 cd $(DESTDIR)$(pkgsysconfdir); \
124                 sh ./keygen.sh -b ; \
125         fi
126
127 CLEANFILES = \
128         apache.config \
129         apache2.config \
130         apache22.config \
131         shibd-redhat \
132         shibd-suse \
133         shibd-debian \
134         shibd-osx.plist \
135         shibd.logger \
136         native.logger
137
138 EXTRA_DIST = \
139         native.logger.in \
140         shibd.logger.in \
141         apache.config.in \
142         apache2.config.in \
143         apache22.config.in \
144         shibd-redhat.in \
145         shibd-suse.in \
146         shibd-debian.in \
147         shibd-osx.plist.in \
148         keygen.bat \
149         keygen.sh \
150         metagen.sh \
151         upgrade.xsl \
152         xsltproc.js \
153         $(CONFIGFILES)