reGen2 Linux Release Metatool
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

101 lines
3.6 KiB

#!/bin/bash
#-------------------------------------------------------------------------------
# Checks whether a supplied variable is defined or not
# Parameters: %variable%
#-------------------------------------------------------------------------------
function isDefined() {
[[ ${!1-X} == ${!1-Y} ]]
}
#-------------------------------------------------------------------------------
# Checks whether a supplied variable is enabled or not
# Parameters: %variable%
#-------------------------------------------------------------------------------
function isEnabled() {
case "${1}" in
[Ee][Nn][Aa][Bb][Ll][Ee][Dd])
return 0
;;
[Tt][Rr][Uu][Ee])
return 0
;;
[Yy][Ee][Ss])
return 0
;;
1)
return 0
;;
esac
return 1
}
#-------------------------------------------------------------------------------
# Checks whether a variable is defined and if value's length > 0
# Parameters: %variable%
#-------------------------------------------------------------------------------
function isSet() {
if isDefined ${1}; then
if [[ -n ${!1} ]]; then
return 0
fi
fi
return 1
}
#-------------------------------------------------------------------------------
# Loads EzBuild configuration
#-------------------------------------------------------------------------------
function loadConfiguration() {
source ${EZROOT}/config/${EZNAME}.conf &> /dev/null || panic "Unable to load configuration files!\nYour EzBuild installation seems to be broken..."
source ${EZROOT}/config/layout.conf &> /dev/null || panic "Unable to load configuration files!\nYour EzBuild installation seems to be broken..."
source /etc/ezbuild/${EZNAME}.conf &> /dev/null || panic "Unable to load configuration files!\nYour EzBuild installation seems to be broken..."
source /etc/ezbuild/layout.conf &> /dev/null || panic "Unable to load configuration files!\nYour EzBuild installation seems to be broken..."
}
#-------------------------------------------------------------------------------
# Loads all EzBuild Libraries
#-------------------------------------------------------------------------------
function loadLibraries() {
source ${EZROOT}/libraries/colors &> /dev/null || panic "Unable to load necessary libraries!\nYour EzBuild installation seems to be broken..."
}
#-------------------------------------------------------------------------------
# Outputs error message and aborts program execution
# Parameters: %message%
#-------------------------------------------------------------------------------
function panic() {
echo -e "FATAL ERROR: ${@}"
exit 1
}
#-------------------------------------------------------------------------------
# Returns a UNIX timestamp
#-------------------------------------------------------------------------------
function timestamp() {
echo $(date +%s)
}
#-------------------------------------------------------------------------------
# Returns lowercase string
# Parameters: %string%
#-------------------------------------------------------------------------------
function toLower() {
echo "${@}" | tr '[:upper:]' '[:lower:]'
}
#-------------------------------------------------------------------------------
# Returns uppercase string
# Parameters: %string%
#-------------------------------------------------------------------------------
function toUpper() {
echo "${@}" | tr '[:lower:]' '[:upper:]'
}
#-------------------------------------------------------------------------------
# Returns only the first part of a string, delimited by tabs or spaces
# Parameters: %string%
#-------------------------------------------------------------------------------
function trim() {
echo ${1}
}