aboutsummaryrefslogtreecommitdiffhomepage
path: root/bootstrap.am
diff options
context:
space:
mode:
authorRobin Haberkorn <robin.haberkorn@googlemail.com>2017-03-03 15:13:30 +0100
committerRobin Haberkorn <robin.haberkorn@googlemail.com>2017-03-03 15:32:57 +0100
commit0ad317ec16fa836321617c10a8c6ba5c70f156b8 (patch)
treeca820f937a238f9c278b96c236f87934edc07c01 /bootstrap.am
parentf90b197ab83dd59b230ffca21af2aa76a91d0320 (diff)
downloadsciteco-0ad317ec16fa836321617c10a8c6ba5c70f156b8.tar.gz
build system portability fixes
* especially to improve building on FreeBSD 11 * We need GNU Make, yet alone because Scintilla/Scinterm needs it. We now document that dependency and added an Autoconf check from the autoconf-archive. We make sure that the build process is invoked with GNU make by generating only GNUmakefiles. The Makefile.am files have not been renamed, so this change can be rolled back easily. * Some GNU-Make-specific autoreconf warnings have still been resolved. But not all of them, as this would have been unelegant and we need GNU Make anyway. * Declare ACLOCAL_AMFLAGS to appease autoreconf * Added an explicit check for C++11 from the autoconf-archives. In general we should support building with every C++11 compiler that is sufficiently GNU-like. * Do not use `sed` for inplace editing, as different sed-implementations have mutually incompatible syntax for this. Instead of declaring and checking a dependency on GNU sed, we simply use SciTECO for the editing task. This improves code portability on BSDs. * Similarily, BSD/POSIX `cmp` is supported now. This fixes the test suite on BSD without declaring a dependency on the GNU coreutils. * Simplified sciteco-wrapper generation.
Diffstat (limited to 'bootstrap.am')
-rw-r--r--bootstrap.am15
1 files changed, 12 insertions, 3 deletions
diff --git a/bootstrap.am b/bootstrap.am
index bc6f721..1ca730e 100644
--- a/bootstrap.am
+++ b/bootstrap.am
@@ -18,6 +18,14 @@ SCITECO_MINIMAL = @SCITECO@
SCITECO_FULL = @SCITECO@
endif
+# Path of installed `sciteco` and `sciteco-wrapper` binaries,
+# taking --program-prefix into account.
+# These variables MUST NOT be put in single-quotes.
+SCITECO_INSTALLED = \
+ $(bindir)/`echo sciteco | @SED@ '$(transform)'`$(EXEEXT)
+SCITECO_WRAPPER_INSTALLED = \
+ $(libexecdir)/`echo sciteco-wrapper | @SED@ '$(transform)'`$(EXEEXT)
+
SUBST_MACRO = eb$<\e \
<fs@PACKAGE^Q@\e@PACKAGE@\e;>j \
<fs@PACKAGE_NAME^Q@\e@PACKAGE_NAME@\e;>j \
@@ -33,8 +41,9 @@ SUBST_MACRO = eb$<\e \
<fs@DATE^Q@\e^EQ.d\e; -D>j \
ew$@\e
-# Don't try to generate config.h:
-%/config.h: ;
+# The SciTECO-based substitutor must not process config.h.in.
+@top_srcdir@/config.h: ;
-% : %.in
+SUFFIXES = .in
+.in:
$(SCITECO_MINIMAL) -e $$'$(SUBST_MACRO)'