# opkbuild # lib/metadata # Functions for parsing and validating package metadata. # # Copyright (C) 2012 Patrick "P. J." McDermott # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . [ -n "${_OB_METADATA_SM}" ] && return 0 _OB_METADATA_SM='true' ob_use 'metadata/@@METADATA@@' ob_validate_source_name() { _ob_local _obvsn_name if [ ${#} -eq 1 ]; then _obvsn_name="${1}" else _ob_return 125 return ${?} fi _ob_metadata_do 'validate_source_name' "${_obvsn_name}" _ob_return ${?} return ${?} } ob_validate_binary_name() { _ob_local _obvbn_name if [ ${#} -eq 1 ]; then _obvbn_name="${1}" else _ob_return 125 return ${?} fi _ob_metadata_do 'validate_binary_name' "${_obvbn_name}" _ob_return ${?} return ${?} } ob_parse_version() { _ob_local _obpv_opt _obpv_upstreamver_var _obpv_distrev_var _obpv_version while getopts 'u:d:' _obpv_opt; do case "${_obpv_opt}" in u) _obpv_upstreamver_var="${OPTARG}" if ! _ob_validate_var_name "${_obpv_upstreamver_var}"; then _ob_return 125 return ${?} fi ;; d) _obpv_distrev_var="${OPTARG}" if ! _ob_validate_var_name "${_obpv_distrev_var}"; then _ob_return 125 return ${?} fi ;; ?) _ob_return 125 return ${?} ;; esac done shift $(($OPTIND - 1)) if [ ${#} -eq 1 ]; then _obpv_version="${1}" else _ob_return 125 return ${?} fi if ! _ob_metadata_do 'validate_version' "${_obpv_version}"; then _ob_return 1 return ${?} fi if [ -n "${_obpv_upstreamver_var}" ]; then eval ${_obpv_upstreamver_var}="$(_ob_metadata_do 'get_upstreamver' \ "${_obpv_version}")" fi if [ -n "${_obpv_distrev_var}" ]; then eval ${_obpv_distrev_var}="$(_ob_metadata_do 'get_distrev' \ "${_obpv_version}")" fi _ob_return 0 return ${?} } ob_get_system_arch() { _ob_local if [ ${#} -gt 0 ]; then _ob_return 125 return ${?} fi _ob_metadata_do 'get_system_arch' _ob_return ${?} return ${?} } ob_get_system_plat() { _ob_local if [ ${#} -gt 0 ]; then _ob_return 125 return ${?} fi _ob_metadata_do 'get_system_plat' _ob_return ${?} return ${?} } _ob_metadata_do() { _ob_local _obmd_func _obmd_func="${1}" shift 1 "_ob_${_obmd_func}_@@METADATA@@" "${@}" _ob_return ${?} return ${?} }