1#!/bin/bash 2 3if [ $# -lt 3 ] 4then 5 echo "usage is: ${0##*/} <which makefile and other make options> <additional defines> <path to math provider>" 6 echo "e.g. \"${0##*/} \"makefile -j9\" \"-DUSE_LTM -DLTM_DESC -I../libtommath\" ../libtommath/libtommath.a\"" 7 echo "to create aggregate coverage: pre-pend with LTC_COVERAGE=1" 8 exit -1 9fi 10 11# date 12echo "date="`date` 13 14# check sources 15bash check_source.sh "CHECK_SOURCES" " " "$1" "$2" "$3" || exit 1 16 17mk="$1" 18 19[ "$LTC_COVERAGE" != "" ] && mk="$mk COVERAGE=1" 20 21# stock build 22bash run.sh "STOCK" " " "$mk" "$2" "$3" || exit 1 23 24# EASY build 25bash run.sh "EASY" "-DLTC_EASY" "$mk" "$2" "$3" || exit 1 26 27# SMALL code 28bash run.sh "SMALL" "-DLTC_SMALL_CODE" "$mk" "$2" "$3" || exit 1 29 30# NOTABLES 31bash run.sh "NOTABLES" "-DLTC_NO_TABLES" "$mk" "$2" "$3" || exit 1 32 33# SMALL+NOTABLES 34bash run.sh "SMALL+NOTABLES" "-DLTC_SMALL_CODE -DLTC_NO_TABLES" "$mk" "$2" "$3" || exit 1 35 36# CLEANSTACK 37bash run.sh "CLEANSTACK" "-DLTC_CLEAN_STACK" "$mk" "$2" "$3" || exit 1 38 39# CLEANSTACK + SMALL 40bash run.sh "CLEANSTACK+SMALL" "-DLTC_SMALL_CODE -DLTC_CLEAN_STACK" "$mk" "$2" "$3" || exit 1 41 42# CLEANSTACK + NOTABLES 43bash run.sh "CLEANSTACK+NOTABLES" "-DLTC_NO_TABLES -DLTC_CLEAN_STACK" "$mk" "$2" "$3" || exit 1 44 45# CLEANSTACK + NOTABLES + SMALL 46bash run.sh "CLEANSTACK+NOTABLES+SMALL" "-DLTC_NO_TABLES -DLTC_CLEAN_STACK -DLTC_SMALL_CODE" "$mk" "$2" "$3" || exit 1 47 48# NO_FAST 49bash run.sh "NO_FAST" "-DLTC_NO_FAST" "$mk" "$2" "$3" || exit 1 50 51# NO_FAST + NOTABLES 52bash run.sh "NO_FAST+NOTABLES" "-DLTC_NO_FAST -DLTC_NO_TABLES" "$mk" "$2" "$3" || exit 1 53 54# NO_ASM 55bash run.sh "NO_ASM" "-DLTC_NO_ASM" "$mk" "$2" "$3" || exit 1 56 57# NO_TIMING_RESISTANCE 58bash run.sh "NO_TIMING_RESISTANCE" "-DLTC_NO_ECC_TIMING_RESISTANT -DLTC_NO_RSA_BLINDING" "$mk" "$2" "$3" || exit 1 59 60# CLEANSTACK+NOTABLES+SMALL+NO_ASM+NO_TIMING_RESISTANCE 61bash run.sh "CLEANSTACK+NOTABLES+SMALL+NO_ASM+NO_TIMING_RESISTANCE" "-DLTC_CLEAN_STACK -DLTC_NO_TABLES -DLTC_SMALL_CODE -DLTC_NO_ECC_TIMING_RESISTANT -DLTC_NO_RSA_BLINDING" "$mk" "$2" "$3" || exit 1 62 63# test build with no testing 64bash testbuild.sh "NOTEST" "-DLTC_NO_TEST" "$mk" "$2" "$3" || exit 1 65 66# test build with no file routines 67bash testbuild.sh "NOFILE" "-DLTC_NO_FILE" "$mk" "$2" "$3" || exit 1 68 69# ref: HEAD -> master, tag: v1.18.2 70# git commit: 7e7eb695d581782f04b24dc444cbfde86af59853 71# commit time: 2018-07-01 22:49:01 +0200 72