# # . ./build.vars and set -o errexit -o noglob are assumed. # parse_with_pkg_name ${1}; if [ ${PKG_DISABLED:-0} -eq 1 ]; then exit 0; elif ! is_build_script_done fetch; then if test_cmd pkg_${PKG_NAME}_fetch; then pkg_${PKG_NAME}_fetch; else if [ "${PKG_URL_TYPE:-wget}" = wget ]; then fetch "${PKG_URL}" ${PKG_SHA256SUM}; else fetch_git ${PKG_SUBDIR} ${PKG_URL} ${PKG_GIT_BRANCH}; fi; fi; if test_cmd pkg_${PKG_NAME}_fetch_post; then pkg_${PKG_NAME}_fetch_post; fi; set_build_script_done fetch -extract; fi; if test_cmd pkg_${PKG_NAME}_finish; then pkg_${PKG_NAME}_finish; exit 0; elif [ "${PKG_URL_TYPE:-wget}" = wget ] &&\ ! is_build_script_done extract; then secure_rm ${PKG_SUBDIR}; if [ ${PKG_SUBDIR_CREATE:-0} -eq 1 ]; then insecure_mkdir ${PKG_SUBDIR}; fi; if [ "${PKG_FNAME##*.tar.}" = "bz2" ]; then bunzip2 -d < ${DLCACHEDIR}/${PKG_FNAME} | tar ${PKG_SUBDIR_CREATE:+-C ${PKG_SUBDIR}} -xf -; elif [ "${PKG_FNAME##*.tar.}" = "gz" ]; then gunzip -d < ${DLCACHEDIR}/${PKG_FNAME} | tar ${PKG_SUBDIR_CREATE:+-C ${PKG_SUBDIR}} -xf -; elif [ "${PKG_FNAME##*.tar.}" = "xz" ]; then xz -d < ${DLCACHEDIR}/${PKG_FNAME} | tar ${PKG_SUBDIR_CREATE:+-C ${PKG_SUBDIR}} -xf -; elif [ "${PKG_FNAME##*.t}" = "bz2" ]; then bunzip2 -d < ${DLCACHEDIR}/${PKG_FNAME} | tar ${PKG_SUBDIR_CREATE:+-C ${PKG_SUBDIR}} -xf -; elif [ "${PKG_FNAME##*.t}" = "gz" ]; then gunzip -d < ${DLCACHEDIR}/${PKG_FNAME} | tar ${PKG_SUBDIR_CREATE:+-C ${PKG_SUBDIR}} -xf -; elif [ "${PKG_FNAME##*.t}" = "xz" ]; then xz -d < ${DLCACHEDIR}/${PKG_FNAME} | tar ${PKG_SUBDIR_CREATE:+-C ${PKG_SUBDIR}} -xf -; else tar ${PKG_SUBDIR_CREATE:+-C ${PKG_SUBDIR}} -xf ${DLCACHEDIR}/${PKG_FNAME}; fi; if test_cmd pkg_${PKG_NAME}_extract_post; then pkg_${PKG_NAME}_extract_post; fi; set_build_script_done extract -build_dir; fi; if [ -z "${PKG_BUILD_DIR}" ]; then set_build_dir ${PKG_SUBDIR} ${PKG_BUILD_TYPE:-native}; fi; if ! is_build_script_done build_dir; then [ "${PKG_SUBDIR}" != "${PKG_BUILD_DIR}" ] &&\ secure_rm ${PKG_BUILD_DIR}; insecure_mkdir ${PKG_BUILD_DIR}; set_build_script_done build_dir -patch_pre; fi; if ! is_build_script_done patch_pre; then for __ in \ ${MIDIPIX_BUILD_PWD}/../${PKG_SUBDIR}_pre.local.patch \ ${MIDIPIX_BUILD_PWD}/../${PKG_SUBDIR}_pre.local@${BUILD_HNAME}.patch \ ${WORKDIR}/chainport/${PKG_SUBDIR}_pre.midipix.patch \ ${MIDIPIX_BUILD_PWD}/patches/${PKG_SUBDIR}_pre.local.patch \ ${MIDIPIX_BUILD_PWD}/patches/${PKG_SUBDIR}_pre.local@${BUILD_HNAME}.patch; do if [ -r "${__}" ]; then patch -b -d ${PKG_SUBDIR} -p1 < ${__}; fi; done; unset __; if test_cmd pkg_${PKG_NAME}_patch_pre_post; then pkg_${PKG_NAME}_patch_pre_post; fi; set_build_script_done patch_pre -autoconf; fi; if [ -e ${PKG_SUBDIR}/configure -o \ -e ${PKG_SUBDIR}/configure.ac -o \ -e ${PKG_SUBDIR}/configure.in -o \ -e ${PKG_SUBDIR}/config.guess ] \ && ! is_build_script_done autoconf; then find ${PKG_SUBDIR} -name config.sub \ -exec echo mv -- {} {}.orig \; \ -exec mv -- {} {}.orig \; \ -exec echo install -m 0700 ${MIDIPIX_BUILD_PWD}/etc/config.sub {} \; \ -exec install -m 0700 ${MIDIPIX_BUILD_PWD}/etc/config.sub {} \;; if [ -e ${PKG_SUBDIR}/configure.ac -a \ ! -e ${PKG_SUBDIR}/configure ]; then if [ -e ${PKG_SUBDIR}/autogen.sh ]; then for __ in ${PKG_SUBDIR}/build-aux ${PKG_SUBDIR}; do if [ -e ${__} ]; then echo install -m 0700 \ ${MIDIPIX_BUILD_PWD}/etc/config.sub \ ${__}/config.sub; install -m 0700 \ ${MIDIPIX_BUILD_PWD}/etc/config.sub \ ${__}/config.sub; break; fi; done; (cd ${PKG_SUBDIR} && ${SHELL} ./autogen.sh) || exit 1; else (cd ${PKG_SUBDIR} && autoconf) || exit 1; fi; fi; for __ in ${PKG_BUILD_DIR} ${PKG_CONFIG_CACHE_EXTRA}; do echo cp -- ${MIDIPIX_BUILD_PWD}/etc/config.cache ${__}/; cp -- ${MIDIPIX_BUILD_PWD}/etc/config.cache ${__}/; done; set_build_script_done autoconf -patch; fi; if ! is_build_script_done patch; then if [ -d ${MIDIPIX_BUILD_PWD}/patches/${PKG_NAME} ]; then set +o noglob; for __patch_fname in ${MIDIPIX_BUILD_PWD}/patches/${PKG_NAME}/*.patch; do patch -b -d ${PKG_SUBDIR} -p1 < ${__patch_fname}; done; set -o noglob; fi; for __patch_fname in \ ${MIDIPIX_BUILD_PWD}/../${PKG_SUBDIR}.local.patch \ ${MIDIPIX_BUILD_PWD}/../${PKG_SUBDIR}.local@${BUILD_HNAME}.patch \ ${WORKDIR}/chainport/${PKG_SUBDIR}.midipix.patch \ ${MIDIPIX_BUILD_PWD}/patches/${PKG_SUBDIR}.local.patch \ ${MIDIPIX_BUILD_PWD}/patches/${PKG_SUBDIR}.local@${BUILD_HNAME}.patch; do if [ -r "${__patch_fname}" ]; then patch -b -d ${PKG_SUBDIR} -p1 < ${__patch_fname}; fi; done; unset __patch_fname; if test_cmd pkg_${PKG_NAME}_patch_post; then pkg_${PKG_NAME}_patch_post; fi; set_build_script_done patch -configure; fi; PKG_SUBDIR_PATH=${PWD}/${PKG_SUBDIR#/}; if [ -z "${PKG_CONFIGURE}" ]; then PKG_CONFIGURE=${PKG_SUBDIR_PATH}/configure; else PKG_CONFIGURE=${PWD}/${PKG_CONFIGURE#/}; fi; cd ${PKG_BUILD_DIR}; if [ "${PKG_BUILD_TYPE}" = "host" ]; then export AR=ar; export CC=gcc; export CXX=g++; export RANLIB=ranlib; else export AR=${PKG_TARGET}-ar; export CC=${PKG_TARGET}-gcc; export CXX=${PKG_TARGET}-g++; export RANLIB=${PKG_TARGET}-ranlib; fi; if [ -x ${PKG_CONFIGURE} ]; then export CFLAGS_FOR_BUILD="${HOST_TOOLCHAIN_CFLAGS_CONFIGURE_DEFAULT}"; fi; if [ -x ${PKG_CONFIGURE} ]\ || test_cmd pkg_${PKG_NAME}_configure\ && ! is_build_script_done configure; then if test_cmd pkg_${PKG_NAME}_configure; then pkg_${PKG_NAME}_configure; else if test_cmd pkg_${PKG_NAME}_configure_pre; then pkg_${PKG_NAME}_configure_pre; fi; CFLAGS="${PKG_CFLAGS_CONFIGURE}${PKG_CFLAGS_CONFIGURE_EXTRA:+ ${PKG_CFLAGS_CONFIGURE_EXTRA}}"\ LDFLAGS="${PKG_LDFLAGS_CONFIGURE}${PKG_LDFLAGS_CONFIGURE_EXTRA:+ ${PKG_LDFLAGS_CONFIGURE_EXTRA}}"\ ${PKG_CONFIGURE} \ ${PKG_CONFIGURE_ARGS} ${PKG_CONFIGURE_ARGS_EXTRA} ${PKG_CONFIGURE_ARGS_EXTRA_DEBUG}; fi; set_build_script_done configure clean -build; else __no_autoconf=1; set_build_script_done clean -build; fi; if ! is_build_script_done clean; then make clean; set_build_script_done clean -build; fi; if ! is_build_script_done build; then if test_cmd pkg_${PKG_NAME}_build; then pkg_${PKG_NAME}_build; elif [ -n "${PKG_BUILD_CMDLINE}" ]; then ${PKG_BUILD_CMDLINE}; elif [ ${PKG_NO_MAKE_BUILD:-0} -eq 0 ]; then if [ "${PKG_SLIBTOOL}" != "default" ]; then export MAKE="make LIBTOOL=${PKG_SLIBTOOL:-slibtool}"; fi; # N.B. We only specify CC= here if the current package does not use GNU # autoconf as it often abuses it by appending -std={gnu99,...} to it # instead of amending CFLAGS. run_cmd_unsplit make \ ${PKG_MAKEFLAGS_BUILD} \ ${PKG_MAKEFLAGS_BUILD_EXTRA} \ AR=${AR} ${__no_autoconf:+CC=${CC}} RANLIB=${RANLIB} \ "${PKG_CFLAGS_BUILD:+CFLAGS=${PKG_CFLAGS_BUILD}}" \ "${CFLAGS_FOR_BUILD:+CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD}}" \ "${PKG_CFLAGS_BUILD_EXTRA:+CFLAGS+=${PKG_CFLAGS_BUILD_EXTRA}}" \ "${PKG_LDFLAGS_BUILD:+LDFLAGS=${PKG_LDFLAGS_BUILD}}" \ "${PKG_LDFLAGS_BUILD_EXTRA:+LDFLAGS+=${PKG_LDFLAGS_BUILD_EXTRA}}"; unset __no_autoconf; fi; set_build_script_done build -install; fi; if ! is_build_script_done install; then if test_cmd pkg_${PKG_NAME}_install; then pkg_${PKG_NAME}_install; else if [ ${PKG_NO_MAKE_INSTALL:-0} -eq 0 ]; then run_cmd_unsplit make \ ${PKG_MAKEFLAGS_INSTALL} \ ${PKG_MAKEFLAGS_INSTALL_EXTRA} \ AR=${AR} CC=${CC} RANLIB=${RANLIB} \ "${PKG_CFLAGS_INSTALL:+CFLAGS=${PKG_CFLAGS_INSTALL}}" \ "${PKG_CFLAGS_INSTALL_EXTRA:+CFLAGS+=${PKG_CFLAGS_INSTALL_EXTRA}}" \ "${PKG_LDFLAGS_INSTALL:+LDFLAGS=${PKG_LDFLAGS_INSTALL}}" \ "${PKG_LDFLAGS_INSTALL_EXTRA:+LDFLAGS+=${PKG_LDFLAGS_INSTALL_EXTRA}}" \ "${PKG_RANLIB_INSTALL:+RANLIB=${PKG_RANLIB_INSTALL}}" \ ${PKG_INSTALL_TARGET:=install}; if [ -n "${PKG_PREFIX_EXTRA}" ]; then run_cmd_unsplit make \ ${PKG_MAKEFLAGS_INSTALL} \ ${PKG_MAKEFLAGS_INSTALL_EXTRA} \ AR=${AR} CC=${CC} RANLIB=${RANLIB} \ "${PKG_CFLAGS_INSTALL:+CFLAGS=${PKG_CFLAGS_INSTALL}}" \ "${PKG_CFLAGS_INSTALL_EXTRA:+CFLAGS+=${PKG_CFLAGS_INSTALL_EXTRA}}" \ "${PKG_LDFLAGS_INSTALL:+LDFLAGS=${PKG_LDFLAGS_INSTALL}}" \ "${PKG_LDFLAGS_INSTALL_EXTRA:+LDFLAGS+=${PKG_LDFLAGS_INSTALL_EXTRA}}" \ "${PKG_RANLIB_INSTALL:+RANLIB=${PKG_RANLIB_INSTALL}}" \ ${PKG_INSTALL_TARGET_EXTRA:=install} \ DESTDIR=${PKG_PREFIX_EXTRA}; fi; fi; if test_cmd pkg_${PKG_NAME}_install_post; then pkg_${PKG_NAME}_install_post; fi; fi; if [ -d ${PKG_PREFIX}/lib ]; then for __ in $(find ${PKG_PREFIX}/lib -type f -name \*.la); do secure_rm ${__}; done; fi; if [ -n "${PKG_INSTALL_FILES}" ]; then (set -- ${PKG_INSTALL_FILES}; while [ ${#} -gt 0 ]; do case "${1}" in @*=*) __ln_target="${1%=*}"; __ln_target="${__ln_target#@}"; __ln_fname="${1#*=}"; echo ln -sf -- ${__ln_target} ${PKG_PREFIX}/${__ln_fname}; ln -sf -- ${__ln_target} ${PKG_PREFIX}/${__ln_fname}; ;; /=*) __mkdir_fname="${1#/=}"; insecure_mkdir ${PKG_PREFIX}/${__mkdir_fname}; ;; *) __file_fname_src="${1%=*}"; __file_fname_dst="${1#*=}"; echo cp -pP -- ${__file_fname_src} ${PKG_PREFIX}/${__file_fname_dst}; cp -pP -- ${__file_fname_src} ${PKG_PREFIX}/${__file_fname_dst}; ;; esac; shift; done); fi; if [ "${PKG_BUILD_TYPE}" != "host" ] \ && test_cmd perk \ && test_cmd ${PKG_TARGET}-dlltool; then for __so_fname in \ $(find \( -name "*.so" \ -or -name "*.so.[0-9]" \ -or -name "*.so.[0-9].[0-9]" \ -or -name "*.so.[0-9].[0-9].[0-9]" \) -printf '%P\n'); do if [ \( -e ${__so_fname%.so}.lib.a \) -o \ \( ! -e ${PKG_PREFIX}/lib/$(basename ${__so_fname}) \) ]; then continue; else __so_name="${__so_fname%.so}"; echo perk -epdlltool ${__so_fname} \> ${__so_fname%.so}.def; perk -epdlltool ${__so_fname} > ${__so_fname%.so}.def; echo ${PKG_TARGET}-dlltool -l ${__so_fname%.so}.lib.a \ -D ${__so_fname} -d ${__so_fname%.so}.def; ${PKG_TARGET}-dlltool -l ${__so_fname%.so}.lib.a \ -D ${__so_fname} -d ${__so_fname%.so}.def; echo cp -- ${__so_fname%.so}.lib.a "${PKG_PREFIX}/lib"; cp -- ${__so_fname%.so}.lib.a "${PKG_PREFIX}/lib"; fi; done; fi; set_build_script_done install -finish; fi; set_build_script_done finish; # vim:filetype=sh