| 1 | # Wedge definition for Souffle
 | 
| 2 | #
 | 
| 3 | # Loaded by deps/wedge.sh.
 | 
| 4 | 
 | 
| 5 | set -o nounset
 | 
| 6 | set -o pipefail
 | 
| 7 | set -o errexit
 | 
| 8 | 
 | 
| 9 | WEDGE_NAME='souffle'
 | 
| 10 | WEDGE_VERSION='2.4.1'
 | 
| 11 | 
 | 
| 12 | wedge-make() {
 | 
| 13 |   local src_dir=$1
 | 
| 14 |   local build_dir=$2
 | 
| 15 |   local install_dir=$3
 | 
| 16 | 
 | 
| 17 |   #pushd $DEPS_DIR/souffle/src/souffle-2.4.1
 | 
| 18 |   #rm -rf build
 | 
| 19 | 
 | 
| 20 |   pushd $build_dir
 | 
| 21 | 
 | 
| 22 |   # Seems to build in parallel by default
 | 
| 23 |   cmake -DSOUFFLE_USE_CURSES=OFF \
 | 
| 24 |     -DSOUFFLE_USE_SQLITE=OFF \
 | 
| 25 |     -DCMAKE_BUILD_TYPE=Release \
 | 
| 26 |     -DCMAKE_INSTALL_PREFIX=$install_dir \
 | 
| 27 |     -DSOUFFLE_ENABLE_TESTING=OFF \
 | 
| 28 |     -DSOUFFLE_TEST_EXAMPLES=OFF \
 | 
| 29 |     -DSOUFFLE_TEST_EVALUATION=OFF \
 | 
| 30 |     -S $src_dir -B build
 | 
| 31 | 
 | 
| 32 |   popd
 | 
| 33 | }
 | 
| 34 | 
 | 
| 35 | wedge-install() {
 | 
| 36 |   local build_dir=$1
 | 
| 37 |   #local install_dir=$2
 | 
| 38 | 
 | 
| 39 |   pushd $build_dir
 | 
| 40 | 
 | 
| 41 |   #cmake --build build -j 8 --target install
 | 
| 42 |   cmake --build build --target install
 | 
| 43 | 
 | 
| 44 |   popd
 | 
| 45 | }
 | 
| 46 | 
 | 
| 47 | wedge-smoke-test() {
 | 
| 48 |   local install_dir=$1
 | 
| 49 |   local wedge_dir=$2
 | 
| 50 | 
 | 
| 51 |   $install_dir/bin/souffle -g smoke-test $wedge_dir/smoke-test.dl
 | 
| 52 |   c++ smoke-test.cpp -I $install_dir/include -std=c++17 -lstdc++fs -o smoke-test
 | 
| 53 |   ./smoke-test
 | 
| 54 | 
 | 
| 55 |   sort path.tsv | diff -u - $wedge_dir/path.expected.tsv
 | 
| 56 | }
 |