[PPL-devel] [GIT] ppl/ppl(master): Added sample analysis script.

Roberto Bagnara roberto.bagnara at bugseng.com
Mon Dec 9 15:50:22 CET 2019


Module: ppl/ppl
Branch: master
Commit: 360445d21d3dd91818d3e4fa54c3ae202711c104
URL:    http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=360445d21d3dd91818d3e4fa54c3ae202711c104

Author: Roberto Bagnara <roberto.bagnara at bugseng.com>
Date:   Mon Dec  9 15:50:06 2019 +0100

Added sample analysis script.

---

 ECLAIR/analyze.sh.in       |   61 ++++++++++++++++++++++++++++++++++++++++++++
 ECLAIR/analyze_BUGFIND.ecl |   15 +++++++++++
 configure.ac               |    1 +
 3 files changed, 77 insertions(+), 0 deletions(-)

diff --git a/ECLAIR/analyze.sh.in b/ECLAIR/analyze.sh.in
new file mode 100644
index 0000000..8f8ea75
--- /dev/null
+++ b/ECLAIR/analyze.sh.in
@@ -0,0 +1,61 @@
+#!/bin/sh
+
+set -e
+
+usage() {
+    echo "Usage: analyze.sh ANALYSIS" 1>&2
+    echo "  where ANALYSIS = BUGFIND" 1>&2
+}
+
+if [ $# -ne 1 ]
+then
+    usage
+    exit 1
+fi
+
+case "$1" in
+    MC2|MC3|BUGFIND)
+    ;;
+*)
+    usage
+    exit 1
+esac
+
+ANALYSIS=$1
+
+export HERE="$(cd "$(dirname $0)" ; echo $PWD)"
+TOP="$(dirname "${HERE}")"
+
+export CC_ALIASES="@CC@"
+export CXX_ALIASES="@CXX@"
+
+export ECLAIR_PROJECT_NAME="PPL"
+export ECLAIR_PROJECT_ROOT="@abs_top_srcdir@"
+
+export ECLAIR_OUTPUT_DIR="${HERE}/out_${BUILD_ID}_${ANALYSIS}"
+export ECLAIR_DATA_DIR="${ECLAIR_OUTPUT_DIR}/.data"
+export PROJECT_ECD="${ECLAIR_DATA_DIR}/PROJECT.ecd"
+rm -rf "$ECLAIR_OUTPUT_DIR"
+mkdir -p "$ECLAIR_DATA_DIR"
+export ECLAIR_DIAGNOSTICS_OUTPUT="$ECLAIR_OUTPUT_DIR/DIAGNOSTICS.txt"
+
+(
+    cd "@abs_top_builddir@"
+    make clean
+)
+
+if [ -f /proc/cpuinfo ]
+then
+  PROCESSORS=$(grep -c ^processor /proc/cpuinfo)
+else
+  PROCESSORS=6
+fi
+
+(
+    cd "@abs_top_builddir@"
+    eclair_env "-eval_file='@abs_top_srcdir@/ECLAIR/analyze_${ANALYSIS}.ecl'" \
+               -- make -j${PROCESSORS}
+)
+
+eclair_report "-create_db='$PROJECT_ECD'" "$ECLAIR_DATA_DIR"/FRAME.*.ecb \
+              -load -reports1_txt=service,/dev/stdout
diff --git a/ECLAIR/analyze_BUGFIND.ecl b/ECLAIR/analyze_BUGFIND.ecl
new file mode 100644
index 0000000..1e09a2f
--- /dev/null
+++ b/ECLAIR/analyze_BUGFIND.ecl
@@ -0,0 +1,15 @@
+-project_name=getenv("ECLAIR_PROJECT_NAME")
+-project_root=getenv("ECLAIR_PROJECT_ROOT")
+
+-setq=data_dir,getenv("ECLAIR_DATA_DIR")
+
+-enable=B.REPORT.ECB
+-config=B.REPORT.ECB,output=join_paths(data_dir,"FRAME. at FRAME@.ecb")
+-config=B.REPORT.ECB,preprocessed=show
+-config=B.REPORT.ECB,macros=10
+
+-disable=B.REPORT.TXT
+
+-enable=B.BUGFIND
+
+-reports={hide,all_exp_external}
diff --git a/configure.ac b/configure.ac
index 1028cd2..ccbaa86 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1717,6 +1717,7 @@ AC_CONFIG_FILES(Makefile
                 interfaces/Prolog/XSB/Makefile
                 interfaces/Prolog/YAP/Makefile
                 interfaces/Prolog/tests/Makefile
+                ECLAIR/analyze.sh
                 )
 #               tests/Ask_Tell/Makefile
 AC_OUTPUT




More information about the PPL-devel mailing list