#!/bin/bash
# Opcions standard de compilat de c
PrOgRaM="${0##*/}"
function Error_Avortant(){ echo -e "\nERROR a ${PrOgRaM}: ${1}.\nAvortant...\n" ;  exit $2 ; }
#
[ -z "$1" -o "${1:0:1}" = "-" ] && echo -e "\nUs: ${PrOgRaM} <nom_de_fitxer>\n" && exit 1
[ -r "$1" ] || Error_Avortant "fitxer '${1}' no trobat" 5
#
fitxer="$1" ; Nomexe="${fitxer%.*}.exe" ; shift
#
case "`echo "${fitxer##*.}" | tr '[A-Z]' '[a-z]'`" in
   c)        gcc -Wall -O3 "$fitxer" -o "$Nomexe" $@ ;;
   cpp|c++)  g++ -Wall -O3 "$fitxer" -o "$Nomexe" $@ ;;
   *)        Error_Avortant "tipus de fitxer desconegut" 11 ;;
esac
#
[ $? -eq 0 -a -e "$Nomexe" ] || Error_Avortant "indeterminat al compilar el fitxer '$fitxer'" 111
#
echo -e "\nFitxer '$Nomexe' creat satisfactòriament...\n" ; exit 0
#




#!/bin/bash
gcc -Wall -O3 "$1" -o "${1}.exe"
