From 0ad317ec16fa836321617c10a8c6ba5c70f156b8 Mon Sep 17 00:00:00 2001 From: Robin Haberkorn Date: Fri, 3 Mar 2017 15:13:30 +0100 Subject: 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. --- src/Makefile.am | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/Makefile.am b/src/Makefile.am index 2778f4f..ba21109 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -11,7 +11,7 @@ endif include $(top_srcdir)/bootstrap.am include $(top_srcdir)/scintilla.am -AM_CXXFLAGS = -std=c++11 -Wall -Wno-char-subscripts +AM_CXXFLAGS = -Wall -Wno-char-subscripts if CLANG AM_CXXFLAGS += -Wno-mismatched-tags endif @@ -98,8 +98,5 @@ CLEANFILES += $(libexec_SCRIPTS) .PHONY: sciteco-wrapper sciteco-wrapper: - echo '#!/bin/sh' >$@ - echo 'OPT=$$1;' \ - 'shift;' \ - "exec $(bindir)/`echo sciteco | @SED@ '$(transform)'`$(EXEEXT)" \ - '"$$OPT" -- $$@' >>$@ + printf '#!/bin/sh\nOPT=$$1\nshift\nexec %s "$$OPT" -- $$@' \ + "$(SCITECO_INSTALLED)" >$@ -- cgit v1.2.3