25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tde-packaging/redhat/build/get_source_files.sh

43 lines
1.3 KiB

#!/bin/bash
PKGNAME="${1##*/}"
TDE_VERSION="${2:-${TDE_VERSION:-14.1.0}}"
DIST="$3"
[ -z "${PKGNAME}" ] && echo "You must specify a package name !" && exit 1
SPECFILE=$(get_specfile.sh ${PKGNAME} ${TDE_VERSION})
SPECDIR="${SPECFILE%/*}"
RPMPKGNAME="$(get_rpm_package_name.sh ${PKGNAME})"
[ ! -r "${SPECFILE}" ] && exit 2
while read var val; do
case "${var}" in
Version:*) VERSION="${val}";;
Source*:|Source:|Patch[0-9]*:)
if [ "${val:0:7}" = "http://" ] || [ "${val:0:8}" = "https://" ]; then
FILE="${SPECDIR}/${val##*/}"
else
FILE="${SPECDIR}/${val}"
fi
if [ "${DIST}" = "any" ] && [ "${var//%\{?dist\}/}" = "${var}" ]; then
FILES="${FILE//%\{?dist\}/.}"*
else
FILES="${FILE}"
fi
for FILE in $FILES; do
for name in ${RPMPKGNAME} ${PKGNAME} trinity-${PKGNAME}; do
file=$(rpm --define "tde_pkg ${PKGNAME}" \
--define "tde_version ${TDE_VERSION}" \
--define "name ${name}" \
--define "version ${VERSION}" \
--define "dist ${DIST:-$(rpm -E %dist)}" \
-E "${FILE}")
[ -r "${file}" ] && break
done
[ -r "${file}" ] && echo "${file}"
done
;;
esac
done < "${SPECFILE}"