From b710061c5ea54eb8a42187b563b5f0dd4dec53c4 Mon Sep 17 00:00:00 2001 From: Lucio Andrés Illanes Albornoz Date: Feb 26 2020 21:58:50 +0000 Subject: Implements group-group dependencies. --- diff --git a/groups/010.host_deps.group b/groups/010.host_deps.group index 9d5eb24..0d64edd 100644 --- a/groups/010.host_deps.group +++ b/groups/010.host_deps.group @@ -5,6 +5,7 @@ HOST_DEPS_BUILD_TYPE="host"; HOST_DEPS_CFLAGS_CONFIGURE="${DEFAULT_CFLAGS_HOST:+${DEFAULT_CFLAGS_HOST} }-I${PREFIX}/include"; HOST_DEPS_CXXFLAGS_CONFIGURE="${DEFAULT_CXXFLAGS_HOST:+${DEFAULT_CXXFLAGS_HOST} }-I${PREFIX}/include"; HOST_DEPS_CONFIGURE_ARGS="--disable-nls --prefix=${PREFIX} --program-prefix="; +HOST_DEPS_GROUP_DEPENDS="host_tools"; HOST_DEPS_LDFLAGS_CONFIGURE="-L${PREFIX}/lib -Wl,-rpath,${PREFIX}/lib"; HOST_DEPS_MAKEFLAGS_INSTALL="prefix= PREFIX="; HOST_DEPS_PACKAGES=" diff --git a/groups/020.host_deps_rpm.group b/groups/020.host_deps_rpm.group index f8797a2..7a12143 100644 --- a/groups/020.host_deps_rpm.group +++ b/groups/020.host_deps_rpm.group @@ -5,6 +5,7 @@ HOST_DEPS_RPM_BUILD_TYPE="host"; HOST_DEPS_RPM_CFLAGS_CONFIGURE="${DEFAULT_CFLAGS_HOST:+${DEFAULT_CFLAGS_HOST} }-I${PREFIX}/include"; HOST_DEPS_RPM_CXXFLAGS_CONFIGURE="${DEFAULT_CXXFLAGS_HOST:+${DEFAULT_CXXFLAGS_HOST} }-I${PREFIX}/include"; HOST_DEPS_RPM_CONFIGURE_ARGS="--disable-nls --prefix=${PREFIX}"; +HOST_DEPS_RPM_GROUP_DEPENDS="host_deps host_tools"; HOST_DEPS_RPM_LDFLAGS_CONFIGURE="-L${PREFIX}/lib -Wl,-rpath,${PREFIX}/lib"; HOST_DEPS_RPM_MAKEFLAGS_INSTALL_EXTRA="prefix= PREFIX="; HOST_DEPS_RPM_PACKAGES=" diff --git a/groups/030.host_toolchain.group b/groups/030.host_toolchain.group index d0a1a6f..5806cb6 100644 --- a/groups/030.host_toolchain.group +++ b/groups/030.host_toolchain.group @@ -3,6 +3,7 @@ # HOST_TOOLCHAIN_BUILD_TYPE="host"; HOST_TOOLCHAIN_CONFIGURE_ARGS="--disable-nls --prefix= --target=${DEFAULT_TARGET}"; +HOST_TOOLCHAIN_GROUP_DEPENDS="host_deps host_deps_rpm host_tools"; HOST_TOOLCHAIN_MAKEFLAGS_INSTALL_EXTRA="prefix= PREFIX="; HOST_TOOLCHAIN_PACKAGES=" binutils_host binutils_host_mingw32 gcc_full_host gcc_libstdcpp_v3_host diff --git a/groups/100.native_tools.group b/groups/100.native_tools.group index e110a1e..f3bcfc4 100644 --- a/groups/100.native_tools.group +++ b/groups/100.native_tools.group @@ -2,6 +2,7 @@ # Build group native_tools # NATIVE_TOOLS_CONFIGURE_ARGS="--disable-nls --host=${DEFAULT_TARGET} --program-prefix= --prefix=/ --target=${DEFAULT_TARGET}"; +NATIVE_TOOLS_GROUP_DEPENDS="host_deps host_deps_rpm host_toolchain host_tools"; NATIVE_TOOLS_MAKEFLAGS_INSTALL="PREFIX= prefix="; NATIVE_TOOLS_PACKAGES=" mdso perk pkgconf slibtool"; diff --git a/groups/110.native_toolchain.group b/groups/110.native_toolchain.group index 414fc0c..1bb61a7 100644 --- a/groups/110.native_toolchain.group +++ b/groups/110.native_toolchain.group @@ -2,6 +2,7 @@ # Build group native_toolchain # NATIVE_TOOLCHAIN_CONFIGURE_ARGS="--disable-nls --host=${DEFAULT_TARGET} --program-prefix= --prefix=/ --target=${DEFAULT_TARGET}"; +NATIVE_TOOLCHAIN_GROUP_DEPENDS="host_deps host_deps_rpm host_toolchain host_tools native_tools"; NATIVE_TOOLCHAIN_PACKAGES=" binutils binutils_mingw32 gcc_full gcc_stage1_native_mingw32 gmp mpc mpfr musl_full "; NATIVE_TOOLCHAIN_PREFIX="${PREFIX_NATIVE}"; diff --git a/groups/120.native_runtime.group b/groups/120.native_runtime.group index 5cd3736..fed950d 100644 --- a/groups/120.native_runtime.group +++ b/groups/120.native_runtime.group @@ -5,6 +5,7 @@ NATIVE_RUNTIME_BUILD_TYPE="native"; NATIVE_RUNTIME_CFLAGS_CONFIGURE="${DEFAULT_CFLAGS_RUNTIME}"; NATIVE_RUNTIME_CONFIGURE_ARGS="--prefix= --strict --host=${DEFAULT_TARGET}"; NATIVE_RUNTIME_ENV_VARS_EXTRA="CFLAGS_PATH=-I${PREFIX_NATIVE}/include:LDFLAGS_PATH=-L${PREFIX_NATIVE}/lib"; +NATIVE_RUNTIME_GROUP_DEPENDS="host_deps host_deps_rpm host_toolchain host_tools native_toolchain native_tools"; NATIVE_RUNTIME_PACKAGES=" dalist ldso ntapi ntcon ntctty ntux pemagine psxscl psxscl_strace psxtypes ptycon sltdl u16ports"; NATIVE_RUNTIME_PREFIX="${PREFIX_NATIVE}"; diff --git a/groups/200.native_packages.group b/groups/200.native_packages.group index 62dbd9e..885bfc2 100644 --- a/groups/200.native_packages.group +++ b/groups/200.native_packages.group @@ -5,6 +5,7 @@ NATIVE_PACKAGES_CFLAGS_CONFIGURE="${DEFAULT_CFLAGS:+${DEFAULT_CFLAGS} }--sysroot NATIVE_PACKAGES_CXXFLAGS_CONFIGURE="${DEFAULT_CXXFLAGS:+${DEFAULT_CXXFLAGS} }--sysroot=${PREFIX_NATIVE}"; NATIVE_PACKAGES_CONFIG_CACHE_LOCAL="${CONFIG_CACHE_GNULIB}"; NATIVE_PACKAGES_CONFIGURE_ARGS="-C --disable-nls --host=${DEFAULT_TARGET} --prefix= --program-prefix= --target=${DEFAULT_TARGET}"; +NATIVE_PACKAGES_GROUP_DEPENDS="host_deps host_deps_rpm host_toolchain host_tools native_toolchain native_tools"; NATIVE_PACKAGES_LDFLAGS_CONFIGURE="--sysroot=${PREFIX_NATIVE}"; NATIVE_PACKAGES_MAKEFLAGS_INSTALL="PREFIX= prefix="; NATIVE_PACKAGES_PACKAGES=""; diff --git a/groups/800.minipix.group b/groups/800.minipix.group index 5515166..47c6c6d 100644 --- a/groups/800.minipix.group +++ b/groups/800.minipix.group @@ -5,6 +5,7 @@ MINIPIX_CFLAGS_CONFIGURE="${DEFAULT_CFLAGS:+${DEFAULT_CFLAGS} }--sysroot=${PREFI MINIPIX_CXXFLAGS_CONFIGURE="${DEFAULT_CXXFLAGS:+${DEFAULT_CXXFLAGS} }--sysroot=${PREFIX_NATIVE}"; MINIPIX_CONFIG_CACHE_LOCAL="${CONFIG_CACHE_GNULIB}"; MINIPIX_CONFIGURE_ARGS="-C --disable-nls --host=${DEFAULT_TARGET} --prefix= --program-prefix= --target=${DEFAULT_TARGET}"; +MINIPIX_GROUP_DEPENDS="host_deps host_deps_rpm host_toolchain host_tools native_packages native_toolchain native_tools"; MINIPIX_LDFLAGS_BUILD="--sysroot=${PREFIX_NATIVE} -mvrfs"; MINIPIX_LDFLAGS_CONFIGURE="--sysroot=${PREFIX_NATIVE} -mvrfs"; MINIPIX_MAKEFLAGS_INSTALL="PREFIX= prefix="; diff --git a/groups/dev_packages.group b/groups/dev_packages.group index b3cd759..3a11dae 100644 --- a/groups/dev_packages.group +++ b/groups/dev_packages.group @@ -4,6 +4,7 @@ DEV_PACKAGES_CFLAGS_CONFIGURE="${DEFAULT_CFLAGS:+${DEFAULT_CFLAGS} }--sysroot=${PREFIX_NATIVE}"; DEV_PACKAGES_CONFIG_CACHE_LOCAL="${CONFIG_CACHE_GNULIB}"; DEV_PACKAGES_CONFIGURE_ARGS="-C --disable-nls --host=${DEFAULT_TARGET} --prefix= --program-prefix= --target=${DEFAULT_TARGET}"; +DEV_PACKAGES_GROUP_DEPENDS="host_deps host_deps_rpm host_toolchain host_tools native_packages native_toolchain native_tools"; DEV_PACKAGES_LDFLAGS_CONFIGURE="--sysroot=${PREFIX_NATIVE}"; DEV_PACKAGES_MAKEFLAGS_INSTALL="PREFIX= prefix="; DEV_PACKAGES_PACKAGES=" diff --git a/subr/ex_pkg_dispatch.subr b/subr/ex_pkg_dispatch.subr index bd152f2..c1eab55 100644 --- a/subr/ex_pkg_dispatch.subr +++ b/subr/ex_pkg_dispatch.subr @@ -165,7 +165,7 @@ ex_pkg_dispatch() { EXP_PKG_COMPLETE EXP_PKG_DISABLED EXP_PKG_FINISHED EXP_PKG_DISPATCH_COUNT \ EXP_PKG_DISPATCH_COUNT_MAX EXP_PKG_DISPATCH_NJOBS EXP_PKG_NAMES EXP_PKG_DISPATCH_WAIT; EX_PKG_DISPATCH_UNKNOWN=""; - for _group_name in ${_group_names}; do + for _group_name in $(rtl_uniq $(rtl_lunfold_depends '${_name}_GROUP_DEPENDS' ${_group_names})); do EXP_PKG_COMPLETE="" EXP_PKG_DISABLED="" EXP_PKG_FINISHED=""; EXP_PKG_DISPATCH_COUNT=0 EXP_PKG_DISPATCH_COUNT_MAX=0 EXP_PKG_DISPATCH_NJOBS=0; EXP_PKG_NAMES="" EXP_PKG_DISPATCH_WAIT=""; diff --git a/vars/env.vars b/vars/env.vars index 26fb483..0cada3e 100644 --- a/vars/env.vars +++ b/vars/env.vars @@ -17,18 +17,17 @@ DEFAULT_BUILD_VARS=" CFLAGS_BUILD_EXTRA CFLAGS_CONFIGURE CFLAGS_CONFIGURE_EXTRA \ CFLAGS_INSTALL_EXTRA CONFIG_CACHE CONFIG_CACHE_EXTRA \ CONFIG_CACHE_LOCAL CONFIGURE CONFIGURE_ARGS CONFIGURE_ARGS_EXTRA \ - CXX CXXFLAGS_CONFIGURE CXXFLAGS_CONFIGURE_EXTRA \ - DEPENDS DESTDIR DISABLED ENV_VARS_EXTRA FNAME \ - FORCE GITROOT INHERIT_FROM INSTALL_FILES INSTALL_FILES \ - INSTALL_FILES_DESTDIR INSTALL_FILES_DESTDIR_EXTRA INSTALL_TARGET \ - INSTALL_TARGET_EXTRA IN_TREE LDFLAGS_BUILD_EXTRA LDFLAGS_CONFIGURE \ - LDFLAGS_CONFIGURE_EXTRA LDFLAGS_INSTALL_EXTRA LIBTOOL MAKE \ - MAKE_INSTALL_VNAME MAKEFLAGS_BUILD MAKEFLAGS_BUILD_EXTRA \ - MAKEFLAGS_INSTALL MAKEFLAGS_INSTALL_EXTRA NO_CLEAN \ - NO_CLEAN_BASE_DIR NO_LOG_VARS PYTHON PATCHES_EXTRA PKG_CONFIG \ - PKG_CONFIG_PATH PKGLIST_DISABLE PREFIX RANLIB RPM_DISABLE \ - SHA256SUM SUBDIR TARGET URL URL_TYPE URLS_GIT VERSION"; - + CXX CXXFLAGS_CONFIGURE CXXFLAGS_CONFIGURE_EXTRA DEPENDS DESTDIR \ + DISABLED ENV_VARS_EXTRA FNAME GITROOT INHERIT_FROM INSTALL_FILES \ + INSTALL_FILES INSTALL_FILES_DESTDIR INSTALL_FILES_DESTDIR_EXTRA \ + INSTALL_TARGET INSTALL_TARGET_EXTRA IN_TREE LDFLAGS_BUILD_EXTRA \ + LDFLAGS_CONFIGURE LDFLAGS_CONFIGURE_EXTRA LDFLAGS_INSTALL_EXTRA \ + LIBTOOL MAKE MAKE_INSTALL_VNAME MAKEFLAGS_BUILD \ + MAKEFLAGS_BUILD_EXTRA MAKEFLAGS_INSTALL MAKEFLAGS_INSTALL_EXTRA \ + NO_CLEAN NO_CLEAN_BASE_DIR NO_LOG_VARS PYTHON PATCHES_EXTRA \ + PKG_CONFIG PKG_CONFIG_PATH PKGLIST_DISABLE PREFIX RANLIB \ + RPM_DISABLE SHA256SUM SUBDIR TARGET URL URL_TYPE URLS_GIT \ + VERSION"; # Path names : ${PREFIX_ROOT:=${HOME}/midipix}; : ${PREFIX:=${PREFIX_ROOT}/${ARCH}/${BUILD}};