summaryrefslogtreecommitdiffhomepage
path: root/007.musl.full.build
diff options
context:
space:
mode:
authorLucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de>2016-06-09 18:58:37 +0000
committerLucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de>2016-06-09 18:58:37 +0000
commit95162014754fca037510884f5a3c0c73988cd902 (patch)
treec66d9cc03d8809c467509faf59536cdf0796af73 /007.musl.full.build
parent87cf3d28e3e7dd2ad1960b72d0a342cdf306134d (diff)
downloadmidipix_build-95162014754fca037510884f5a3c0c73988cd902.tar.bz2
midipix_build-95162014754fca037510884f5a3c0c73988cd902.tar.xz
Adds and integrates slibtool:
- Adds ${PKG_SLIBTOOL}. - pkg.build: export ${MAKE} as `make LIBTOOL=${PKG_SLIBTOOL}'. - binutils{_host,}: use slibtool-static. - git: add NEEDS_SSL_WITH_CURL=1 to ${PKG_GIT_MAKEFLAGS_BUILD_EXTRA}. - pacman-5.0.1: add `LIBALPM_LIBS=-lssl -lbz2 -llzma -lz' to ${PKG_PACMAN_ENV_VARS_EXTRA}; Makefile.am patch. Introduces 32-bit (i686-nt32-midipix) support, selected by ARCH=nt32 and defaulting to 64-bit builds: - Create ${PREFIX_TARGET}/lib. - Remove ${PREFIX_TARGET} when cleaning the prefix if -c has been specified. - Set ${HOST_NATIVE}, ${TARGET}, and ${TARBALL_{SRC_,}FNAME_PREFIX} from ${ARCH}. - pkg.build: use ${TARGET}-dlltool instead of x86_64-nt64-midipix-dlltool. - glib-2.46.2: broken at present. - libffi-3.2.1/src/x86/win32.S: fix symbol prefix. - musl-1.1.12/arch/nt32/bits/syscall.h: copied from musl-1.1.12/arch/nt64/bits/syscall.h. - perl-5.22.1: Set --target from ${TARGET}. Bug fixes: - psxstub: make {_,__}so_entry_point weak symbols to express preference for the real psxscl shared object. - bash-4.3: fix lib/intl/libgnuintl.h issue. - libarchive-3.1.2: import FreeBSD-SA-16:23.libarchive and FreeBSD-SA-16:22.libarchive security fixes. Include all directories beneath ${WORKDIR} in the source tarball. Updated TODO list at the end of README.
Diffstat (limited to '007.musl.full.build')
-rw-r--r--007.musl.full.build68
1 files changed, 68 insertions, 0 deletions
diff --git a/007.musl.full.build b/007.musl.full.build
new file mode 100644
index 00000000..6de1540a
--- /dev/null
+++ b/007.musl.full.build
@@ -0,0 +1,68 @@
+#
+# . ./build.vars and set -o errexit are assumed.
+#
+
+# Order: no-complex, native
+
+export lz_arch=${ARCH} lz_cflags_debug=-O2 lz_target=${TARGET};
+
+if [ "${3}" = no-complex ]; then
+ # Musl: build (no-complex)
+ _install=install_no_complex;
+ set_build_dir musl-${PKG_MUSL_VERSION}-${3} cross;
+ if ! is_build_script_done fetch; then
+ fetch http://www.musl-libc.org/releases/musl-${PKG_MUSL_VERSION}.tar.gz \
+ ${PKG_MUSL_SHA256SUM};
+ [ ${ARG_NO_DOWNLOAD:-0} -eq 0 ] &&\
+ rm_if_exists mmglue;
+ fetch_git mmglue ${GITROOT}/mmglue;
+ set_build_script_done fetch -extract;
+ fi;
+ if ! is_build_script_done extract; then
+ rm_if_exists musl-${PKG_MUSL_VERSION};
+ tar -xf musl-${PKG_MUSL_VERSION}.tar.gz;
+ cp -R mmglue/* musl-${PKG_MUSL_VERSION}/;
+ set_build_script_done extract -patch;
+ fi;
+ if ! is_build_script_done patch; then
+ patch -b -d musl-${PKG_MUSL_VERSION} -p1 \
+ < ${MIDIPIX_BUILD_PWD}/musl-${PKG_MUSL_VERSION}.local.patch;
+ set_build_script_done patch -configure;
+ fi;
+elif [ "${3}" = native ]; then
+ # Musl: build (full)
+ _install=install;
+ set_build_dir musl-${PKG_MUSL_VERSION} "${3}";
+elif [ "${3}" = full ]; then
+ # Musl: build (full)
+ _install=install;
+ set_build_dir musl-${PKG_MUSL_VERSION} cross;
+fi;
+if ! is_build_script_done configure; then
+ rm_if_exists -m -c ${PKG_BUILD_DIR};
+ env lz_cflags_cmdline="${PKG_MUSL_CFLAGS_CONFIGURE_EXTRA}"\
+ ../lazy/lazy \
+ -a ${ARCH} \
+ -c gcc \
+ -f ${PREFIX_LVL} \
+ -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;
+ [ "${3}" = native ] && \
+ ln -sf ../lib/libc.so ${PREFIX_LVL}/bin/ldd;
+ set_build_script_done build finish;
+fi;
+
+# vim:filetype=sh