aboutsummaryrefslogtreecommitdiff
path: root/utils/health/build-scripts
diff options
context:
space:
mode:
authormj-xmr <mjxmr@protonmail.com>2020-11-01 09:36:10 +0100
committermj-xmr <mjxmr@protonmail.com>2020-12-08 08:05:56 +0100
commit9f502108bfb056575bfc49d60ffc5c7aed05728e (patch)
tree07b6c6915ce77e1962bb0a19f0fb625153eb305b /utils/health/build-scripts
parentMerge pull request #7072 (diff)
downloadmonero-9f502108bfb056575bfc49d60ffc5c7aed05728e.tar.xz
Add ClangBuildAnalyzer under utils/health for analyzing build times
Diffstat (limited to 'utils/health/build-scripts')
-rwxr-xr-xutils/health/build-scripts/clang-build-time-analyzer-clone-build.sh54
1 files changed, 54 insertions, 0 deletions
diff --git a/utils/health/build-scripts/clang-build-time-analyzer-clone-build.sh b/utils/health/build-scripts/clang-build-time-analyzer-clone-build.sh
new file mode 100755
index 000000000..de5f35a38
--- /dev/null
+++ b/utils/health/build-scripts/clang-build-time-analyzer-clone-build.sh
@@ -0,0 +1,54 @@
+#!/bin/bash -e
+
+# Copyright (c) 2014-2020, The Monero Project
+#
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without modification, are
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of source code must retain the above copyright notice, this list of
+# conditions and the following disclaimer.
+#
+# 2. Redistributions in binary form must reproduce the above copyright notice, this list
+# of conditions and the following disclaimer in the documentation and/or other
+# materials provided with the distribution.
+#
+# 3. Neither the name of the copyright holder nor the names of its contributors may be
+# used to endorse or promote products derived from this software without specific
+# prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
+# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
+# THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+# STRICT LIABILITY, 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.
+
+# This script checkouts and builds ClangBuildAnalyzer.
+# The result is put into bin directory
+
+DIR_THIS="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
+
+TAG="v1.2.0"
+PROG="ClangBuildAnalyzer"
+DIR_OUT="$DIR_THIS/../bin"
+DIR_BUILD="build"
+
+mkdir -p "$DIR_BUILD" && cd "$DIR_BUILD"
+if [ ! -d "$PROG" ]; then
+ git clone https://github.com/aras-p/$PROG.git
+fi
+cd "$PROG"
+git checkout "$TAG"
+mkdir -p build && cd build
+cmake ..
+make -j`nproc`
+
+mkdir -p "$DIR_OUT"
+cp -v "$PROG" "$DIR_OUT"
+make clean # Clean the used space
+