diff options
Diffstat (limited to 'vars/perl.vars')
-rw-r--r-- | vars/perl.vars | 45 |
1 files changed, 28 insertions, 17 deletions
diff --git a/vars/perl.vars b/vars/perl.vars index 6a42a4ef..b9708ec1 100644 --- a/vars/perl.vars +++ b/vars/perl.vars @@ -3,22 +3,33 @@ # pkg_perl_fetch_extract_post() { - local _fname_src="" _fname_dst="" _cflag=""; - (rtl_fileop cd "${PKG_BASE_DIR}"; - for _fname_src in $(find perl-cross -type f \ - -not -path perl-cross/.git/\* -not -name .gitignore); do - _fname_dst="perl-${PKG_VERSION}${_fname_src#perl-cross}"; - if [ -f "${_fname_dst}" ]; then - rtl_fileop mv "${_fname_dst}" "${_fname_dst}.orig"; - fi; - if [ ! -d "$(rtl_dirname "${_fname_dst}")" ]; then - rtl_fileop mkdir "$(rtl_dirname "${_fname_dst}")"; - fi; - rtl_fileop cp "${_fname_src}" "${_fname_dst}"; - done); - for _cflag in ${PKG_CFLAGS_CONFIGURE}; do - PKG_CONFIGURE_ARGS="${PKG_CONFIGURE_ARGS:+${PKG_CONFIGURE_ARGS} }-A ccflags=${_cflag}"; - done; + local _cflag="" _fname_dst="" _fname_src=""; + if ! ( if ! rtl_fileop cd "${PKG_BASE_DIR}"; then + return 1; + else + for _fname_src in $(find perl-cross -type f -not -path perl-cross/.git/\* -not -name .gitignore); do + _fname_dst="perl-${PKG_VERSION}${_fname_src#perl-cross}"; + if [ -f "${_fname_dst}" ]; then + if ! rtl_fileop mv "${_fname_dst}" "${_fname_dst}.orig"; then + return 1; + fi; + fi; + if [ ! -d "$(rtl_dirname "${_fname_dst}")" ]; then + if ! rtl_fileop mkdir "$(rtl_dirname "${_fname_dst}")"; then + return 1; + fi; + fi; + if ! rtl_fileop cp "${_fname_src}" "${_fname_dst}"; then + return 1; + fi; + done; + fi); then + return 1; + else + for _cflag in ${PKG_CFLAGS_CONFIGURE}; do + PKG_CONFIGURE_ARGS="$(rtl_lconcat "${PKG_CONFIGURE_ARGS}" "-A ccflags=${_cflag}")"; + done; + fi; }; -# vim:filetype=sh +# vim:filetype=sh textwidth=0 |