summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile12
-rwxr-xr-xconfigure19
2 files changed, 27 insertions, 4 deletions
diff --git a/Makefile b/Makefile
index d0970049..2b234e53 100644
--- a/Makefile
+++ b/Makefile
@@ -24,10 +24,12 @@
# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-.NOTPARALLEL:
-
-include config.make
+ifeq ($(parallelmake),)
+.NOTPARALLEL:
+endif
+
VERBOSE :=
TXR_CFLAGS := -iquote . $(if $(top_srcdir), -iquote $(top_srcdir)) \
$(LANG_FLAGS) $(DIAG_FLAGS) \
@@ -409,6 +411,8 @@ tst/tests/016/%: TXR_DBG_OPTS :=
tst/tests/017/%: TXR_DBG_OPTS :=
tst/tests/018/%: TXR_DBG_OPTS :=
+tst/tests/014/dgram-stream.ok: | tst/tests/014/socket-basic.ok
+
TST_EXPECTED = $(word 2,$^)
TST_OUT = $(patsubst %.expected,tst/%.out,$(TST_EXPECTED))
@@ -439,11 +443,11 @@ tst/%.ok: %.tl %.expected $(TXR)
$(call SH,touch $@)
.PHONY: tests.clean
-tests.clean:
+tests.clean: | tests
rm -rf tst
.PHONY: retest
-retest: tests.clean tests
+retest: | tests.clean tests
define GREP_CHECK
$(V)if [ $$(grep -E $(1) $(SRCS) | wc -l) -ne $(3) ] ; then \
diff --git a/configure b/configure
index 1fbce3b5..b65bbaf5 100755
--- a/configure
+++ b/configure
@@ -141,6 +141,8 @@ bindir='bin'
datadir='share/txr'
mandir='share/man'
maintainer=
+parallelmake=
+parallelmake_given=
make=
cross=
compiler_prefix=
@@ -332,6 +334,13 @@ maintainer [$maintainer]
the parser.l and parser.y files will have no effect. In maintainer mode,
also, c90 is used if compiling the code as C.
+parallelmake [$parallelmake]
+
+ Boolean. If set to 'y', it specifies that parallel building with make -j
+ is permitted. Otherwise the Makefile asserts no parallelism with
+ a .NOTOPARALLEL: directive. The above maintainer mode also implies
+ parallel building being permited.
+
prefix [$prefix]
Specifies root directory where the software will ultimately be installed and
@@ -886,6 +895,9 @@ termios_define := $termios_define
# do we compile in debug support?
debug_support := $debug_support
+# allow parallel make?
+parallelmake := $parallelmake
+
# EXE suffix
EXE := $exe
@@ -1777,6 +1789,13 @@ if [ $maintainer ] ; then
fi
#
+# Check for parallel build
+#
+if [ $maintainer ] && ! [ $parallelmake_given ] ; then
+ parallelmake=y
+fi
+
+#
# sys/wait.h
#