From 9904d628f4676c4ad440190805822c205c911f42 Mon Sep 17 00:00:00 2001 From: P. J. McDermott Date: Tue, 31 Jul 2012 21:37:57 -0400 Subject: Rewrite oh-applypatches. --- diff --git a/locale/en_US.sh b/locale/en_US.sh index 520a372..3b14cc8 100644 --- a/locale/en_US.sh +++ b/locale/en_US.sh @@ -70,9 +70,6 @@ oh_str_arch_stat_plat=' Platform: %s' oh_str_host_arch_stat_header='Host system:' oh_str_cant_make_work_area='Can'\''t make work area' oh_str_cant_enter_work_area='Can'\''t enter work area' -oh_str_applying_patch='Applying patch "%s"...' -oh_str_cant_apply_patch='Can'\''t apply patch "%s"' -oh_str_no_patches='No patches to be applied' # oh-unpacksource strings: oh_str_usage_oh_unpacksource='Usage: oh-unpacksource' @@ -86,3 +83,9 @@ oh_str_multiple_top_upstream_dirs='Multiple top-level directories found in upstr oh_str_unpacking_upstream='Extracting upstream source archive...' oh_str_cant_unpack_upstream='Can'\''t extract upstream source archive' oh_str_cant_move_native='Can'\''t move extracted upstream source directory' + +# oh-applypatches strings: +oh_str_usage_oh_applypatches='Usage: oh-applypatches' +oh_str_applying_patch='Applying patch "%s"...' +oh_str_cant_apply_patch='Can'\''t apply patch "%s"' +oh_str_no_patches='No patches to be applied' diff --git a/src/oh-applypatches.sh b/src/oh-applypatches.sh index 5ab52a6..62f9f87 100644 --- a/src/oh-applypatches.sh +++ b/src/oh-applypatches.sh @@ -19,30 +19,34 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -. @@LIBDIR@@/opkhelper/messages +. @@LIBDIR@@/messages +. @@LIBDIR@@/locale -print_usage() +main() { - printf 'Usage: %s\n' "${1}" -} + oh_locale_set -if [ ${#} -ne 0 ]; then - print_usage ${0} >&2 - exit 1 -fi + if [ "${#}" -ne 0 ]; then + oh_usage + exit 1 + fi -applied=false + apply_patches +} -if [ -d ../patches ]; then - # Iterate over patches ordered alphabetically by name. - for patch in $(ls -1 ../patches | sort); do - oh_info 'Applying patch "%s"...' "${patch}" - patch -N -p 1 -u -d src -i "../../patches/${patch}" || exit 1 - applied=true - done -fi +apply_patches() +{ + applied=false + if [ -d ../patches ]; then + # Iterate over patches ordered alphabetically by name. + for patch in $(ls -1 ../patches | sort); do + oh_info "${oh_str_applying_patch}" "${patch}" + patch -N -p 1 -u -d src -i "../../patches/${patch}" || \ + oh_error "${oh_str_cant_apply_patch}" "${patch}" + applied=true + done + fi + ${applied} || oh_info "${oh_str_no_patches}" +} -# Provide output even if patches directory didn't exist or had no visible files. -if ! ${applied}; then - oh_info 'No patches to be applied' -fi +main "${@}" diff --git a/src/opkbuild.sh b/src/opkbuild.sh index 7fdd33d..c3ae895 100644 --- a/src/opkbuild.sh +++ b/src/opkbuild.sh @@ -357,18 +357,7 @@ step_patch() { oh_cv_set step patch - # TODO: Put this in oh-applypatches. - applied=false - if [ -d ../patches ]; then - # Iterate over patches ordered alphabetically by name. - for patch in $(ls -1 ../patches | sort); do - oh_info "${oh_str_applying_patch}" "${patch}" - patch -N -p 1 -u -d src -i "../../patches/${patch}" || \ - oh_error "${oh_str_cant_apply_patch}" "${patch}" - applied=true - done - fi - ${applied} || oh_info "${oh_str_no_patches}" + oh-applypatches step_config } -- cgit v0.9.1