| |
| |
| |
| |
| |
| pkgp_musl_build_dir() { |
| PKG_BUILD_DIR="${1}-${2}-${PKG_TARGET}"; |
| }; |
| |
| pkgp_musl_configure() { |
| ex_rtl_fileop rm "${PKG_BASE_DIR}/${PKG_BUILD_DIR}"; |
| ex_rtl_fileop mkdir "${PKG_BASE_DIR}/${PKG_BUILD_DIR}"; |
| ex_rtl_fileop cd "${PKG_BASE_DIR}/${PKG_BUILD_DIR}"; |
| env lz_cflags_cmdline="" \ |
| lz_debug="yes" \ |
| ../lazy/lazy \ |
| -a "${ARCH}" \ |
| -c gcc \ |
| -f "${PKG_DESTDIR}" \ |
| -n musl \ |
| -p "../musl-${PKG_VERSION}" \ |
| -t "${lz_target}" \ |
| -x config; |
| }; |
| |
| pkg_musl_no_complex_host_all() { |
| local _install="" _restart_at="${1}"; |
| PKG_MUSL_VERSION="${PKG_VERSION}"; |
| |
| ex_rtl_fetch_urls_git "${PKG_BASE_DIR}" "lazy=${DEFAULT_GITROOT}/lazy"; |
| export lz_arch="${ARCH}" lz_cflags_debug="-O2" lz_target="${PKG_TARGET}"; |
| |
| _install=install_no_complex; |
| pkgp_musl_build_dir "musl-${PKG_VERSION}" cross; |
| if ! ex_pkg_state_test "${PKG_NAME}" fetch "${_restart_at}"; then |
| ex_rtl_fetch_url_wget \ |
| "http://www.musl-libc.org/releases/musl-${PKG_VERSION}.tar.gz" \ |
| "${PKG_MUSL_NO_COMPLEX_SHA256SUM}"; |
| ex_rtl_fileop rm "${PKG_BASE_DIR}/mmglue"; |
| ex_rtl_fetch_urls_git "${PKG_BASE_DIR}" "mmglue=${DEFAULT_GITROOT}/mmglue"; |
| ex_pkg_state_set "${PKG_NAME}" fetch -extract; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" extract "${_restart_at}"; then |
| ex_rtl_fileop rm "musl-${PKG_VERSION}"; |
| tar -C "${PKG_BASE_DIR}" -xf "${BUILD_DLCACHEDIR}/musl-${PKG_VERSION}.tar.gz"; |
| set +o noglob; |
| ex_rtl_fileop cp ${PKG_BASE_DIR}/mmglue/* "${PKG_BASE_DIR}/musl-${PKG_VERSION}/"; |
| set -o noglob; |
| ex_pkg_state_set "${PKG_NAME}" extract -patch; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" patch "${_restart_at}"; then |
| set +o noglob; for _patch_fname in \ |
| "${MIDIPIX_BUILD_PWD}/patches/musl/"*.patch; do |
| if [ -r "${_patch_fname}" ]; then |
| patch -b -d "${PKG_BASE_DIR}/musl-${PKG_VERSION}" -p1 < "${_patch_fname}"; |
| fi; |
| done; set -o noglob; |
| ex_pkg_state_set "${PKG_NAME}" patch -configure; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" configure "${_restart_at}"; then |
| pkgp_musl_configure; |
| ex_pkg_state_set "${PKG_NAME}" configure -build; |
| else |
| ex_rtl_fileop cd "${PKG_BUILD_DIR}"; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" install_subdirs "${_restart_at}"; then |
| pkg_install_subdirs; |
| ex_pkg_state_set "${PKG_NAME}" install_subdirs -build; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" build "${_restart_at}"; then |
| ./lazy -e "${_install}" -x build; |
| ex_pkg_state_set "${PKG_NAME}" build -install; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" install "${_restart_at}"; then |
| pkg_install; |
| ex_pkg_state_set "${PKG_NAME}" install finish; |
| fi; |
| }; |
| |
| pkg_musl_full_host_all() { |
| local _install="" _restart_at="${1}"; |
| |
| ex_rtl_fetch_urls_git "${PKG_BASE_DIR}" "lazy=${DEFAULT_GITROOT}/lazy"; |
| export lz_arch="${ARCH}" lz_cflags_debug="-O2" lz_target="${PKG_TARGET}"; |
| |
| _install=install; |
| pkgp_musl_build_dir "musl-${PKG_VERSION}" cross; |
| if ! ex_pkg_state_test "${PKG_NAME}" fetch "${_restart_at}"; then |
| ex_rtl_fetch_url_wget \ |
| "http://www.musl-libc.org/releases/musl-${PKG_VERSION}.tar.gz" \ |
| "${PKG_MUSL_NO_COMPLEX_SHA256SUM}"; |
| ex_rtl_fileop rm "${PKG_BASE_DIR}/mmglue"; |
| ex_rtl_fetch_urls_git "${PKG_BASE_DIR}" "mmglue=${DEFAULT_GITROOT}/mmglue"; |
| ex_pkg_state_set "${PKG_NAME}" fetch -extract; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" extract "${_restart_at}"; then |
| ex_rtl_fileop rm "musl-${PKG_VERSION}"; |
| tar -C "${PKG_BASE_DIR}" -xf "${BUILD_DLCACHEDIR}/musl-${PKG_VERSION}.tar.gz"; |
| set +o noglob; |
| ex_rtl_fileop cp ${PKG_BASE_DIR}/mmglue/* "${PKG_BASE_DIR}/musl-${PKG_VERSION}/"; |
| set -o noglob; |
| ex_pkg_state_set "${PKG_NAME}" extract -patch; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" patch "${_restart_at}"; then |
| set +o noglob; for _patch_fname in \ |
| "${MIDIPIX_BUILD_PWD}/patches/musl/"*.patch; do |
| if [ -r "${_patch_fname}" ]; then |
| patch -b -d "${PKG_BASE_DIR}/musl-${PKG_VERSION}" -p1 < "${_patch_fname}"; |
| fi; |
| done; set -o noglob; |
| ex_pkg_state_set "${PKG_NAME}" patch -configure; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" configure "${_restart_at}"; then |
| pkgp_musl_configure; |
| ex_pkg_state_set "${PKG_NAME}" configure -build; |
| else |
| ex_rtl_fileop cd "${PKG_BUILD_DIR}"; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" install_subdirs "${_restart_at}"; then |
| pkg_install_subdirs; |
| ex_pkg_state_set "${PKG_NAME}" install_subdirs -build; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" build "${_restart_at}"; then |
| ./lazy -e "${_install}" -x build; |
| ex_pkg_state_set "${PKG_NAME}" build -install; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" install "${_restart_at}"; then |
| pkg_install; |
| ex_pkg_state_set "${PKG_NAME}" install finish; |
| fi; |
| }; |
| |
| pkg_musl_full_all() { |
| local _install="" _restart_at="${1}"; |
| |
| ex_rtl_fetch_urls_git "${PKG_BASE_DIR}" "lazy=${DEFAULT_GITROOT}/lazy"; |
| export lz_arch="${ARCH}" lz_cflags_debug="-O2" lz_target="${PKG_TARGET}"; |
| |
| _install=install; |
| pkgp_musl_build_dir "musl-${PKG_VERSION}" native; |
| if ! ex_pkg_state_test "${PKG_NAME}" fetch "${_restart_at}"; then |
| ex_rtl_fetch_url_wget \ |
| "http://www.musl-libc.org/releases/musl-${PKG_VERSION}.tar.gz" \ |
| "${PKG_MUSL_NO_COMPLEX_SHA256SUM}"; |
| ex_rtl_fileop rm "${PKG_BASE_DIR}/mmglue"; |
| ex_rtl_fetch_urls_git "${PKG_BASE_DIR}" "mmglue=${DEFAULT_GITROOT}/mmglue"; |
| ex_pkg_state_set "${PKG_NAME}" fetch -extract; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" extract "${_restart_at}"; then |
| ex_rtl_fileop rm "musl-${PKG_VERSION}"; |
| tar -C "${PKG_BASE_DIR}" -xf "${BUILD_DLCACHEDIR}/musl-${PKG_VERSION}.tar.gz"; |
| set +o noglob; |
| ex_rtl_fileop cp ${PKG_BASE_DIR}/mmglue/* "${PKG_BASE_DIR}/musl-${PKG_VERSION}/"; |
| set -o noglob; |
| ex_pkg_state_set "${PKG_NAME}" extract -patch; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" patch "${_restart_at}"; then |
| set +o noglob; for _patch_fname in \ |
| "${MIDIPIX_BUILD_PWD}/patches/musl/"*.patch; do |
| if [ -r "${_patch_fname}" ]; then |
| patch -b -d "${PKG_BASE_DIR}/musl-${PKG_VERSION}" -p1 < "${_patch_fname}"; |
| fi; |
| done; set -o noglob; |
| ex_pkg_state_set "${PKG_NAME}" patch -configure; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" configure "${_restart_at}"; then |
| pkgp_musl_configure; |
| ex_pkg_state_set "${PKG_NAME}" configure -build; |
| else |
| ex_rtl_fileop cd "${PKG_BUILD_DIR}"; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" install_subdirs "${_restart_at}"; then |
| pkg_install_subdirs; |
| ex_pkg_state_set "${PKG_NAME}" install_subdirs -build; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" build "${_restart_at}"; then |
| ./lazy -e "${_install}" -x build; |
| ex_rtl_fileop ln_symbolic ../lib/libc.so "${PKG_DESTDIR}/bin/ldd"; |
| ex_pkg_state_set "${PKG_NAME}" build -install; |
| fi; |
| if ! ex_pkg_state_test "${PKG_NAME}" install "${_restart_at}"; then |
| pkg_install; |
| ex_pkg_state_set "${PKG_NAME}" install finish; |
| fi; |
| }; |
| |
| |