]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
Add buildconf option to force (rather than suppress) regeneration of
authorJoe Orton <jorton@apache.org>
Tue, 12 Nov 2019 12:45:57 +0000 (12:45 +0000)
committerJoe Orton <jorton@apache.org>
Tue, 12 Nov 2019 12:45:57 +0000 (12:45 +0000)
the ap_expr parser.  Add a Travis job which uses this, so a patch
which changes the parser sources is tested appropriately (e.g PR#72).

* buildconf: Add --with-regen-expr to force ap_expr regeneration.

* .travis.yml, test/travis_run_linux.sh: Pass BUILDCONF to buildconf
  and add job which uses the new option.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1869697 13f79535-47bb-0310-9956-ffa450edef68

.travis.yml
buildconf
test/travis_run_linux.sh

index f3551897deb76cfab22a2d605fea8c21f602239d..eab49138394361485b08c82c5bf82696ecde755b 100644 (file)
@@ -62,6 +62,11 @@ matrix:
             - libnghttp2-dev
             - libjansson-dev
     # -------------------------------------------------------------------------
+    - name: Linux Ubuntu, Regenerate ap_expr
+      os: linux
+      env: CONFIG="--enable-mods-shared=reallyall --enable-maintainer-mode NOTEST_CFLAGS=-Werror"
+           BUILDCONFIG="--with-regen-expr"
+    # -------------------------------------------------------------------------
     - if: branch != 2.4.x
       name: Linux Ubuntu, APR trunk
       env: APR_VERSION=trunk APR_CONFIG="--with-crypto"
index bf115a532a070d6f1a14cceb2af6b73e07603a19..e7199a70d87f951eaa92504bd138e534778efc88 100755 (executable)
--- a/buildconf
+++ b/buildconf
@@ -37,6 +37,10 @@ esac
 apr_src_dir="srclib/apr ../apr"
 apu_src_dir=""
 
+# By default, touch the checked-in sources to suppress regeneration of
+# the ap_expr parser.
+regen_expr=no
+
 while test $# -gt 0 
 do
     # Normalize
@@ -54,6 +58,10 @@ do
         apu_src_dir=$optarg
         ;;
 
+    --with-regen-expr)
+        regen_expr=yes
+        ;;
+    
     -h|--help)
         cat <<EOF
 buildconf: generates the files needed to configure httpd.
@@ -74,6 +82,9 @@ Configuration:
                            "apr" replaced with "apr-util" or "aprutil". Ignored
                            in APR-Config Mode.
 
+  --with-regen-expr        suppress the timestamp adjustment which prevents the 
+                           rebuild of the ap_expr expression parser
+
 APR-Config Mode:
 
   When passing an apr-config executable to --with-apr, buildconf will attempt to
@@ -316,13 +327,18 @@ if [ -f `which cut` ]; then
     > httpd.spec )
 fi
 
-# ensure that the ap_expr expression parser sources are never regenerated
-# when running make
-echo fixing timestamps for ap_expr sources
-cd server
-touch util_expr_parse.y util_expr_scan.l
-sleep 1
-touch util_expr_parse.c util_expr_parse.h util_expr_scan.c
-cd ..
+if [ x$regen_expr = xno ]; then
+    # ensure that the ap_expr expression parser sources are never regenerated
+    # when running make
+    echo buildconf: Fixing timestamps for ap_expr sources to prevent regeneration
+    cd server
+    touch util_expr_parse.y util_expr_scan.l
+    sleep 1
+    touch util_expr_parse.c util_expr_parse.h util_expr_scan.c
+    cd ..
+else
+    echo buildconf: Fixing timestamps for ap_expr sources to ensure regeneration
+    touch server/util_expr_parse.[yl]
+fi
 
 exit 0
index 37b74877fe808a1e93a7b7ad4c69dc1b92a6c281..52442b7f46d431363c11a1cb0b1c525560403942 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/bash -ex
 ### Installed apr/apr-util don't include the *.m4 files but the
 ### Debian packages helpfully install them, so use the system APR to buildconf
-./buildconf --with-apr=/usr/bin/apr-1-config
+./buildconf --with-apr=/usr/bin/apr-1-config ${BUILDCONFIG}
 # For trunk, "make check" is sufficient to run the test suite.
 # For 2.4.x, the test suite must be run manually
 if test ! -v SKIP_TESTING; then