summaryrefslogtreecommitdiff
path: root/bin
diff options
context:
space:
mode:
authorErich Eckner <git@eckner.net>2019-07-02 15:45:56 +0200
committerErich Eckner <git@eckner.net>2019-07-02 15:45:56 +0200
commitc34fb1bab3719995f5b83a4aafbdb840989b2ae5 (patch)
tree38b4e6e5ccf426b04b067dfe2ad2ab5200baef36 /bin
parent08b0d4de643e27b8532f25ab9cc40e21be6b09e9 (diff)
downloadbuilder-c34fb1bab3719995f5b83a4aafbdb840989b2ae5.tar.xz
bin/bootstrap-mysql: blacklist_packages: add proper(?) architecture checks
Diffstat (limited to 'bin')
-rwxr-xr-xbin/bootstrap-mysql29
1 files changed, 29 insertions, 0 deletions
diff --git a/bin/bootstrap-mysql b/bin/bootstrap-mysql
index 1f8ab1a..9b6ab97 100755
--- a/bin/bootstrap-mysql
+++ b/bin/bootstrap-mysql
@@ -737,20 +737,49 @@ fi
printf ' WHERE EXISTS ('
printf 'SELECT 1'
printf ' FROM `install_target_providers`'
+ mysql_join_install_target_providers_binary_packages
+ printf ' JOIN `architectures`'
+ printf ' ON ('
+ printf '`architectures`.`id`=`binary_packages`.`architecture`'
+ printf ' OR `binary_packages`.`architecture`=%s' \
+ "${architecture_ids__any}"
+ printf ')'
printf ' WHERE `install_target_providers`.`install_target`=`dependencies`.`depending_on`'
+ printf ' AND ('
+ printf '`architectures`.`id`=`a_ba`.`architecture`'
+ printf ' OR `a_ba`.`architecture`=%s' \
+ "${architecture_ids__any}"
+ printf ')'
printf ') AND NOT EXISTS ('
printf 'SELECT 1'
printf ' FROM `install_target_providers`'
+ mysql_join_install_target_providers_binary_packages
+ printf ' JOIN `architectures`'
+ printf ' ON ('
+ printf '`architectures`.`id`=`binary_packages`.`architecture`'
+ printf ' OR `binary_packages`.`architecture`=%s' \
+ "${architecture_ids__any}"
+ printf ')'
printf ' WHERE NOT EXISTS ('
printf 'SELECT 1'
printf ' FROM `bl_copy`'
printf ' JOIN `package_sources` AS `b_ps`'
printf ' ON `bl_copy`.`pkgbase`=`b_ps`.`pkgbase`'
mysql_join_package_sources_build_assignments 'b_ps' 'b_ba'
+ printf ' AND ('
+ printf '`b_ba`.`architecture`=`bl_copy`.`arch`'
+ printf ' OR `bl_copy`.`arch`=%s' \
+ "${architecture_ids__any}"
+ printf ')'
mysql_join_build_assignments_binary_packages 'b_ba' 'b_bp'
printf ' WHERE `install_target_providers`.`package`=`b_bp`.`id`'
printf ')'
printf ' AND `install_target_providers`.`install_target`=`dependencies`.`depending_on`'
+ printf ' AND ('
+ printf '`architectures`.`id`=`a_ba`.`architecture`'
+ printf ' OR `a_ba`.`architecture`=%s' \
+ "${architecture_ids__any}"
+ printf ')'
printf ');\n'
printf 'UNTIL ROW_COUNT()=0\n'