From 570129106f694bef52e07a5fc08f6c63f7f54073 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lucio=20Andr=C3=A9s=20Illanes=20Albornoz=20=28arab=2C=20vx?= =?UTF-8?q?p=29?= Date: Mon, 30 Jan 2017 18:50:20 +0000 Subject: build.sh: 2nd refactoring pt. I. build/{gcc,musl}.*.build: refactored into vars/{gcc,musl}.*.build. build/pkg.build: merged w/ build.sh (structurally) and refactored into subr/pkg_*.subr (implementations.) patches/gcc_native_x86_64_w64_mingw32.local.patch: fix wrong filename. subr/build.subr: merges source_scripts() into build.sh. subr/pkg.subr: accept either of ${PKG_..._{URL,VERSION}} when checking for missing entries in var/build.vars. vars/build.vars: adds vars for {gcc,musl}_*. vars/psxstub.vars: convert to pkg_..._all(); call pkg_fetch(). --- build/gcc.full.build | 198 -------------------------- build/gcc.host.mingw_w64.build | 1 - build/gcc.libstdc++-v3.build | 1 - build/gcc.native.build | 1 - build/gcc.runtime.build | 1 - build/gcc.stage1.build | 1 - build/gcc.stage1.mingw_w64.build | 1 - build/musl.full.build | 68 --------- build/musl.native.build | 1 - build/musl.no-complex.build | 1 - build/pkg.build | 295 --------------------------------------- 11 files changed, 569 deletions(-) delete mode 100644 build/gcc.full.build delete mode 120000 build/gcc.host.mingw_w64.build delete mode 120000 build/gcc.libstdc++-v3.build delete mode 120000 build/gcc.native.build delete mode 120000 build/gcc.runtime.build delete mode 120000 build/gcc.stage1.build delete mode 120000 build/gcc.stage1.mingw_w64.build delete mode 100644 build/musl.full.build delete mode 120000 build/musl.native.build delete mode 120000 build/musl.no-complex.build delete mode 100644 build/pkg.build (limited to 'build') diff --git a/build/gcc.full.build b/build/gcc.full.build deleted file mode 100644 index ee597167..00000000 --- a/build/gcc.full.build +++ /dev/null @@ -1,198 +0,0 @@ -# -# . ./build.vars and set -o errexit -o noglob are assumed. -# - -if [ "${3}" = mingw_w64 ]; then - TARGET=x86_64-w64-mingw32; - PKG_TARGET=x86_64-w64-mingw32; - if [ ! -L ${PREFIX}/${TARGET}/mingw ]; then - secure_rm ${PREFIX}/${TARGET}/mingw; - ln -sf . ${PREFIX}/${TARGET}/mingw; - fi; -fi; - -# Order: stage1, runtime, full, native - -export MAKE="make LIBTOOL=slibtool"; -if [ "${2}" = runtime ]\ -|| [ "${2}" = libstdc++-v3 ]\ -|| [ "${2}" = full ]; then - set_build_dir cbb-gcc-${PKG_GCC_VERSION} cross; - cd ${PKG_BUILD_DIR}; - if [ "${2}" = runtime ]; then - # GCC, compiler runtime. - if ! is_build_script_done build; then - make ${MAKEFLAGS} all-target-libgcc; - set_build_script_done build -install; - fi; - if ! is_build_script_done install; then - make ${MAKEFLAGS} install-target-libgcc; - set_build_script_done install finish; - fi; - elif [ "${2}" = libstdc++-v3 ]; then - # GCC, libstdc++-v3. - if ! is_build_script_done build; then - make ${MAKEFLAGS} all-target-libstdc++-v3; - set_build_script_done build -install; - fi; - if ! is_build_script_done install; then - make ${MAKEFLAGS} install-target-libstdc++-v3; - set_build_script_done install finish; - fi; - elif [ "${2}" = full ]; then - # GCC, everything else. - if ! is_build_script_done build; then - make ${MAKEFLAGS}; - set_build_script_done build -install; - fi; - if ! is_build_script_done install; then - make ${MAKEFLAGS} install; - set_build_script_done install finish; - fi; - fi; -else - if [ "${2}" = stage1 ]\ - || [ "${2}" = host ]; then - # GCC, stage1. - if ! is_build_script_done fetch; then - fetch_git cbb-gcc-${PKG_GCC_VERSION} \ - ${GITROOT}/cbb/cbb-gcc-${PKG_GCC_VERSION}; - set_build_script_done fetch -configure; - fi; - set_build_dir cbb-gcc-${PKG_GCC_VERSION} cross; - export cbb_ldflags_for_target=--sysroot=${PKG_PREFIX} \ - cbb_sysroot_for_libgcc=${PKG_PREFIX} \ - cbb_target=${TARGET} \ - cbb_neutral_libiberty=no \ - cbb_xgcc_for_specs=${WORKDIR}/${PKG_BUILD_DIR}/gcc/xgcc; - GCCTARGET_FLAGS="-DIN_TARGET_LIBRARY_BUILD --sysroot=${PKG_PREFIX}"; - elif [ "${2}" = native ]; then - # GCC, native. - set_build_dir cbb-gcc-${PKG_GCC_VERSION} native; - export cbb_ldflags_for_target=--sysroot=${PKG_PREFIX} \ - cbb_sysroot_for_libgcc=${PKG_PREFIX} \ - cbb_target=${TARGET} \ - cbb_xgcc_for_specs=${TARGET}-gcc \ - sysroot_headers_suffix=${PKG_PREFIX}; - GCCTARGET_FLAGS="-DIN_TARGET_LIBRARY_BUILD --sysroot=${PKG_PREFIX}"; - fi; - GCCFLAGS="${CFLAGS:+${CFLAGS} }--include $(readlink -f ${WORKDIR}/cbb-gcc-${PKG_GCC_VERSION}/libc/cbb-musl-pe.h)"; - for __ in CFLAGS CFLAGS_FOR_BUILD CPPFLAGS_FOR_BUILD CXXFLAGS CXXFLAGS_FOR_BUILD; do - export "${__}=${GCCFLAGS}"; - done; - for __ in CFLAGS_FOR_TARGET CPPFLAGS_FOR_TARGET CXXFLAGS_FOR_TARGET LIBCFLAGS_FOR_TARGET XGCC_FLAGS_FOR_TARGET; do - export "${__}=${GCCTARGET_FLAGS}"; - done; - for __ in cbb_cflags_for_stage1 cbb_cflags_for_stage2 cbb_cflags_for_stage3 cbb_cflags_for_stage4; do - export "${__}=${CFLAGS_FOR_BUILD}" ; - done; - export CFLAGS CXXFLAGS CFLAGS_FOR_BUILD CPPFLAGS_FOR_BUILD CXXFLAGS_FOR_BUILD CFLAGS_FOR_TARGET XGCC_FLAGS_FOR_TARGET CPPFLAGS_FOR_TARGET CXXFLAGS_FOR_TARGET LIBCFLAGS_FOR_TARGET; - if ! is_build_script_done configure; then - if [ "${2}" = stage1 ]\ - || [ "${2}" = host ]; then - insecure_mkdir ${PKG_PREFIX}/include; - [ \! -d ${PKG_PREFIX}/usr ] && \ - ln -s -- . ${PKG_PREFIX}/usr; - _configure_args="--prefix=${PREFIX} --with-sysroot=${PKG_PREFIX}"; - elif [ "${2}" = native ]; then - insecure_mkdir ${PKG_PREFIX}/${TARGET}; - if [ \! -d ${PKG_PREFIX}/${TARGET}/usr ]; then - ln -s -- . ${PKG_PREFIX}/${TARGET}/usr; - fi; - if [ "${ARCH}" = nt32 ]; then - _configure_args="--host=i686-nt32-midipix"; - else - _configure_args="--host=x86_64-nt64-midipix"; - fi; - _configure_args="${_configure_args} \ - --prefix=/ \ - --with-elf=${PKG_PREFIX} \ - --with-gmp=${PKG_PREFIX} \ - --with-mpc=${PKG_PREFIX} \ - --with-mpfr=${PKG_PREFIX} \ - --with-sysroot="; - fi; - if [ "${TARGET#*mingw*}" != "${TARGET}" ]; then - _configure_args="${_configure_args} \ - --enable-sjlj-exceptions"; - if [ "${2}" != host ]; then - _configure_args="${_configure_args} \ - --host=${TARGET} \ - --without-headers"; - export AR=${PKG_TARGET}-ar; - export AS=${PKG_TARGET}-as; - export CC=${PKG_TARGET}-gcc; - export CXX=${PKG_TARGET}-c++; - export RANLIB=${PKG_TARGET}-ranlib; - fi; - else - _configure_args="${_configure_args} \ - --disable-sjlj-exceptions"; - fi; - if [ "${3}" = mingw_w64 ]\ - && [ -r ${MIDIPIX_BUILD_PWD}/patches/${PKG_NAME}.${2}.${3}.local.patch ]; then - patch -b -d ${PKG_SUBDIR} -p1 < ${MIDIPIX_BUILD_PWD}/patches/${PKG_NAME}.${2}.${3}.local.patch; - fi; - secure_rm ${PKG_BUILD_DIR}; - insecure_mkdir ${PKG_BUILD_DIR}; - secure_cd ${PKG_BUILD_DIR}; - ../cbb-gcc-${PKG_GCC_VERSION}/configure \ - --disable-bootstrap \ - --disable-libmudflap \ - --disable-multilib \ - --disable-nls \ - --disable-obsolete \ - --disable-symvers \ - --enable-canonical-system-headers \ - --enable-__cxa_atexit \ - --enable-debug \ - --enable-gnu-indirect-function \ - --enable-gnu-unique-object \ - --enable-initfini-array \ - --enable-languages=c,c++,objc,lto \ - --enable-libstdcxx-debug \ - --enable-lto \ - --enable-multiarch \ - --enable-secureplt \ - --enable-shared \ - --enable-threads=posix \ - --target=${TARGET} \ - --with-fpmath=sse \ - ${_configure_args}; - set_build_script_done configure clean -build; - else - cd ${PKG_BUILD_DIR}; - fi; - if ! is_build_script_done clean; then - make ${MAKEFLAGS} clean; - set_build_script_done clean -build; - fi; - if ! is_build_script_done build; then - if [ "${2}" = stage1 ]\ - || [ "${2}" = host ]; then - make ${MAKEFLAGS} all-gcc; - elif [ "${2}" = native ]; then - make ${MAKEFLAGS} all-gcc; - make ${MAKEFLAGS} all-target-libgcc; - make ${MAKEFLAGS} all-target-libstdc++-v3; - make ${MAKEFLAGS} all; - fi; - set_build_script_done build -install; - fi; - if ! is_build_script_done install; then - if [ "${2}" = stage1 ]\ - || [ "${2}" = host ]; then - make ${MAKEFLAGS} install-gcc; - __="$(uname -s)"; - if [ "${__#*CYGWIN*}" != "${__}" ]; then - ln -s -- ${PREFIX}/libexec/gcc/${TARGET}/${PKG_GCC_VERSION}/liblto_plugin.dll.a \ - ln -s -- ${PREFIX}/libexec/gcc/${TARGET}/${PKG_GCC_VERSION}/liblto_plugin.so; - fi; - elif [ "${2}" = native ]; then - make ${MAKEFLAGS} DESTDIR=${PKG_PREFIX} install; - fi; - set_build_script_done install finish; - fi; -fi; - -# vim:filetype=sh diff --git a/build/gcc.host.mingw_w64.build b/build/gcc.host.mingw_w64.build deleted file mode 120000 index b809d40d..00000000 --- a/build/gcc.host.mingw_w64.build +++ /dev/null @@ -1 +0,0 @@ -gcc.full.build \ No newline at end of file diff --git a/build/gcc.libstdc++-v3.build b/build/gcc.libstdc++-v3.build deleted file mode 120000 index b809d40d..00000000 --- a/build/gcc.libstdc++-v3.build +++ /dev/null @@ -1 +0,0 @@ -gcc.full.build \ No newline at end of file diff --git a/build/gcc.native.build b/build/gcc.native.build deleted file mode 120000 index b809d40d..00000000 --- a/build/gcc.native.build +++ /dev/null @@ -1 +0,0 @@ -gcc.full.build \ No newline at end of file diff --git a/build/gcc.runtime.build b/build/gcc.runtime.build deleted file mode 120000 index b809d40d..00000000 --- a/build/gcc.runtime.build +++ /dev/null @@ -1 +0,0 @@ -gcc.full.build \ No newline at end of file diff --git a/build/gcc.stage1.build b/build/gcc.stage1.build deleted file mode 120000 index b809d40d..00000000 --- a/build/gcc.stage1.build +++ /dev/null @@ -1 +0,0 @@ -gcc.full.build \ No newline at end of file diff --git a/build/gcc.stage1.mingw_w64.build b/build/gcc.stage1.mingw_w64.build deleted file mode 120000 index b809d40d..00000000 --- a/build/gcc.stage1.mingw_w64.build +++ /dev/null @@ -1 +0,0 @@ -gcc.full.build \ No newline at end of file diff --git a/build/musl.full.build b/build/musl.full.build deleted file mode 100644 index 35d1de28..00000000 --- a/build/musl.full.build +++ /dev/null @@ -1,68 +0,0 @@ -# -# . ./build.vars and set -o errexit -o noglob are assumed. -# - -# Order: no-complex, native - -# Git clone what we need. -fetch_git lazy ${GITROOT}/lazy; - -export lz_arch=${ARCH} lz_cflags_debug=-O2 lz_target=${TARGET}; - -if [ "${2}" = no-complex ]; then - # Musl: build (no-complex) - _install=install_no_complex; - set_build_dir musl-${PKG_MUSL_VERSION}-${2} cross; - if ! is_build_script_done fetch; then - fetch http://www.musl-libc.org/releases/musl-${PKG_MUSL_VERSION}.tar.gz \ - ${PKG_MUSL_SHA256SUM}; - secure_rm mmglue; - fetch_git mmglue ${GITROOT}/mmglue; - set_build_script_done fetch -extract; - fi; - if ! is_build_script_done extract; then - secure_rm musl-${PKG_MUSL_VERSION}; - tar -xf ${DLCACHEDIR}/musl-${PKG_MUSL_VERSION}.tar.gz; - set +o noglob; cp -R -- mmglue/* musl-${PKG_MUSL_VERSION}/; set -o noglob; - set_build_script_done extract -configure; - fi; -elif [ "${2}" = native ]; then - # Musl: build (full) - _install=install; - set_build_dir musl-${PKG_MUSL_VERSION} "${2}"; -elif [ "${2}" = full ]; then - # Musl: build (full) - _install=install; - set_build_dir musl-${PKG_MUSL_VERSION} cross; -fi; -if ! is_build_script_done configure; then - secure_rm ${PKG_BUILD_DIR}; - insecure_mkdir ${PKG_BUILD_DIR}; - secure_cd ${PKG_BUILD_DIR}; - env lz_cflags_cmdline="${PKG_MUSL_CFLAGS_CONFIGURE_EXTRA}" \ - lz_debug="yes" \ - ../lazy/lazy \ - -a ${ARCH} \ - -c gcc \ - -f ${PKG_PREFIX} \ - -n musl \ - -p ../musl-${PKG_MUSL_VERSION} \ - -t ${lz_target} \ - -x config; - set_build_script_done configure clean -build; -else - cd ${PKG_BUILD_DIR}; -fi; -if ! is_build_script_done clean; then - make ${MAKEFLAGS} clean; - set_build_script_done clean -build; -fi; -if ! is_build_script_done build; then - ./lazy -e ${_install} \ - -x build; - [ "${2}" = native ] && \ - ln -sf -- ../lib/libc.so ${PKG_PREFIX}/bin/ldd; - set_build_script_done build finish; -fi; - -# vim:filetype=sh diff --git a/build/musl.native.build b/build/musl.native.build deleted file mode 120000 index 2ed15f0d..00000000 --- a/build/musl.native.build +++ /dev/null @@ -1 +0,0 @@ -musl.full.build \ No newline at end of file diff --git a/build/musl.no-complex.build b/build/musl.no-complex.build deleted file mode 120000 index 2ed15f0d..00000000 --- a/build/musl.no-complex.build +++ /dev/null @@ -1 +0,0 @@ -musl.full.build \ No newline at end of file diff --git a/build/pkg.build b/build/pkg.build deleted file mode 100644 index 029980b4..00000000 --- a/build/pkg.build +++ /dev/null @@ -1,295 +0,0 @@ -# -# . ./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 -- cgit v1.2.3