diff --git a/363.zsh.build b/363.zsh.build new file mode 120000 index 0000000..52bb82e --- /dev/null +++ b/363.zsh.build @@ -0,0 +1 @@ +pkg.build \ No newline at end of file diff --git a/363.zsh.vars b/363.zsh.vars new file mode 100644 index 0000000..0c4dce2 --- /dev/null +++ b/363.zsh.vars @@ -0,0 +1,12 @@ +# +# . ./build.vars and set -o errexit are assumed. +# + +pkg_zsh_fetch() { + WGET_ARGS="-O ${PKG_FNAME}"; + fetch "${PKG_URL}"; + fetch "$(sed -ne '/class="direct-download">/s/^\s*$/\1/p' \ + ${PKG_FNAME})" ${PKG_SHA256SUM}; +}; + +# vim:filetype=sh diff --git a/build.subr b/build.subr index 2308a9f..7317893 100644 --- a/build.subr +++ b/build.subr @@ -174,10 +174,11 @@ clear_env_with_except() { unset _cewe_vfilter _cewe_vspec; }; +# N.B. URLs ($1) may contain `?' or '&' characters. fetch() { [ ${ARG_NO_DOWNLOAD:-0} -eq 1 ] && return; rm_if_exists $(get_basename ${1}); - wget ${WGET_ARGS} ${1}; + wget ${WGET_ARGS} "${1}"; if [ ${#} -eq 2 ]; then set -- $(get_basename ${1}) "$(compare_hash $(get_basename ${1}) ${2})" ${2}; if [ -n "${2}" ]; then diff --git a/build.vars b/build.vars index 3e3f23d..7669917 100644 --- a/build.vars +++ b/build.vars @@ -42,8 +42,8 @@ export PATH="${PREFIX}/bin${PATH:+:${PATH}}"; : ${WGET_ARGS:="-N --no-check-certificate"}; : ${WORKDIR:=${PREFIX}/tmp}; -: ${PKG_BUILD_NAMES:="apk_tools bash binutils binutils_host bzip2 coreutils curl dalist dash diffutils findutils gawk git glib gmp grep gzip hexcurse irssi less libelf libffi libressl libz make mpc mpfr nano ncurses ncursestw ncursesw ntapi ntcon ntctty openssh patch pemagine popt psxscl psxstub psxtypes rsync sed tar util_linux which xz"}; -: ${PKG_BUILD_VARS:="AR_BUILD AR_CONFIGURE BUILD_DIR BUILD_TYPE CC_BUILD CC_CONFIGURE CC_INSTALL CFLAGS_BUILD_EXTRA CFLAGS_CONFIGURE CFLAGS_CONFIGURE_EXTRA CFLAGS_INSTALL_EXTRA CONFIGURE_ARGS CONFIGURE_ARGS_EXTRA ENV_VARS_EXTRA GIT_ARGS_EXTRA INSTALL_TARGET LDFLAGS_BUILD_EXTRA LDFLAGS_CONFIGURE LDFLAGS_CONFIGURE_EXTRA LDFLAGS_INSTALL_EXTRA LIBFILES_FIX LIBTOOL_MIDIPIX LIBTOOL_MIDIPIX_FIX MAKEFLAGS_BUILD MAKEFLAGS_BUILD_EXTRA MAKEFLAGS_INSTALL MAKEFLAGS_INSTALL_EXTRA NO_CLEAN PATCHES_EXTRA_URL PREFIX_EXTRA RANLIB_INSTALL SHA256SUM SUBDIR URL URL_TYPE VERSION"}; +: ${PKG_BUILD_NAMES:="apk_tools bash binutils binutils_host bzip2 coreutils curl dalist dash diffutils findutils gawk git glib gmp grep gzip hexcurse irssi less libelf libffi libressl libz make mpc mpfr nano ncurses ncursestw ncursesw ntapi ntcon ntctty openssh patch pemagine popt psxscl psxstub psxtypes rsync sed tar util_linux which xz zsh"}; +: ${PKG_BUILD_VARS:="AR_BUILD AR_CONFIGURE BUILD_DIR BUILD_TYPE CC_BUILD CC_CONFIGURE CC_INSTALL CFLAGS_BUILD_EXTRA CFLAGS_CONFIGURE CFLAGS_CONFIGURE_EXTRA CFLAGS_INSTALL_EXTRA CONFIGURE_ARGS CONFIGURE_ARGS_EXTRA ENV_VARS_EXTRA FNAME GIT_ARGS_EXTRA INSTALL_TARGET LDFLAGS_BUILD_EXTRA LDFLAGS_CONFIGURE LDFLAGS_CONFIGURE_EXTRA LDFLAGS_INSTALL_EXTRA LIBFILES_FIX LIBTOOL_MIDIPIX LIBTOOL_MIDIPIX_FIX MAKEFLAGS_BUILD MAKEFLAGS_BUILD_EXTRA MAKEFLAGS_INSTALL MAKEFLAGS_INSTALL_EXTRA NO_CLEAN PATCHES_EXTRA_URL PREFIX_EXTRA RANLIB_INSTALL SHA256SUM SUBDIR URL URL_FNAME URL_TYPE VERSION"}; : ${PKG_LVL0_CFLAGS_CONFIGURE:=-O0}; : ${PKG_LVL0_CONFIGURE_ARGS:="-C --host=${HOST_NATIVE} --prefix= --target=${TARGET}"}; : ${PKG_LVL0_MAKEFLAGS_BUILD:=${MAKEFLAGS_DEFAULT}}; @@ -263,6 +263,10 @@ export PATH="${PREFIX}/bin${PATH:+:${PATH}}"; : ${PKG_XZ_SHA256SUM:=73df4d5d34f0468bd57d09f2d8af363e95ed6cc3a4a86129d2f2c366259902a2}; : ${PKG_XZ_URL:=http://tukaani.org/xz/xz-${PKG_XZ_VERSION}.tar.gz}; : ${PKG_XZ_LIBFILES_FIX:=1}; +: ${PKG_ZSH_VERSION:=5.2}; +: ${PKG_ZSH_SHA256SUM:=f17916320ffaa844bbd7ce48ceeb5945fc5f3eff64b149b4229bbfbdf3795a9d}; +: ${PKG_ZSH_URL:="http://downloads.sourceforge.net/project/zsh/zsh/${PKG_ZSH_VERSION}/zsh-${PKG_ZSH_VERSION}.tar.xz"}; +: ${PKG_ZSH_FNAME:=zsh-${PKG_ZSH_VERSION}.tar.xz}; : ${PKG_DALIST_URL:=${GITROOT_HEAD}/dalist}; : ${PKG_NTAPI_URL:=${GITROOT_HEAD}/ntapi}; diff --git a/pkg.build b/pkg.build index 0c57a35..104404c 100644 --- a/pkg.build +++ b/pkg.build @@ -4,10 +4,14 @@ parse_with_pkg_name ${SCRIPT_FNAME%[0-9][0-9]*} ${2} ${PKG_BUILD_NAMES}; if ! is_build_script_done fetch; then - if [ "${PKG_URL_TYPE:-wget}" = wget ]; then - fetch ${PKG_URL} ${PKG_SHA256SUM}; + if test_cmd pkg_${PKG_NAME}_fetch; then + pkg_${PKG_NAME}_fetch; else - fetch_git ${PKG_SUBDIR} ${PKG_URL} "${PKG_GIT_ARGS_EXTRA}"; + if [ "${PKG_URL_TYPE:-wget}" = wget ]; then + fetch "${PKG_URL}" ${PKG_SHA256SUM}; + else + fetch_git ${PKG_SUBDIR} ${PKG_URL} "${PKG_GIT_ARGS_EXTRA}"; + fi; fi; set_build_script_done fetch -extract; fi; diff --git a/zsh-5.2.local.patch b/zsh-5.2.local.patch new file mode 100644 index 0000000..c9df0c3 --- /dev/null +++ b/zsh-5.2.local.patch @@ -0,0 +1,22 @@ +--- zsh-5.2/config.sub.orig 2014-12-13 23:55:54.000000000 +0000 ++++ zsh-5.2/config.sub 2016-03-07 19:53:49.936497358 +0000 +@@ -735,6 +735,10 @@ + microblaze) + basic_machine=microblaze-xilinx + ;; ++ midipix) ++ basic_machine=x86_64-pc ++ os=-midipix ++ ;; + mingw32) + basic_machine=i386-pc + os=-mingw32 +@@ -1294,7 +1298,7 @@ + | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ + | -chorusos* | -chorusrdb* | -cegcc* \ + | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ +- | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ ++ | -midipix* | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ + | -uxpv* | -beos* | -mpeix* | -udk* \ + | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ + | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \