summaryrefslogtreecommitdiffhomepage
path: root/pkg.build
diff options
context:
space:
mode:
Diffstat (limited to 'pkg.build')
-rw-r--r--pkg.build88
1 files changed, 48 insertions, 40 deletions
diff --git a/pkg.build b/pkg.build
index e32c531f..5f46a481 100644
--- a/pkg.build
+++ b/pkg.build
@@ -1,58 +1,59 @@
+# Order for build level 2 (runtime:) psxtypes pemagine dalist ntapi psxscl ntcon ntctty
+
parse_with_pkg_name ${2} \
- bash binutils binutils_host coreutils diffutils \
- findutils gawk gmp grep libelf make mpc mpfr \
- patch sed;
+ bash binutils binutils_host coreutils dalist \
+ diffutils findutils gawk gmp grep libelf make \
+ mpc mpfr ntapi ntcon ntctty patch pemagine \
+ psxscl psxtypes sed;
if is_build_script_done finished; then
exit 212;
else
- fetch ${PKG_URL} ${PKG_SHA256SUM};
- if [ "x${SCRIPT_FNAME%[0-9][0-9]*}" = "x1" ]; then
- _configure_args="--host=${HOST_NATIVE} --prefix=${PKG_PREFIX:-/}";
- PKG_NO_CONFIG_CACHE=1;
+ case "${SCRIPT_FNAME%[0-9][0-9]*}" in
+ 1) _configure_args="--host=${HOST_NATIVE} --prefix=${PKG_PREFIX:-/} --target=${TARGET}";
+ PKG_NO_CONFIG_CACHE=1; ;;
+ 2)
+ _configure_args="--prefix=${PREFIX_LVL} --host=${HOST_NATIVE}";
+ PKG_BUILD_TYPE=cross; PKG_URL_TYPE=git;
+ PKG_NO_CONFIG_CACHE=${PKG_NO_DESTDIR:=${PKG_NO_EXTRACT:=${PKG_NO_PATCH:=1}}};
+ export CFLAGS_PATH=-I${PREFIX_LVL}/include;
+ export LDFLAGS_PATH=-L${PREFIX_LVL}/lib; ;;
+ *) _configure_args=${PKG_CONFIGURE_ARGS:--C --host=${HOST_NATIVE} --prefix= --target=${TARGET}}; ;;
+ esac;
+ if [ "x${PKG_URL_TYPE:-wget}" = "xwget" ]; then
+ fetch ${PKG_URL} ${PKG_SHA256SUM};
else
- _configure_args=${PKG_CONFIGURE_ARGS:--C --host=${HOST_NATIVE} --prefix=};
- fi;
- if [ ${PKG_NO_DESTDIR:-0} -eq 0 ]; then
- : ${DESTDIR:=${PREFIX_NATIVE}};
+ fetch_git ${PKG_SUBDIR} ${PKG_URL};
fi;
set_build_dir ${PKG_SUBDIR} ${PKG_BUILD_TYPE:-native};
fi;
-if ! is_build_script_done extracted; then
+if command -v pkg_${PKG_NAME}_finish >/dev/null; then
+ pkg_${PKG_NAME}_finish; exit 0;
+elif [ ${PKG_NO_EXTRACT:-0} -eq 0 ] &&\
+! is_build_script_done extracted; then
rm_if_exists ${PKG_SUBDIR};
tar -axf ${PKG_FNAME};
set_build_script_done extracted -patched;
fi;
-if ! is_build_script_done patched; then
- if [ -n "${PKG_PATCHES_EXTRA}" ]; then
- (rm_if_exists -m -c ${PKG_SUBDIR}-patches-extra;
- wget -c -nd -np -r -R \*.htm\* -R \*.sig ${PKG_PATCHES_EXTRA}
- for _patch_fname in \
- $(find . -type f -not -iname \*.sig | sort); do
- patch -d ../${PKG_SUBDIR} -p0 \
- < ${_patch_fname};
- done;
- for _patch_fname in ${PKG_PATCHES_EXTRA_MANIFEST}; do
- _patch_sha256sum=${2}; shift;
- if ! compare_hash ${_patch_fname} ${_patch_sha256sum}; then
- log_msg fail "Error: hash mismatch for patch file \`${_patch_fname}'.";
- exit 1;
- fi;
- done); wait;
+if [ ${PKG_NO_PATCH:-0} -eq 0 ] &&\
+! is_build_script_done patched; then
+ if [ -n "${PKG_PATCHES_EXTRA_URL}" ]; then
+ apply_patches ${PKG_PATCHES_EXTRA_URL} ${PKG_SUBDIR}-patches-extra;
+ if [ -n "${PKG_PATCHES_EXTRA_MANIFEST}" ]; then
+ compare_hash_manifest ${PKG_PATCHES_EXTRA_MANIFEST};
+ fi;
fi;
patch -d ${PKG_SUBDIR} -p1 \
< portage/${PKG_SUBDIR}.midipix.patch;
- if [ ${PKG_NO_LIBTOOL_MIDIPIX:-0} -eq 0 ]; then
+ [ ${PKG_NO_CONFIG_CACHE:-0} -eq 0 ] &&\
+ cp ../portage/config.cache .;
+ [ ${PKG_NO_LIBTOOL_MIDIPIX:-0} -eq 0 ] && \
cp portage/libtool.midipix ${PKG_SUBDIR}/;
- fi;
set_build_script_done patched -configured;
fi;
if ! is_build_script_done configured; then
rm_if_exists -m -c ${BUILD_DIR};
- [ ${PKG_NO_CONFIG_CACHE:-0} -eq 0 ] &&\
- cp ../portage/config.cache .;
../${PKG_SUBDIR}/configure \
${_configure_args} \
- --target=${TARGET} \
${PKG_CONFIGURE_EXTRA_ARGS};
set_build_script_done configured -built;
else
@@ -63,15 +64,22 @@ if ! is_build_script_done built; then
set_build_script_done built -installed;
fi;
if ! is_build_script_done installed1; then
- make ${MAKEFLAGS} ${DESTDIR:+DESTDIR=${DESTDIR}} install;
+ if [ ${PKG_NO_DESTDIR:-0} -eq 0 ]; then
+ make ${MAKEFLAGS} DESTDIR=${PREFIX_LVL} install;
+ else
+ make ${MAKEFLAGS} install;
+ fi;
set_build_script_done installed1 -installed2 -finished;
fi;
-if [ -n "${PKG_PREFIX_EXTRA}" ]\
-&& ! is_build_script_done installed2; then
- make DESTDIR=${PKG_PREFIX_EXTRA} install;
- set_build_script_done installed2 -finished;
-elif command -v pkg_${PKG_NAME}_install_post >/dev/null; then
- pkg_${PKG_NAME}_install_post;
+if ! is_build_script_done installed2; then
+ [ -n "${PKG_PREFIX_EXTRA}" ] &&\
+ make DESTDIR=${PKG_PREFIX_EXTRA} install;
+ set_build_script_done installed2 -installed3 -finished;
+fi;
+if ! is_build_script_done installed3; then
+ command -v pkg_${PKG_NAME}_install_post \
+ >/dev/null && pkg_${PKG_NAME}_install_post;
+ set_build_script_done installed3 -finished;
fi;
set_build_script_done finished;