test-bug-747261-arch-specific-conflicts 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #!/bin/sh
  2. set -e
  3. TESTDIR="$(readlink -f "$(dirname "$0")")"
  4. . "$TESTDIR/framework"
  5. setupenvironment
  6. configarchitecture 'amd64' 'sparc' 'armel'
  7. insertinstalledpackage 'foobar' 'armel' '1'
  8. msgtest 'Check that dpkg supports' 'arch-specific dependencies'
  9. if ! dpkgcheckbuilddeps -d 'foobar:armel' /dev/null 2>/dev/null >/dev/null; then
  10. dpkgcheckbuilddeps -d 'foobar:armel' /dev/null || true
  11. msgskip
  12. exit 0
  13. else
  14. msgpass
  15. fi
  16. buildsimplenativepackage 'libc6' 'amd64,sparc,armel' '1' 'stable' 'Multi-Arch: same'
  17. buildsimplenativepackage 'libc6-i386' 'amd64' '1' 'stable' 'Conflicts: libc6:sparc'
  18. setupaptarchive
  19. testsuccess aptget install 'libc6:amd64' 'libc6:sparc' -y
  20. testdpkginstalled 'libc6:amd64' 'libc6:sparc'
  21. testdpkgnotinstalled 'libc6-i386' 'libc6:armel'
  22. testsuccess aptget install libc6-i386 -y
  23. testdpkginstalled 'libc6:amd64' 'libc6-i386'
  24. testdpkgnotinstalled 'libc6:sparc' 'libc6:armel'
  25. testsuccess aptget install libc6:armel -y
  26. testdpkginstalled 'libc6:amd64' 'libc6:armel' 'libc6-i386'
  27. testdpkgnotinstalled 'libc6:sparc'
  28. testsuccess aptget install libc6:sparc -y
  29. testdpkginstalled 'libc6:amd64' 'libc6:armel' 'libc6:sparc'
  30. testdpkgnotinstalled 'libc6-i386'
  31. testsuccess aptget purge 'libc6:*' 'libc6-i386' -y
  32. testdpkgnotinstalled 'libc6:amd64' 'libc6:armel' 'libc6:sparc' 'libc6-i386'
  33. # check that (the actually simpler) single arch is fine, too
  34. configarchitecture 'amd64'
  35. testfailure aptget install libc6:sparc -s
  36. testsuccess aptget install libc6 libc6-i386 -y