summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMichael Orlitzky <mjo@gentoo.org>2020-01-22 19:30:05 -0500
committerMichael Orlitzky <mjo@gentoo.org>2020-01-23 10:06:04 -0500
commit83451d68109c398710e54664399c0d0ecdb5dcd9 (patch)
treeb734db03bb7d204fb0ae3316b78338c6d514b968 /src
parentMakefile.am: remove redundant $(srcdir)s. (diff)
downloadeselect-php-83451d68109c398710e54664399c0d0ecdb5dcd9.tar.gz
eselect-php-83451d68109c398710e54664399c0d0ecdb5dcd9.tar.bz2
eselect-php-83451d68109c398710e54664399c0d0ecdb5dcd9.zip
autotools: use recursive automake to support out-of-source builds.
When performing an out-of-source build (in particular, with "make distcheck"), the rules that we were using to replace @LIBDIR@ and friends were failing. Automake does a lot of path magic in its rules, but not within the shell commands themselves, so ultimately we wound up with some confusion between the source and build directories. Rather than hack around this problem in the top-level Makefile.am, I've converted the project to a recursive build, where the top-level Makefile.am delegates to Makefile.am in the subdirectories. This over-complicates things, but does fix the out-of-source build. Why? A guess: because the path magic works better in "." than elsewhere. Signed-off-by: Michael Orlitzky <mjo@gentoo.org>
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.am41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
new file mode 100644
index 0000000..fca452f
--- /dev/null
+++ b/src/Makefile.am
@@ -0,0 +1,41 @@
+eselectdir = $(datadir)/eselect/modules
+nodist_eselect_DATA = php.eselect
+
+# Without EXTRA_DIST, these files don't wind up in the tarball.
+EXTRA_DIST = 70_mod_php.conf.in \
+ php-fpm-launcher.in \
+ php-fpm.logrotate.in
+
+if APACHE2
+ # Without these set, we won't try to install the conf file.
+ apacheconfdir = $(sysconfdir)/apache2/modules.d
+ nodist_apacheconf_DATA = 70_mod_php.conf
+endif
+
+if FPM
+ # Same as the APACHE2 conditional.
+ nodist_libexec_SCRIPTS = php-fpm-launcher
+
+ logrotatedir = $(sysconfdir)/logrotate.d
+ nodist_logrotate_DATA = php-fpm.logrotate
+
+ tmpfilesdir = $(prefix)/lib/tmpfiles.d
+ dist_tmpfiles_DATA = php-fpm.conf
+endif
+
+
+# Otherwise these don't get cleaned up by "make distclean"
+DISTCLEANFILES = $(nodist_eselect_DATA) \
+ $(nodist_apacheconf_DATA) \
+ $(nodist_libexec_SCRIPTS) \
+ $(nodist_logrotate_DATA)
+
+$(DISTCLEANFILES): Makefile
+ rm -f $@ $@.tmp
+ $(editgnudirs) $@.in > $@.tmp
+ mv $@.tmp $@
+
+php.eselect: php.eselect.in
+php-fpm-launcher: php-fpm-launcher.in
+php-fpm.logrotate: php-fpm.logrotate.in
+70_mod_php.conf: 70_mod_php.conf.in