Lines 1065-1083
Link Here
|
1065 |
qa_var="QA_TEXTRELS_${ARCH}" |
1065 |
qa_var="QA_TEXTRELS_${ARCH}" |
1066 |
[[ -n ${!qa_var} ]] && QA_TEXTRELS=${!qa_var} |
1066 |
[[ -n ${!qa_var} ]] && QA_TEXTRELS=${!qa_var} |
1067 |
[[ -n ${QA_STRICT_TEXTRELS} ]] && QA_TEXTRELS="" |
1067 |
[[ -n ${QA_STRICT_TEXTRELS} ]] && QA_TEXTRELS="" |
1068 |
QA_TEXTRELS=$(echo ${QA_TEXTRELS}) # strip newlines |
1068 |
export QA_TEXTRELS |
1069 |
f="" |
1069 |
f=$(scanelf -qyRF '"%t %p"' "${D}" | grep -v 'usr/lib/debug/') |
1070 |
s=$(scanelf -qyRF '"#t%p"' "${D}" | grep -v 'usr/lib/debug/') |
1070 |
if [[ -n ${f} ]] ; then |
1071 |
s=$(echo ${s}) # strip newlines |
|
|
1072 |
# eval needed to get ${QA_TEXTRELS} expanded so bash splits |
1073 |
# words taking account of spaces in quoted words. |
1074 |
eval "for s in ${s}; do |
1075 |
for t in ${QA_TEXTRELS}; do |
1076 |
[[ \${s} =~ \"^\${t}$\" ]] && continue 2 |
1077 |
done |
1078 |
f=\"\${f}\${s}\n\" |
1079 |
done" |
1080 |
if [[ -n ${f[@]} ]] ; then |
1081 |
echo -ne '\a\n' |
1071 |
echo -ne '\a\n' |
1082 |
echo "QA Notice: the following files contain runtime text relocations" |
1072 |
echo "QA Notice: the following files contain runtime text relocations" |
1083 |
echo " Text relocations require a lot of extra work to be preformed by the" |
1073 |
echo " Text relocations require a lot of extra work to be preformed by the" |
Lines 1085-1091
Link Here
|
1085 |
echo " and might not function properly on other architectures hppa for example." |
1075 |
echo " and might not function properly on other architectures hppa for example." |
1086 |
echo " If you are a programmer please take a closer look at this package and" |
1076 |
echo " If you are a programmer please take a closer look at this package and" |
1087 |
echo " consider writing a patch which addresses this problem." |
1077 |
echo " consider writing a patch which addresses this problem." |
1088 |
printf "${f}" |
1078 |
echo "${f}" |
1089 |
echo -ne '\a\n' |
1079 |
echo -ne '\a\n' |
1090 |
[[ ${FEATURES/stricter} != "${FEATURES}" ]] \ |
1080 |
[[ ${FEATURES/stricter} != "${FEATURES}" ]] \ |
1091 |
&& die "Aborting due to textrels" |
1081 |
&& die "Aborting due to textrels" |
Lines 1110-1126
Link Here
|
1110 |
qa_var="QA_EXECSTACK_${ARCH}" |
1100 |
qa_var="QA_EXECSTACK_${ARCH}" |
1111 |
[[ -n ${!qa_var} ]] && QA_EXECSTACK=${!qa_var} |
1101 |
[[ -n ${!qa_var} ]] && QA_EXECSTACK=${!qa_var} |
1112 |
[[ -n ${QA_STRICT_EXECSTACK} ]] && QA_EXECSTACK="" |
1102 |
[[ -n ${QA_STRICT_EXECSTACK} ]] && QA_EXECSTACK="" |
1113 |
QA_EXECSTACK=$(echo ${QA_EXECSTACK}) # strip newlines |
1103 |
qa_var="QA_WX_LOAD_${ARCH}" |
1114 |
s=$(scanelf -qyRF '"#e%p"' "${D}" | grep -v 'usr/lib/debug/') |
1104 |
[[ -n ${!qa_var} ]] && QA_WX_LOAD=${!qa_var} |
1115 |
s=$(echo ${s}) # strip newlines |
1105 |
[[ -n ${QA_STRICT_EXECSTACK} ]] && QA_WX_LOAD="" |
1116 |
# eval needed to get ${QA_TEXTRELS} expanded so bash splits |
1106 |
export QA_EXECSTACK QA_WX_LOAD |
1117 |
# words taking account of spaces in quoted words. |
1107 |
f=$(scanelf -qyRF '"%e %p"' "${D}" | grep -v 'usr/lib/debug/') |
1118 |
eval "for s in ${s}; do |
|
|
1119 |
for e in ${QA_EXECSTACK}; do |
1120 |
[[ \${s} =~ \"^\${e}$\" ]] && continue 2 |
1121 |
done |
1122 |
f=\"\${f}\${s}\n\" |
1123 |
done" |
1124 |
;; |
1108 |
;; |
1125 |
esac |
1109 |
esac |
1126 |
;; |
1110 |
;; |