index : builder | |
Archlinux32 build system | gitolite user |
summaryrefslogtreecommitdiff |
-rwxr-xr-x | bin/get-assignment | 23 |
diff --git a/bin/get-assignment b/bin/get-assignment index 5ef88b1..630519b 100755 --- a/bin/get-assignment +++ b/bin/get-assignment @@ -338,16 +338,19 @@ next_building=$( printf ' JOIN `considered_build_assignments_3` AS `e_cba`' printf ' ON `e_cba`.`id`=`e_ba`.`id`' printf ' WHERE `late`.`pkgbase`=`package_sources`.`pkgbase`' -# this might be handy - but we need to mark in `toolchain_order` whether -# the blocking needs any or all early packages built (first vs. second -# half of toolchain_order) -# printf ' AND NOT EXISTS (' -# printf 'SELECT 1 FROM `binary_packages` AS `e_bp`' -# mysql_join_binary_packages_binary_packages_in_repositories 'e_bp' 'e_bpir' -# mysql_join_binary_packages_in_repositories_repositories 'e_bpir' 'e_r' -# printf ' WHERE `e_bp`.`build_assignment`=`e_ba`.`id`' -# printf ' AND `e_r`.`is_on_master_mirror`' -# printf ')' + # the toolchain_order-blocked build-assignment + printf ' AND (' + # must be marked as requires_all_dependencies_built (second half of list) + printf '`late`.`requires_all_dependencies_built` OR' + # or all blocking dependencies must not yet been built + printf 'NOT EXISTS (' + printf 'SELECT 1 FROM `binary_packages` AS `e_bp`' + mysql_join_binary_packages_binary_packages_in_repositories 'e_bp' 'e_bpir' + mysql_join_binary_packages_in_repositories_repositories 'e_bpir' 'e_r' + printf ' WHERE `e_bp`.`build_assignment`=`e_ba`.`id`' + printf ' AND `e_r`.`is_on_master_mirror`' + printf ')' + printf ')' printf ') AS `exists_blocked`,' printf 'EXISTS (' printf 'SELECT 1' |