]> granicus.if.org Git - json-c/commitdiff
Make the benchmark work with pre-cmake versions of json-c. Fetch a few more data...
authorEric Haszlakiewicz <erh+git@nimenees.com>
Mon, 4 May 2020 03:40:40 +0000 (03:40 +0000)
committerEric Haszlakiewicz <erh+git@nimenees.com>
Mon, 4 May 2020 03:40:40 +0000 (03:40 +0000)
bench/jc-bench.sh

index 6cece3736fa9f06e984f4b6a05b40d0602534130..2cca1f945aa1f0b2f76c250975df712135f2152e 100755 (executable)
@@ -80,9 +80,14 @@ mkdir -p "${WORK}"
 DATA="${RUNDIR}/data"
 mkdir -p "${DATA}"
 
-if [ ! -r "${DATA}/canada.json" ] ; then
-       curl -L -o "${DATA}/canada.json" 'https://github.com/mloskot/json_benchmark/raw/master/data/canada.json'
-fi
+for file in citm_catalog.json twitter.json canada.json ; do
+       if [ ! -r "${DATA}/${file}" ] ; then
+               echo "Fetching ${file} from github.com/mloskot/json_benchmark"
+               URL="https://github.com/mloskot/json_benchmark/raw/master/data/${file}"
+               curl -s -L -o "${DATA}/${file}" "$URL"
+       fi
+done
+echo
 
 # Identify "after" commit hash, in order of preference
 if [ ! -z "$after_arg" -a -d "$after_arg" ] ; then
@@ -180,8 +185,16 @@ compile_benchmark()
        fi
        # else, use the provided $src_dir
 
-       cd "${build_dir}"
-       cmake -DCMAKE_INSTALL_PREFIX="${inst_dir}" "${src_dir}"
+       if [ -e "${src_dir}/CMakeLists.txt" ] ; then
+               cd "${build_dir}"
+               cmake -DCMAKE_INSTALL_PREFIX="${inst_dir}" "${src_dir}"
+       else
+               # Old versions of json-c used automake/autoconf
+               cd "${src_dir}"
+               sh autogen.sh   # always run it, configure doesn't always work
+               cd "${build_dir}"
+               "${src_dir}/configure" --prefix="${inst_dir}"
+       fi
        make all install
 
        cd "${bench_dir}"