瀏覽代碼

Kludge include.am to work with automake <1.12

The SH_LOG_COMPILER feature doesn't work with older automakes, and
those are still in use in many environments we want to support
development on, like Debian Stable.

Instead, use autoconf substitution to fill out the shebang lines on
the shell scripts, and an intermediate make target to make them
executable.

This is a bugfix on the patches for #15344.  Bug not in any released
tor.
Nick Mathewson 11 年之前
父節點
當前提交
d579d751dc
共有 4 個文件被更改,包括 20 次插入8 次删除
  1. 17 5
      src/test/include.am
  2. 1 1
      src/test/test_bt.sh.in
  3. 1 1
      src/test/test_ntor.sh.in
  4. 1 1
      src/test/test_zero_length_keys.sh.in

+ 17 - 5
src/test/include.am

@@ -1,12 +1,24 @@
-TESTS += src/test/test src/test/test-slow src/test/test-memwipe \
-	src/test/test_zero_length_keys.sh
+
+TESTSCRIPTS = src/test/test_zero_length_keys.sh
 
 if USEPYTHON
-TESTS += src/test/test_ntor.sh src/test/test_bt.sh
+TESTSCRIPTS += src/test/test_ntor.sh src/test/test_bt.sh
 endif
 
-TEST_EXTENSIONS = .sh
-SH_LOG_COMPILER = $(SHELL)
+TESTS += src/test/test src/test/test-slow src/test/test-memwipe \
+	$(TESTSCRIPTS)
+
+### This is a lovely feature, but it requires automake >= 1.12, and Tor
+###  doesn't require that yet.  Below is a kludge to work around.
+###
+# TEST_EXTENSIONS = .sh
+# SH_LOG_COMPILER = $(SHELL)
+
+check-am: set-test-permissions
+
+set-test-permissions:
+	chmod 755 $(TESTSCRIPTS)
+
 
 noinst_PROGRAMS+= src/test/bench
 if UNITTESTS_ENABLED

+ 1 - 1
src/test/test_bt.sh.in

@@ -1,4 +1,4 @@
-#!/bin/sh
+#!@SHELL@
 # Test backtrace functionality.
 
 exitcode=0

+ 1 - 1
src/test/test_ntor.sh.in

@@ -1,4 +1,4 @@
-#!/bin/sh
+#!@SHELL@
 # Validate Tor's ntor implementation.
 
 exitcode=0

+ 1 - 1
src/test/test_zero_length_keys.sh.in

@@ -1,4 +1,4 @@
-#!/bin/sh
+#!@SHELL@
 # Check that tor regenerates keys when key files are zero-length
 
 exitcode=0