star-aerosol

Describe the radiative properties of aerosols
git clone git://git.meso-star.fr/star-aerosol.git
Log | Files | Refs | README | LICENSE

make.sh (1539B)


      1 #!/bin/sh
      2 
      3 # Copyright (C) 2022, 2023 |Méso|Star> (contact@meso-star.com)
      4 #
      5 # This program is free software: you can redistribute it and/or modify
      6 # it under the terms of the GNU General Public License as published by
      7 # the Free Software Foundation, either version 3 of the License, or
      8 # (at your option) any later version.
      9 #
     10 # This program is distributed in the hope that it will be useful,
     11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
     12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
     13 # GNU General Public License for more details.
     14 #
     15 # You should have received a copy of the GNU General Public License
     16 # along with this program. If not, see <http://www.gnu.org/licenses/>.
     17 
     18 set -e
     19 
     20 config_test()
     21 {
     22   for i in "$@"; do
     23     test=$(basename "${i}" ".c")
     24     test_list="${test_list} ${test}"
     25     printf "%s: %s\n" "${test}" "src/${test}.o"
     26   done
     27   printf "test_bin: %s\n" "${test_list}"
     28 }
     29 
     30 run_test()
     31 {
     32   for i in "$@"; do
     33     test=$(basename "${i}" ".c")
     34 
     35     printf "%s " "${test}"
     36     if "./${test}" > /dev/null 2>&1; then
     37       printf "\033[1;32mOK\033[m\n"
     38     else
     39       printf "\033[1;31mError\033[m\n"
     40     fi
     41   done 2> /dev/null
     42 }
     43 
     44 
     45 clean_test()
     46 {
     47   for i in "$@"; do
     48     rm -f "$(basename "${i}" ".c")"
     49   done
     50 }
     51 
     52 install()
     53 {
     54   prefix=$1
     55   shift 1
     56 
     57   mkdir -p "${prefix}"
     58 
     59   for i in "$@"; do
     60     dst="${prefix}/${i##*/}"
     61 
     62     if cmp -s "${i}" "${dst}"; then
     63       printf "Up to date %s\n" "${dst}"
     64     else
     65       printf "Installing %s\n" "${dst}"
     66       cp "${i}" "${prefix}"
     67     fi
     68   done
     69 }
     70 
     71 "$@"