${type}.prelude, improved crystal.zsh

master
Luka Vandervelden 2019-11-05 01:16:59 +01:00
parent 0b4028e979
commit dbaa42c1ff
2 changed files with 24 additions and 1 deletions

View File

@ -231,6 +231,14 @@ function main {
: > $Makefile
for target in ${targets[@]}; do
local _type=${type[$target]}
if exists ${_type}.prelude; then
${_type}.prelude
fi
done
if [[ -n "$package" && -n "$version" ]]; then
export package version

View File

@ -1,8 +1,23 @@
function crystal.prelude {
local has_crflags=false
for variable value in ${variables[@]}; do
if [[ "$variable" == "CRFLAGS" ]]; then
has_crflags=true
break
fi
done
if ! $has_crflags; then
variables+=(CRFLAGS "--release")
fi
}
function crystal.build {
write "${target}: ${src[@]} ${depends[$target]} $(dirdep $target)"
write "\t@echo '${fg_bold[magenta]} CR > ${fg_bold[white]}$target${reset_color}'"
write "\t${Q}crystal build ${crflags[$target]:---release} \$(CRFLAGS) ${src[@]} -o '${target}'"
write "\t${Q}crystal build ${crflags[$target]} \$(CRFLAGS) ${src[@]} -o '${target}'"
write "\n"
}