|
Lines 12-17
Link Here
|
| 12 |
|
12 |
|
| 13 |
PATH=/bin:/usr/bin:/usr/sbin |
13 |
PATH=/bin:/usr/bin:/usr/sbin |
| 14 |
|
14 |
|
|
|
15 |
DIFF_TMP=/var/tmp/tmp.mergemaster`date +%m%d.%H.%M.%S` |
| 16 |
DIFF_COMMENTS_PASS=no |
| 17 |
|
| 15 |
display_usage () { |
18 |
display_usage () { |
| 16 |
VERSION_NUMBER=`grep "[$]FreeBSD:" $0 | cut -d ' ' -f 4` |
19 |
VERSION_NUMBER=`grep "[$]FreeBSD:" $0 | cut -d ' ' -f 4` |
| 17 |
echo "mergemaster version ${VERSION_NUMBER}" |
20 |
echo "mergemaster version ${VERSION_NUMBER}" |
|
Lines 139-153
Link Here
|
| 139 |
esac |
142 |
esac |
| 140 |
fi |
143 |
fi |
| 141 |
if [ "${HANDLE_COMPFILE}" = "v" -o "${HANDLE_COMPFILE}" = "V" ]; then |
144 |
if [ "${HANDLE_COMPFILE}" = "v" -o "${HANDLE_COMPFILE}" = "V" ]; then |
| 142 |
echo '' |
145 |
diff ${DIFF_FLAG} ${DIFF_OPTIONS} "${DESTDIR}${COMPFILE#.}" "${COMPFILE}" > ${DIFF_TMP} |
| 143 |
echo ' ====================================================================== ' |
146 |
# See if differences are in comments only |
| 144 |
echo '' |
147 |
DIFF_COMMENTS_ONLY=no |
| 145 |
( |
148 |
if [ ${DIFF_FLAG} == "-u" ]; then |
| 146 |
echo " *** Displaying differences between ${COMPFILE} and installed version:" |
149 |
if [ "`tail -n+3 ${DIFF_TMP} | grep -E "^(\\+|\\-)"`" == \ |
|
|
150 |
"`tail -n+3 ${DIFF_TMP} | grep -E "^(\\+|\\-)#"`" ]; then |
| 151 |
DIFF_COMMENTS_ONLY=yes |
| 152 |
fi |
| 153 |
fi |
| 154 |
if [ ${DIFF_FLAG} == "-c" ]; then |
| 155 |
if [ "`tail -n+3 ${DIFF_TMP} | grep -E "^! "`" == \ |
| 156 |
"`tail -n+3 ${DIFF_TMP} | grep -E "^! #"`" ]; then |
| 157 |
DIFF_COMMENTS_ONLY=yes |
| 158 |
fi |
| 159 |
fi |
| 160 |
# Display the file if differences are substantial or user wants to see all of them |
| 161 |
if [ ${DIFF_COMMENTS_ONLY} == "no" -o ${DIFF_COMMENTS_PASS} == "no" ]; then |
| 147 |
echo '' |
162 |
echo '' |
| 148 |
diff ${DIFF_FLAG} ${DIFF_OPTIONS} "${DESTDIR}${COMPFILE#.}" "${COMPFILE}" |
163 |
echo ' ====================================================================== ' |
| 149 |
) | ${PAGER} |
164 |
echo '' |
| 150 |
echo '' |
165 |
( |
|
|
166 |
echo " *** Displaying differences between ${COMPFILE} and installed version:" |
| 167 |
echo '' |
| 168 |
cat ${DIFF_TMP} |
| 169 |
) | ${PAGER} |
| 170 |
echo '' |
| 171 |
fi |
| 172 |
rm -f ${DIFF_TMP} |
| 151 |
fi |
173 |
fi |
| 152 |
else |
174 |
else |
| 153 |
echo '' |
175 |
echo '' |
|
Lines 173-191
Link Here
|
| 173 |
esac |
195 |
esac |
| 174 |
fi |
196 |
fi |
| 175 |
|
197 |
|
| 176 |
echo " Use 'd' to delete the temporary ${COMPFILE}" |
198 |
if [ ${DIFF_COMMENTS_ONLY} == "no" -o ${DIFF_COMMENTS_PASS} == "no" ]; then |
| 177 |
echo " Use 'i' to install the temporary ${COMPFILE}" |
199 |
echo " Use 'd' to delete the temporary ${COMPFILE}" |
| 178 |
case "${NO_INSTALLED}" in |
200 |
echo " Use 'i' to install the temporary ${COMPFILE}" |
| 179 |
'') |
201 |
if [ ${DIFF_COMMENTS_ONLY} == "yes" ]; then |
| 180 |
echo " Use 'm' to merge the temporary and installed versions" |
202 |
echo " Use 'a' to install the temporary ${COMPFILE} and other files" |
| 181 |
echo " Use 'v' to view the diff results again" |
203 |
echo " that only differ in comments" |
| 182 |
;; |
204 |
fi |
| 183 |
esac |
205 |
case "${NO_INSTALLED}" in |
| 184 |
echo '' |
206 |
'') |
| 185 |
echo " Default is to leave the temporary file to deal with by hand" |
207 |
echo " Use 'm' to merge the temporary and installed versions" |
| 186 |
echo '' |
208 |
echo " Use 'v' to view the diff results again" |
| 187 |
echo -n "How should I deal with this? [Leave it for later] " |
209 |
;; |
| 188 |
read HANDLE_COMPFILE |
210 |
esac |
|
|
211 |
echo '' |
| 212 |
echo " Default is to leave the temporary file to deal with by hand" |
| 213 |
echo '' |
| 214 |
echo -n "How should I deal with this? [Leave it for later] " |
| 215 |
read HANDLE_COMPFILE |
| 216 |
else |
| 217 |
# Pass automatically |
| 218 |
HANDLE_COMPFILE="p" |
| 219 |
fi |
| 189 |
|
220 |
|
| 190 |
case "${HANDLE_COMPFILE}" in |
221 |
case "${HANDLE_COMPFILE}" in |
| 191 |
[dD]) |
222 |
[dD]) |
|
Lines 193-199
Link Here
|
| 193 |
echo '' |
224 |
echo '' |
| 194 |
echo " *** Deleting ${COMPFILE}" |
225 |
echo " *** Deleting ${COMPFILE}" |
| 195 |
;; |
226 |
;; |
| 196 |
[iI]) |
227 |
[iIaAp]) |
| 197 |
echo '' |
228 |
echo '' |
| 198 |
if mm_install "${COMPFILE}"; then |
229 |
if mm_install "${COMPFILE}"; then |
| 199 |
echo " *** ${COMPFILE} installed successfully" |
230 |
echo " *** ${COMPFILE} installed successfully" |
|
Lines 200-205
Link Here
|
| 200 |
else |
231 |
else |
| 201 |
echo " *** Problem installing ${COMPFILE}, it will remain to merge by hand" |
232 |
echo " *** Problem installing ${COMPFILE}, it will remain to merge by hand" |
| 202 |
fi |
233 |
fi |
|
|
234 |
if [ ${HANDLE_COMPFILE} == "a" -o ${HANDLE_COMPFILE} == "A" ]; then |
| 235 |
DIFF_COMMENTS_PASS=yes |
| 236 |
fi |
| 203 |
;; |
237 |
;; |
| 204 |
[mM]) |
238 |
[mM]) |
| 205 |
case "${NO_INSTALLED}" in |
239 |
case "${NO_INSTALLED}" in |