summaryrefslogtreecommitdiffstats
path: root/t/recipes/checks/debian/control/prerequisite/circular
diff options
context:
space:
mode:
Diffstat (limited to 't/recipes/checks/debian/control/prerequisite/circular')
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/control-file-general/build-spec/debian/control.in118
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/control-file-general/build-spec/debian/rules8
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/control-file-general/build-spec/fill-values3
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/control-file-general/eval/desc11
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/control-file-general/eval/hints1
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/build-spec/debian/control.in17
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/build-spec/fill-values3
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/eval/desc2
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/eval/hints1
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/debian/control.in81
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/debian/install1
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/fill-values3
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/orig/some-file2
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/eval/desc2
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/eval/hints1
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/changelog.in33
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/control51
-rwxr-xr-xt/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/rules49
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/tmp/DEBIAN/control14
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/fill-values5
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/eval/desc2
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/eval/hints2
-rw-r--r--t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/eval/post-test1
23 files changed, 411 insertions, 0 deletions
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/control-file-general/build-spec/debian/control.in b/t/recipes/checks/debian/control/prerequisite/circular/control-file-general/build-spec/debian/control.in
new file mode 100644
index 0000000..3058e5a
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/control-file-general/build-spec/debian/control.in
@@ -0,0 +1,118 @@
+Source: [% $source %]
+Priority: optional
+Maintainer: [% $author %]
+Standards-Version: [% $standards_version %]
+Build-Depends: [% $build_depends %],
+ fiddle [amd64 powerpc mips mipsel hppa s390],
+ faddle
+ (>>
+ 2) [
+ sparc i386 amd64
+ ]
+Build-Depends-Indep: perl (> 5.8)
+Rules-Requires-Root: no
+XS-Vcs-Svn: https://svn.example.com/[% $source %]/trunk
+#Vcs-Git: git://git.debian.org/collab-maint/<pkg>.git
+#Vcs-Browser: http://git.debian.org/?p=collab-maint/<pkg>.git;a=summary
+
+Package: [% $source %]
+Section: [% $section %]
+Maintainer: [% $author %]
+Build-Conflicts: foo
+Architecture: all
+Pre-depends: ${misc:Pre-depends}, multiarch-support
+Depends: [% $source %], foo, baz, ${shlibs:Depends} ${some:Depends}, ${misc:Depends}
+Recommends: foo, bar, no-match${lintian:Foo}, match${lintian:Match}, no-match${lintian:Bar}-foo
+Suggests: bar | baz, no-match${lintian:Bar}, match${lintian:Match}
+Description: [% $description %]
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
+
+Package: [% $source %]-1
+Section: [% $section %]
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Breaks: libsqlite3-0 (< 3.6.12)
+Description: [% $description %]
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
+
+Package: [% $source %]-2
+Section: [% $section %]
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: [% $description %] (two)
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
+
+Package: [% $source %]-3
+Section: [% $section %]
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}, foo (>= 1),
+ baz (<< 2),
+ fizz (= 2.0), gcc-${pv:gcc} ${reqv:gcc}
+Description: [% $description %] (three)
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
+
+Package: [% $source %]-4
+Section: [% $section %]
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}, foo |
+ bar (>= 1), baz
+Description: [% $description %] (four)
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
+
+Package: [% $source %]-5
+Section: [% $section %]
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: Description: [% $description %]
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
+
+Package: [% $source %]-dbgsym
+Section: debug
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: Description: dbg-sym
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
+
+Package: [% $source %]-dbg
+Section: debug
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: Description: debug
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
+
+Package: [% $source %]-udeb
+Section: debian-installer
+Package-Type: udeb
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: [% $description %] (udeb)
+ udeb tests.
+ .
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/control-file-general/build-spec/debian/rules b/t/recipes/checks/debian/control/prerequisite/circular/control-file-general/build-spec/debian/rules
new file mode 100644
index 0000000..f5db4bb
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/control-file-general/build-spec/debian/rules
@@ -0,0 +1,8 @@
+#!/usr/bin/make -f
+%:
+ dh $@
+
+override_dh_gencontrol:
+ echo 'pv:gcc=4.3' >> debian/substvars
+ echo 'reqv:gcc=(>= 4.3-1)' >> debian/substvars
+ dh_gencontrol
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/control-file-general/build-spec/fill-values b/t/recipes/checks/debian/control/prerequisite/circular/control-file-general/build-spec/fill-values
new file mode 100644
index 0000000..7338a95
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/control-file-general/build-spec/fill-values
@@ -0,0 +1,3 @@
+Skeleton: upload-native
+Testname: control-file-general
+Description: Various problems with debian/control
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/control-file-general/eval/desc b/t/recipes/checks/debian/control/prerequisite/circular/control-file-general/eval/desc
new file mode 100644
index 0000000..02f41b5
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/control-file-general/eval/desc
@@ -0,0 +1,11 @@
+Testname: control-file-general
+Check: debian/control/prerequisite/circular
+See-Also:
+ Debian Bug#30020,
+ Debian Bug#409099,
+ Debian Bug#516706,
+ Debian Bug#533202,
+ Debian Bug#557971,
+ Debian Bug#573399,
+ Debian Bug#580494,
+ Debian Bug#657110
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/control-file-general/eval/hints b/t/recipes/checks/debian/control/prerequisite/circular/control-file-general/eval/hints
new file mode 100644
index 0000000..1c51dc4
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/control-file-general/eval/hints
@@ -0,0 +1 @@
+control-file-general (source): circular-installation-prerequisite (in section for control-file-general) Depends control-file-general, foo, baz, ${shlibs:Depends} ${some:Depends}, ${misc:Depends} [debian/control:24]
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/build-spec/debian/control.in b/t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/build-spec/debian/control.in
new file mode 100644
index 0000000..c69e042
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/build-spec/debian/control.in
@@ -0,0 +1,17 @@
+Source: [% $source %]
+Priority: optional
+Section: [% $section %]
+Maintainer: [% $author %]
+Standards-Version: [% $standards_version %]
+Build-Depends: [% $build_depends %]
+Rules-Requires-Root: no
+
+Package: [% $source %]
+Architecture: [% $package_architecture %]
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Suggests: [% $source %]
+Description: [% $description %]
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/build-spec/fill-values b/t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/build-spec/fill-values
new file mode 100644
index 0000000..837abce
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/build-spec/fill-values
@@ -0,0 +1,3 @@
+Skeleton: upload-native
+Testname: control-file-suggests-itself
+Description: Test a package Suggesting itself
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/eval/desc b/t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/eval/desc
new file mode 100644
index 0000000..b880eed
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/eval/desc
@@ -0,0 +1,2 @@
+Testname: control-file-suggests-itself
+Check: debian/control/prerequisite/circular
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/eval/hints b/t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/eval/hints
new file mode 100644
index 0000000..c2e5627
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/control-file-suggests-itself/eval/hints
@@ -0,0 +1 @@
+control-file-suggests-itself (source): circular-installation-prerequisite (in section for control-file-suggests-itself) Suggests control-file-suggests-itself [debian/control:12]
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/debian/control.in b/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/debian/control.in
new file mode 100644
index 0000000..054ffc3
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/debian/control.in
@@ -0,0 +1,81 @@
+Source: [% $source %]
+Priority: optional
+Section: [% $section %]
+Maintainer: [% $author %]
+Standards-Version: [% $standards_version %]
+Build-Depends: [% $build_depends %], libtest-simple-perl (>= 0.98), perl-modules
+Rules-Requires-Root: no
+
+Package: [% $source %]
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}, xorg, bash,
+ conflict-dep, gawk | awk, new-package | xbase-clients (>= 0.1), [% $source %],
+ gaim (>= 0.1), emacs21, emacs22, emacs23, makedev, libtest-simple-perl (>= 0.98),
+ packaging-dev, xfont-a, emacs22-gtk, emacs23-el, emacs23-nox, emacs23-lucid,
+ emacs222, perl-modules, debhelper
+Breaks: package-without-version, [% $source %] (<< 0.1),
+ replaced-wo-version
+Replaces: replaced-wo-version
+Conflicts: package-with-version (<< 3.0), conflict-dep
+Description: [% $description %]
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package.
+
+Package: lib[% $source %]
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}, libdb1-compat, perl-modules-5.22
+Recommends: debconf-doc, cdbs
+Conflicts: debhelper
+Section: libs
+Description: [% $description %] -- fake library
+ This is a fake library designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package.
+
+Package: py-[% $source %]
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}, python-minimal
+Description: [% $description %] - Fake Python package
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
+ .
+ The fake Python package.
+
+Package: [% $source %]-doc
+Section: doc
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}, [% $source %]
+Description: [% $description %] - Fake Doc package
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
+ .
+ The fake doc package.
+
+Package: dh-[% $source %]
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}, debhelper
+Description: [% $description %] - Fake Debhelper package
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
+ .
+ The fake Debhelper package to test false-positives in
+ binary-package-depends-on-toolchain-package.
+
+Package: [% $source %]-source
+Architecture: all
+Depends: ${shlibs:Depends}, ${misc:Depends}, debhelper
+Description: [% $description %] - Fake DKMS-like package
+ This is a test package designed to exercise some feature or tag of
+ Lintian. It is part of the Lintian test suite and may do very odd
+ things. It should not be installed like a regular package. It may
+ be an empty package.
+ .
+ The fake DKMS-like package to test false-positives in
+ binary-package-depends-on-toolchain-package.
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/debian/install b/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/debian/install
new file mode 100644
index 0000000..6c37889
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/debian/install
@@ -0,0 +1 @@
+some-file usr/share/lintian
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/fill-values b/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/fill-values
new file mode 100644
index 0000000..6e84753
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/fill-values
@@ -0,0 +1,3 @@
+Skeleton: upload-native
+Testname: fields-depends-general
+Description: General tests for binary package dependencies
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/orig/some-file b/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/orig/some-file
new file mode 100644
index 0000000..7bf08f7
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/build-spec/orig/some-file
@@ -0,0 +1,2 @@
+This file is installed into /usr/share/lintian just to ensure that this
+package doesn't look like a metapackage for the dependency checks.
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/eval/desc b/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/eval/desc
new file mode 100644
index 0000000..e47d658
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/eval/desc
@@ -0,0 +1,2 @@
+Testname: fields-depends-general
+Check: debian/control/prerequisite/circular
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/eval/hints b/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/eval/hints
new file mode 100644
index 0000000..44047f1
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/fields-depends-general/eval/hints
@@ -0,0 +1 @@
+fields-depends-general (source): circular-installation-prerequisite (in section for fields-depends-general) Depends ${shlibs:Depends}, ${misc:Depends}, xorg, bash, conflict-dep, gawk | awk, new-package | xbase-clients (>= 0.1), fields-depends-general, gaim (>= 0.1), emacs21, emacs22, emacs23, makedev, libtest-simple-perl (>= 0.98), packaging-dev, xfont-a, emacs22-gtk, emacs23-el, emacs23-nox, emacs23-lucid, emacs222, perl-modules, debhelper [debian/control:11]
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/changelog.in b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/changelog.in
new file mode 100644
index 0000000..9a82ea7
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/changelog.in
@@ -0,0 +1,33 @@
+relations ([% $version %]) [% $distribution %]; urgency=low
+
+ * I'm orphaning this package -- I'm sick of it: it's completely broken,
+ lintian complains all over the place.
+
+ -- Jeroen van Wolffelaar <jeroen@wolffelaar.nl> Sun, 02 Dec 2007 15:59:59 -0800
+
+relations (4) unstable; urgency=low
+
+ * Added a package that tests dependencies for multiple versions of
+ libraries, and test some description stuff in there as well.
+
+ -- Josip Rodin <jrodin@jagor.srce.hr> Fri, 29 Nov 2002 20:13:33 +0100
+
+relations (3) unstable; urgency=low
+
+ * Added a virtual provides to test against my virtual depends without
+ a real package first test
+
+ -- Sean 'Shaleh' Perry <shaleh@debian.org> Thu, 8 Feb 2001 11:29:53 -0800
+
+relations (2) unstable; urgency=low
+
+ * Added a depends on dpkg (violates policy) and a versioned depends
+ on bash (follows policy)
+
+ -- Sean 'Shaleh' Perry <shaleh@debian.org> Fri, 2 Feb 2001 12:37:17 -0800
+
+relations (1) unstable; urgency=low
+
+ * Initial version
+
+ -- Richard Braakman <dark@xs4all.nl> Tue, 7 Jul 1998 16:27:56 +0200
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/control b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/control
new file mode 100644
index 0000000..6cd1c04
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/control
@@ -0,0 +1,51 @@
+Source: relations
+Section: misc
+Priority: optional
+Build-Depends: mail-transport-agent, libc6-dev, findutils, foo (= 3) [!amd64 !i386], bar, arch-test1 [i386], arch-test2 [!i386], quilt (>= 0.40), perl
+Build-Depends-Indep: make, bash, debmake, build-essential, baz (= 2.0), ghostscript | gs,
+ car (>= 1.0), car (<= 2.0), caz (= 1.0) [amd64], caz (>= 2.0) [i386],
+ caz (= 2.0) [powerpc], perl (>= 5.0), foo (<< 4) [!amd64 !i386], libfoo (>= 1.2-1), bozzle [kfreebsd-i386]
+Build-Conflicts: foo [amd64 i386], bar [alpha test], xlibs-dev, arch-test1 [powerpc], arch-test2 [!sparc]
+Build-Conflicts-Indep: debmake [!powerpc]
+Maintainer: Debian QA Group <packages@qa.debian.org>
+Standards-Version: 3.7.3
+Homepage: lintian.debian.org
+Origin: Debian
+Bugs: debbugs://bugs.debian.org/
+
+Package: relations
+Architecture: all
+Section: contrib/misc
+Pre-Depends: awk|gawk
+Depends: relations(<< 3), dpkg, bash (>> 2.0 ), mail-transport-agent, gawk | awk, foo (>> 2.0), foo (<< 2.2), coreutils, ,null (>= 0), ${misc:Depends}, makedev
+Provides: mail-reader
+Replaces: relations
+Conflicts: foobar (<< 5+5), foo, relations,
+ gnuwdf,
+Suggests: alpha, gnu (>= 44-3-4-8-11.4) | ung (<< 89beta) | nug | ngu, beta, some-other-package
+Recommends: emacs21 | emacsen, dpkg, null, some-other-package, ${f-oo:b-ar}, gs | ghostscript | gs-aladdin
+Description: Strange dependency relationships (dummy)
+ This package declares relationships designed to tickle lintian's "fields"
+ check. It should generate a number of tags for these.
+ .
+ The package is built with "dpkg --build --no-check", because some of the
+ relationships used here are normally rejected by dpkg.
+
+Package: relations-multiple-libs
+Architecture: all
+Section: non-free/misc
+Depends: libstdc++2.10, libstdc++2.10-glibc2.2, libstdc++3.0, tk8.2, tk8.3, tcl8.0, tcl8.2, tkx8.2, tkx8.3, tclx8.2, libpng2, libpng3, xorg, ${shlibs:Depends}, makedev | udev
+Provides: awk
+Enhances: foo
+Recommends: ${shlibs:Depends}, relations-multiple-libs, gs | gs-gpl, makedev
+Breaks: libpng3 (<< 1.0), libpng2
+Suggests: x-dev, ghostscript | gs
+Description: Duplicate library dependency relationships.
+ Duplicate library dependency relationships.
+ This tests the depending on different versions of the same library
+ at the same time.
+ .
+ At the same time, it conveniently tests some description file checks. :)
+ .
+ It is a metapackage from the lintian perspective, so the xorg dependency
+ should be allowed.
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/rules b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/rules
new file mode 100755
index 0000000..5027f33
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/rules
@@ -0,0 +1,49 @@
+#!/usr/bin/make -f
+
+# Copyright (C) 1998 Richard Braakman
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, you can find it on the World Wide
+# Web at https://www.gnu.org/copyleft/gpl.html, or write to the Free
+# Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+# MA 02110-1301, USA.
+
+build-arch:
+
+build-indep:
+
+build: build-arch build-indep
+
+binary-arch:
+
+binary-indep:
+ install -d debian/tmp/DEBIAN
+ dpkg-gencontrol -prelations -isp
+ dpkg --build debian/tmp ../relations_5_all.deb
+ install -d debian/tmp/usr/share/doc/
+ ln -s relations debian/tmp/usr/share/doc/relations-multiple-libs
+ dpkg-gencontrol -prelations-multiple-libs -isp
+ dpkg --build debian/tmp ../relations-multiple-libs_5_all.deb
+
+binary: binary-arch binary-indep
+
+clean::
+ rm -rf debian/tmp debian/files
+
+# Test allowing quilt Build-Depends for manual quilt invocations.
+ TESTING=foo ANOTHER=bar quilt || true
+
+# Test requiring perl Build-Depends for manual perl invocations.
+ [ ! -f Build ] || $(PERL) Build distclean
+
+.PHONY: build-arch build-indep build binary-arch binary-indep binary clean
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/tmp/DEBIAN/control b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/tmp/DEBIAN/control
new file mode 100644
index 0000000..87e7fe6
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/debian/tmp/DEBIAN/control
@@ -0,0 +1,14 @@
+Package: relations-multiple-libs
+Version: 4
+Section: misc
+Priority: optional
+Architecture: all
+Depends: libstdc++2.10, libstdc++2.10-glibc2.2, libstdc++3.0, tk8.2, tk8.3, tcl8.0, tcl8.2, tkx8.2, tkx8.3, tclx8.2, libpng2, libpng3
+Installed-Size: 12
+Maintainer: Lintian Maintainer <lintian-maint@debian.org>
+Source: relations
+Description: Duplicate library dependency relationships.
+ Duplicate library dependency relationships. This tests the depending on
+ different versions of the same library at the same time.
+ .
+ At the same time, it conveniently tests some description file checks. :)
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/fill-values b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/fill-values
new file mode 100644
index 0000000..7e4661b
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/build-spec/fill-values
@@ -0,0 +1,5 @@
+Skeleton: upload-native
+Testname: legacy-relations
+Source: relations
+Version: 5
+Description: Legacy test "relations"
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/eval/desc b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/eval/desc
new file mode 100644
index 0000000..515312a
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/eval/desc
@@ -0,0 +1,2 @@
+Testname: legacy-relations
+Check: debian/control/prerequisite/circular
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/eval/hints b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/eval/hints
new file mode 100644
index 0000000..3285321
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/eval/hints
@@ -0,0 +1,2 @@
+relations (source): circular-installation-prerequisite (in section for relations-multiple-libs) Recommends ${shlibs:Depends}, relations-multiple-libs, gs | gs-gpl, makedev [debian/control:40]
+relations (source): circular-installation-prerequisite (in section for relations) Depends relations (<< 3), dpkg, bash (>> 2.0 ), mail-transport-agent, gawk | awk, foo (>> 2.0), foo (<< 2.2), coreutils, null (>= 0), ${misc:Depends}, makedev [debian/control:20]
diff --git a/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/eval/post-test b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/eval/post-test
new file mode 100644
index 0000000..faeef0b
--- /dev/null
+++ b/t/recipes/checks/debian/control/prerequisite/circular/legacy-relations/eval/post-test
@@ -0,0 +1 @@
+s/\(current is ([0-9]+\.)+[0-9]\)/(current is CURRENT)/