kudu-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From t...@apache.org
Subject [1/2] kudu git commit: thirdparty: Revert build dir cleanup changes
Date Thu, 02 Feb 2017 22:12:41 GMT
Repository: kudu
Updated Branches:
  refs/heads/master 8f2a8f918 -> e4a649c20


thirdparty: Revert build dir cleanup changes

This patch reverts the following patches due to issues with thirdparty
build stability.

defd6e8 - [thirdparty] fix build-thirdparty.sh for bash 3.x
e87fb79 - thirdparty: Clean up thirdparty prefix from previous builds

Change-Id: I60da062a59cc6759b5747eb75f3112b0336fd4da
Reviewed-on: http://gerrit.cloudera.org:8080/5872
Tested-by: Kudu Jenkins
Reviewed-by: Todd Lipcon <todd@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/kudu/repo
Commit: http://git-wip-us.apache.org/repos/asf/kudu/commit/d3e37868
Tree: http://git-wip-us.apache.org/repos/asf/kudu/tree/d3e37868
Diff: http://git-wip-us.apache.org/repos/asf/kudu/diff/d3e37868

Branch: refs/heads/master
Commit: d3e37868f60089e928a06502fba951359c9b96d4
Parents: 8f2a8f9
Author: Mike Percy <mpercy@apache.org>
Authored: Thu Feb 2 10:32:23 2017 -0800
Committer: Todd Lipcon <todd@apache.org>
Committed: Thu Feb 2 21:45:49 2017 +0000

----------------------------------------------------------------------
 thirdparty/build-thirdparty.sh | 59 ++++++++-----------------------------
 thirdparty/postflight.py       |  6 ++--
 thirdparty/vars.sh             |  4 +--
 3 files changed, 18 insertions(+), 51 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kudu/blob/d3e37868/thirdparty/build-thirdparty.sh
----------------------------------------------------------------------
diff --git a/thirdparty/build-thirdparty.sh b/thirdparty/build-thirdparty.sh
index fd7df7b..5626633 100755
--- a/thirdparty/build-thirdparty.sh
+++ b/thirdparty/build-thirdparty.sh
@@ -64,18 +64,10 @@ else
   for arg in $*; do
     case $arg in
       # Dependency groups.
-      "common")         F_COMMON=1
-        continue 1;;
-      "uninstrumented") F_UNINSTRUMENTED=1
-        continue 1;;
-      "tsan")           F_TSAN=1
-        continue 1;;
-
-      # User requested a specific package to be built.
-      *) F_SPECIFIC_PACKAGE=1 ;; # Go through to the switch below.
-    esac
+      "common")         F_COMMON=1 ;;
+      "uninstrumented") F_UNINSTRUMENTED=1 ;;
+      "tsan")           F_TSAN=1 ;;
 
-    case $arg in
       # Dependencies.
       "cmake")        F_CMAKE=1 ;;
       "gflags")       F_GFLAGS=1 ;;
@@ -106,39 +98,19 @@ fi
 
 ################################################################################
 
-init_prefix() {
-  local PREFIX_DIR=$1
-  local MAKE_LIBDIR=$2
-
-  if [ -z "$PREFIX_DIR" ]; then
-    echo "Unspecified prefix dir in init_prefix()"
-    exit 1
-  fi
+for PREFIX_DIR in $PREFIX_COMMON $PREFIX_DEPS $PREFIX_DEPS_TSAN; do
+  mkdir -p $PREFIX_DIR/include
 
-  rm -rf "$PREFIX_DIR"
-  mkdir -p "$PREFIX_DIR"
-  mkdir -p "$PREFIX_DIR/include"
-
-  # Some prefixes (such as common) are for non-library tools and header-only
-  # libraries. If the caller doesn't pass the second argument, we don't create
-  # and link the prefix lib dir.
-  if [ -n "$MAKE_LIBDIR" ]; then
-    mkdir -p "$PREFIX_DIR/lib"
+  # PREFIX_COMMON is for header-only libraries.
+  if [ "$PREFIX_DIR" != "$PREFIX_COMMON" ]; then
+    mkdir -p $PREFIX_DIR/lib
 
     # On some systems, autotools installs libraries to lib64 rather than lib.  Fix
     # this by setting up lib64 as a symlink to lib.  We have to do this step first
     # to handle cases where one third-party library depends on another.
     ln -sf "$PREFIX_DIR/lib" "$PREFIX_DIR/lib64"
   fi
-}
-
-# If we are installing to a prefix for the first time, or are installing all
-# dependencies under a given prefix, initialize the whole prefix (including
-# wiping out existing files in that path) to ensure nothing remains from the
-# installation of a previous build.
-[ -n "$F_COMMON" ] && init_prefix $PREFIX_COMMON
-[ -n "$F_UNINSTRUMENTED" ] && init_prefix $PREFIX_UNINSTRUMENTED libdir
-[ -n "$F_TSAN" ] && init_prefix $PREFIX_TSAN libdir
+done
 
 # Incorporate the value of these standard compilation environment variables into
 # the EXTRA_* environment variables.
@@ -221,7 +193,7 @@ fi
 
 ### Build C dependencies without instrumentation
 
-PREFIX=$PREFIX_UNINSTRUMENTED
+PREFIX=$PREFIX_DEPS
 MODE_SUFFIX=""
 
 save_env
@@ -267,7 +239,7 @@ restore_env
 ### Build C++ dependencies without instrumentation
 
 # Clang is used by all builds so it is part of the 'common' library group even
-# though its LLVM libraries are installed to $PREFIX_UNINSTRUMENTED.
+# though its LLVM libraries are installed to $PREFIX_DEPS.
 if [ -n "$F_COMMON" -o -n "$F_LLVM" ]; then
   build_llvm normal
 fi
@@ -345,7 +317,7 @@ fi
 export CC=$CLANG
 export CXX=$CLANGXX
 
-PREFIX=$PREFIX_TSAN
+PREFIX=$PREFIX_DEPS_TSAN
 MODE_SUFFIX=".tsan"
 
 save_env
@@ -462,12 +434,7 @@ fi
 restore_env
 
 # Now run the post-flight checks.
-POST_FLIGHT_FLAGS=""
-if [[ -n "$F_TSAN" || -n "$F_SPECIFIC_PACKAGE" ]]; then
-  # Do the tsan postflight check any time a tsan dep might be updated.
-  POST_FLIGHT_FLAGS="$POST_FLIGHT_FLAGS tsan"
-fi
-$TP_DIR/postflight.py $POST_FLIGHT_FLAGS
+$TP_DIR/postflight.py
 
 echo "---------------------"
 echo "Thirdparty dependencies '$ARGS_TO_PRINT' built and installed successfully"

http://git-wip-us.apache.org/repos/asf/kudu/blob/d3e37868/thirdparty/postflight.py
----------------------------------------------------------------------
diff --git a/thirdparty/postflight.py b/thirdparty/postflight.py
index bc0a9bb..e61adcb 100755
--- a/thirdparty/postflight.py
+++ b/thirdparty/postflight.py
@@ -17,7 +17,7 @@
 # specific language governing permissions and limitations
 # under the License.
 """
-Script which performs some sanity checks on the built thirdparty/.
+Simple script which performs some sanity checks on the built thirdparty/.
 """
 
 import os
@@ -83,11 +83,11 @@ done
 echo All TSAN dependencies checked
 """.format(tp_dir=TP_DIR))
 
+
 def main():
   print("Running post-flight checks")
   print("-------------------------")
-  if "tsan" in sys.argv:
-    check_tsan_dependencies()
+  check_tsan_dependencies()
   print("-------------------------")
   print("Post-flight checks succeeded.")
   return 0

http://git-wip-us.apache.org/repos/asf/kudu/blob/d3e37868/thirdparty/vars.sh
----------------------------------------------------------------------
diff --git a/thirdparty/vars.sh b/thirdparty/vars.sh
index 652c6fe..e44abce 100644
--- a/thirdparty/vars.sh
+++ b/thirdparty/vars.sh
@@ -31,8 +31,8 @@ TP_BUILD_DIR="$TP_DIR/build"
 CLOUDFRONT_URL_PREFIX=http://d3dr9sfxru4sde.cloudfront.net
 
 PREFIX_COMMON=$TP_DIR/installed/common
-PREFIX_UNINSTRUMENTED=$TP_DIR/installed/uninstrumented
-PREFIX_TSAN=$TP_DIR/installed/tsan
+PREFIX_DEPS=$TP_DIR/installed/uninstrumented
+PREFIX_DEPS_TSAN=$TP_DIR/installed/tsan
 
 GFLAGS_VERSION=2.1.2
 GFLAGS_NAME=gflags-$GFLAGS_VERSION


Mime
View raw message