summaryrefslogtreecommitdiffstats
path: root/t/recipes/checks/files/architecture
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-14 13:42:30 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-14 13:42:30 +0000
commit75808db17caf8b960b351e3408e74142f4c85aac (patch)
tree7989e9c09a4240248bf4658a22208a0a52d991c4 /t/recipes/checks/files/architecture
parentInitial commit. (diff)
downloadlintian-75808db17caf8b960b351e3408e74142f4c85aac.tar.xz
lintian-75808db17caf8b960b351e3408e74142f4c85aac.zip
Adding upstream version 2.117.0.upstream/2.117.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 't/recipes/checks/files/architecture')
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/debian/compat.in1
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/fill-values6
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/orig/Makefile26
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/orig/basic.c19
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/eval/desc3
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/eval/hints1
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/eval/post-test4
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/compat.in1
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/control.in21
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/libbasic2.symbols2
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/rules23
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch/build-spec/fill-values6
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch/build-spec/orig/Makefile26
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch/build-spec/orig/basic.c19
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch/eval/desc4
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch/eval/hints1
-rw-r--r--t/recipes/checks/files/architecture/binaries-multiarch/eval/post-test2
-rw-r--r--t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/debian/control.in15
-rw-r--r--t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/fill-values5
-rw-r--r--t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/orig/main.c8
-rwxr-xr-xt/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/pre-build11
-rwxr-xr-xt/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/pre-upstream11
-rw-r--r--t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/eval/desc2
-rw-r--r--t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/eval/hints1
-rw-r--r--t/recipes/checks/files/architecture/empty-files-arch-any/build-spec/debian/install1
-rw-r--r--t/recipes/checks/files/architecture/empty-files-arch-any/build-spec/fill-values4
-rw-r--r--t/recipes/checks/files/architecture/empty-files-arch-any/build-spec/orig/__init__.py0
-rw-r--r--t/recipes/checks/files/architecture/empty-files-arch-any/eval/desc2
-rw-r--r--t/recipes/checks/files/architecture/empty-files-arch-any/eval/hints1
-rw-r--r--t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/debian/control.in15
-rw-r--r--t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/debian/install1
-rw-r--r--t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/fill-values4
-rw-r--r--t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/orig/some-file1
-rw-r--r--t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/eval/desc2
-rw-r--r--t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/eval/hints1
-rw-r--r--t/recipes/checks/files/architecture/very-short-files-arch-any/build-spec/debian/install1
-rw-r--r--t/recipes/checks/files/architecture/very-short-files-arch-any/build-spec/fill-values4
-rw-r--r--t/recipes/checks/files/architecture/very-short-files-arch-any/build-spec/orig/dependency_links.txt1
-rw-r--r--t/recipes/checks/files/architecture/very-short-files-arch-any/eval/desc2
-rw-r--r--t/recipes/checks/files/architecture/very-short-files-arch-any/eval/hints1
40 files changed, 259 insertions, 0 deletions
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/debian/compat.in b/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/debian/compat.in
new file mode 100644
index 0000000..640a566
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/debian/compat.in
@@ -0,0 +1 @@
+[% $dh_compat_level %]
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/fill-values b/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/fill-values
new file mode 100644
index 0000000..4551548
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/fill-values
@@ -0,0 +1,6 @@
+Skeleton: upload-native
+Testname: binaries-multiarch-wrong-dir
+Default-Build-Depends: debhelper (>= 9.20151004~)
+Dh-Compat-Level: 9
+Description: Multiarch-related tests but not multiarch itself
+Package-Architecture: any
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/orig/Makefile b/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/orig/Makefile
new file mode 100644
index 0000000..58cac33
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/orig/Makefile
@@ -0,0 +1,26 @@
+
+# Since dpkg in stable (Squeeze) does not support MULTIARCH we cannot use
+# dpkg-architecture -qDEB_HOST_MULTIARCH
+# Therefore this test is hardcoded to x86 and amd64
+
+ARCH=$(shell dpkg-architecture -qDEB_HOST_ARCH)
+
+ifeq (i386,$(ARCH))
+ WRONG_TRIPLET = x86_64-linux-gnu
+else
+ WRONG_TRIPLET = i386-linux-gnu
+endif
+
+
+all:
+ gcc $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -fPIC -shared -Wl,-z,defs -Wl,-soname,libbasic.so.2 -o libbasic.so.2 basic.c
+
+install:
+ # Install it once under the wrong dir
+ install -d $(DESTDIR)/usr/lib/$(WRONG_TRIPLET)
+ install -m 644 -c -s libbasic.so.2 $(DESTDIR)/usr/lib/$(WRONG_TRIPLET)/libbasic.so.2
+
+clean distclean:
+ rm -f libbasic.so.2
+
+check test:
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/orig/basic.c b/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/orig/basic.c
new file mode 100644
index 0000000..27e93fc
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/build-spec/orig/basic.c
@@ -0,0 +1,19 @@
+#include <stdio.h>
+#include <string.h>
+
+static void
+hardening_trigger(char *p, int i, void (*f)(char *))
+{
+ char test[10];
+ memcpy(test, p, i);
+ f(test);
+ printf("%s", test);
+}
+
+int
+lib_interface(void)
+{
+ printf("Hello world!\n");
+ hardening_trigger(NULL, 0, NULL);
+ return 0;
+}
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/eval/desc b/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/eval/desc
new file mode 100644
index 0000000..5803c3b
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/eval/desc
@@ -0,0 +1,3 @@
+Testname: binaries-multiarch-wrong-dir
+Test-Architectures: i386 amd64
+Check: files/architecture
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/eval/hints b/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/eval/hints
new file mode 100644
index 0000000..4492b0b
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/eval/hints
@@ -0,0 +1 @@
+binaries-multiarch-wrong-dir (binary): triplet-dir-and-architecture-mismatch INCOMPATIBILITY STATEMENT [usr/lib/TRIPLET/]
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/eval/post-test b/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/eval/post-test
new file mode 100644
index 0000000..d938f40
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch-wrong-dir/eval/post-test
@@ -0,0 +1,4 @@
+s/i386-linux-gnu/TRIPLET/
+s/x86_64-linux-gnu/TRIPLET/
+s/is for i386 instead of amd64/INCOMPATIBILITY STATEMENT/
+s/is for amd64 instead of i386/INCOMPATIBILITY STATEMENT/
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/compat.in b/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/compat.in
new file mode 100644
index 0000000..640a566
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/compat.in
@@ -0,0 +1 @@
+[% $dh_compat_level %]
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/control.in b/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/control.in
new file mode 100644
index 0000000..aa271ff
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/control.in
@@ -0,0 +1,21 @@
+Source: [% $source %]
+Priority: optional
+Section: libs
+Maintainer: [% $author %]
+Standards-Version: [% $standards_version %]
+Build-Depends: [% $build_depends %]
+Rules-Requires-Root: no
+
+Package: libbasic2
+Architecture: [% $package_architecture %]
+Pre-Depends: ${misc:Pre-Depends}, multiarch-support
+Depends: ${misc:Depends}, ${shlibs:Depends}
+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.
+ .
+ Note there is an explicitly pre-depends on multiarch-support, since
+ older versions of debhelper might not use it yet. dpkg-dev will
+ remove the duplicate entry (if any).
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/libbasic2.symbols b/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/libbasic2.symbols
new file mode 100644
index 0000000..c2b8fb3
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/libbasic2.symbols
@@ -0,0 +1,2 @@
+libbasic.so.2 libbasic2 #MINVER#
+ lib_interface@Base 1.0
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/rules b/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/rules
new file mode 100644
index 0000000..249fe25
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/debian/rules
@@ -0,0 +1,23 @@
+#!/usr/bin/make -f
+
+# Since dpkg in stable (Squeeze) does not support MULTIARCH we cannot use
+# dpkg-architecture -qDEB_HOST_MULTIARCH
+# Therefore this test is hardcoded to x86 and amd64
+
+ARCH=$(shell dpkg-architecture -qDEB_HOST_ARCH)
+
+ifeq (i386,$(ARCH))
+ TRIPLET = i386-linux-gnu
+else
+ TRIPLET = x86_64-linux-gnu
+endif
+
+export DEB_BUILD_MAINT_OPTIONS=hardening=+all
+
+%:
+ dh $@
+
+override_dh_makeshlibs:
+ # dpkg-dev uses ld.so.conf so if we do not pass the lib directly
+ # this will fail on all x86 machines without with libc6 < 2.13-5
+ dh_makeshlibs -- -edebian/libbasic2/usr/lib/$(TRIPLET)/libbasic.so.2
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/fill-values b/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/fill-values
new file mode 100644
index 0000000..a521479
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/fill-values
@@ -0,0 +1,6 @@
+Skeleton: upload-native
+Testname: binaries-multiarch
+Description: Test of a correct multiarch package
+Package-Architecture: any
+Default-Build-Depends: debhelper (>= 9.20151004~)
+Dh-Compat-Level: 9
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/orig/Makefile b/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/orig/Makefile
new file mode 100644
index 0000000..979e366
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/orig/Makefile
@@ -0,0 +1,26 @@
+
+# Since dpkg in stable (Squeeze) does not support MULTIARCH we cannot use
+# dpkg-architecture -qDEB_HOST_MULTIARCH
+# Therefore this test is hardcoded to x86 and amd64
+
+ARCH=$(shell dpkg-architecture -qDEB_HOST_ARCH)
+
+ifeq (i386,$(ARCH))
+ TRIPLET = i386-linux-gnu
+else
+ TRIPLET = x86_64-linux-gnu
+endif
+
+
+all:
+ gcc $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -fPIC -shared -Wl,-z,defs -Wl,-soname,libbasic.so.2 -o libbasic.so.2 basic.c
+
+install:
+ # install it under the correct triplet directory
+ install -d $(DESTDIR)/usr/lib/$(TRIPLET)
+ install -m 644 -c -s libbasic.so.2 $(DESTDIR)/usr/lib/$(TRIPLET)/libbasic.so.2
+
+clean distclean:
+ rm -f libbasic.so.2
+
+check test:
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/orig/basic.c b/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/orig/basic.c
new file mode 100644
index 0000000..27e93fc
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch/build-spec/orig/basic.c
@@ -0,0 +1,19 @@
+#include <stdio.h>
+#include <string.h>
+
+static void
+hardening_trigger(char *p, int i, void (*f)(char *))
+{
+ char test[10];
+ memcpy(test, p, i);
+ f(test);
+ printf("%s", test);
+}
+
+int
+lib_interface(void)
+{
+ printf("Hello world!\n");
+ hardening_trigger(NULL, 0, NULL);
+ return 0;
+}
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch/eval/desc b/t/recipes/checks/files/architecture/binaries-multiarch/eval/desc
new file mode 100644
index 0000000..039d4be
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch/eval/desc
@@ -0,0 +1,4 @@
+Testname: binaries-multiarch
+Test-Architectures: i386 amd64
+Test-Against: triplet-dir-and-architecture-mismatch
+Check: files/architecture
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch/eval/hints b/t/recipes/checks/files/architecture/binaries-multiarch/eval/hints
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch/eval/hints
@@ -0,0 +1 @@
+
diff --git a/t/recipes/checks/files/architecture/binaries-multiarch/eval/post-test b/t/recipes/checks/files/architecture/binaries-multiarch/eval/post-test
new file mode 100644
index 0000000..fdc0a20
--- /dev/null
+++ b/t/recipes/checks/files/architecture/binaries-multiarch/eval/post-test
@@ -0,0 +1,2 @@
+s/i386-linux-gnu/x86_64-linux-gnu/
+s/is for i386/is for amd64/
diff --git a/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/debian/control.in b/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/debian/control.in
new file mode 100644
index 0000000..f46d6ef
--- /dev/null
+++ b/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/debian/control.in
@@ -0,0 +1,15 @@
+Source: [% $source %]
+Priority: optional
+Section: utils
+Maintainer: [% $author %]
+Standards-Version: [% $standards_version %]
+Build-Depends: [% $build_depends %]
+Rules-Requires-Root: no
+
+Package: [% $source %]
+Architecture: [% $package_architecture %]
+Depends: ${shlibs:Depends}, ${misc:Depends}
+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.
diff --git a/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/fill-values b/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/fill-values
new file mode 100644
index 0000000..1ce50ee
--- /dev/null
+++ b/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/fill-values
@@ -0,0 +1,5 @@
+Testname: cruft-source-is-missing-unrel
+Skeleton: upload-non-native
+Source-Format: 3.0 (quilt)
+Package-Architecture: any
+Description: Check for source-is-missing false positives
diff --git a/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/orig/main.c b/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/orig/main.c
new file mode 100644
index 0000000..2fb04e1
--- /dev/null
+++ b/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/orig/main.c
@@ -0,0 +1,8 @@
+#include <stdio.h>
+#include <stdlib.h>
+
+int main(int argc, char *argv[]) {
+
+ printf("Hello, World!\n");
+ exit(0);
+}
diff --git a/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/pre-build b/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/pre-build
new file mode 100755
index 0000000..db309af
--- /dev/null
+++ b/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/pre-build
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+set -e
+
+cd "$1"
+
+mkdir -p debian/missing-sources/bar
+cp main.c debian/missing-sources/bar/main.c
+
+ln -s bar debian/missing-sources/foo
+ln -s bar debian/missing-sources/quux
diff --git a/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/pre-upstream b/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/pre-upstream
new file mode 100755
index 0000000..fb28255
--- /dev/null
+++ b/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/build-spec/pre-upstream
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+set -e
+
+cd "$1"
+
+
+gcc -o foo main.c
+gcc -o bar main.c
+mkdir -p baz/
+gcc -o baz/quux main.c
diff --git a/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/eval/desc b/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/eval/desc
new file mode 100644
index 0000000..d9675d9
--- /dev/null
+++ b/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/eval/desc
@@ -0,0 +1,2 @@
+Testname: cruft-source-is-missing-unrel
+Check: files/architecture
diff --git a/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/eval/hints b/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/eval/hints
new file mode 100644
index 0000000..0668955
--- /dev/null
+++ b/t/recipes/checks/files/architecture/cruft-source-is-missing-unrel/eval/hints
@@ -0,0 +1 @@
+cruft-source-is-missing-unrel (binary): package-contains-no-arch-dependent-files
diff --git a/t/recipes/checks/files/architecture/empty-files-arch-any/build-spec/debian/install b/t/recipes/checks/files/architecture/empty-files-arch-any/build-spec/debian/install
new file mode 100644
index 0000000..1001b9b
--- /dev/null
+++ b/t/recipes/checks/files/architecture/empty-files-arch-any/build-spec/debian/install
@@ -0,0 +1 @@
+__init__.py /usr/lib/python3/dist-packages/foo
diff --git a/t/recipes/checks/files/architecture/empty-files-arch-any/build-spec/fill-values b/t/recipes/checks/files/architecture/empty-files-arch-any/build-spec/fill-values
new file mode 100644
index 0000000..5066a7b
--- /dev/null
+++ b/t/recipes/checks/files/architecture/empty-files-arch-any/build-spec/fill-values
@@ -0,0 +1,4 @@
+Skeleton: upload-native
+Testname: empty-files-arch-any
+Package-Architecture: any
+Description: Only empty files but marked architecture-dependent
diff --git a/t/recipes/checks/files/architecture/empty-files-arch-any/build-spec/orig/__init__.py b/t/recipes/checks/files/architecture/empty-files-arch-any/build-spec/orig/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/t/recipes/checks/files/architecture/empty-files-arch-any/build-spec/orig/__init__.py
diff --git a/t/recipes/checks/files/architecture/empty-files-arch-any/eval/desc b/t/recipes/checks/files/architecture/empty-files-arch-any/eval/desc
new file mode 100644
index 0000000..e056a8f
--- /dev/null
+++ b/t/recipes/checks/files/architecture/empty-files-arch-any/eval/desc
@@ -0,0 +1,2 @@
+Testname: empty-files-arch-any
+Check: files/architecture
diff --git a/t/recipes/checks/files/architecture/empty-files-arch-any/eval/hints b/t/recipes/checks/files/architecture/empty-files-arch-any/eval/hints
new file mode 100644
index 0000000..eda52b6
--- /dev/null
+++ b/t/recipes/checks/files/architecture/empty-files-arch-any/eval/hints
@@ -0,0 +1 @@
+empty-files-arch-any (binary): package-contains-no-arch-dependent-files
diff --git a/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/debian/control.in b/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/debian/control.in
new file mode 100644
index 0000000..f0f7ed0
--- /dev/null
+++ b/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/debian/control.in
@@ -0,0 +1,15 @@
+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}
+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.
diff --git a/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/debian/install b/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/debian/install
new file mode 100644
index 0000000..6c37889
--- /dev/null
+++ b/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/debian/install
@@ -0,0 +1 @@
+some-file usr/share/lintian
diff --git a/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/fill-values b/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/fill-values
new file mode 100644
index 0000000..5f57097
--- /dev/null
+++ b/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/fill-values
@@ -0,0 +1,4 @@
+Skeleton: upload-native
+Testname: files-arch-indep-not-marked-all
+Package-Architecture: any
+Description: Test of arch indep package not marked arch:all
diff --git a/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/orig/some-file b/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/orig/some-file
new file mode 100644
index 0000000..02c9d2d
--- /dev/null
+++ b/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/build-spec/orig/some-file
@@ -0,0 +1 @@
+Hi, I could totally be architecture dependent.
diff --git a/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/eval/desc b/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/eval/desc
new file mode 100644
index 0000000..92b894c
--- /dev/null
+++ b/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/eval/desc
@@ -0,0 +1,2 @@
+Testname: files-arch-indep-not-marked-all
+Check: files/architecture
diff --git a/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/eval/hints b/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/eval/hints
new file mode 100644
index 0000000..a9537ca
--- /dev/null
+++ b/t/recipes/checks/files/architecture/files-arch-indep-not-marked-all/eval/hints
@@ -0,0 +1 @@
+files-arch-indep-not-marked-all (binary): package-contains-no-arch-dependent-files
diff --git a/t/recipes/checks/files/architecture/very-short-files-arch-any/build-spec/debian/install b/t/recipes/checks/files/architecture/very-short-files-arch-any/build-spec/debian/install
new file mode 100644
index 0000000..fa93a48
--- /dev/null
+++ b/t/recipes/checks/files/architecture/very-short-files-arch-any/build-spec/debian/install
@@ -0,0 +1 @@
+dependency_links.txt /usr/lib/python3/dist-packages/foo.egg-info
diff --git a/t/recipes/checks/files/architecture/very-short-files-arch-any/build-spec/fill-values b/t/recipes/checks/files/architecture/very-short-files-arch-any/build-spec/fill-values
new file mode 100644
index 0000000..7cdbf9d
--- /dev/null
+++ b/t/recipes/checks/files/architecture/very-short-files-arch-any/build-spec/fill-values
@@ -0,0 +1,4 @@
+Skeleton: upload-native
+Testname: very-short-files-arch-any
+Package-Architecture: any
+Description: No file magic available but marked architecture-dependent
diff --git a/t/recipes/checks/files/architecture/very-short-files-arch-any/build-spec/orig/dependency_links.txt b/t/recipes/checks/files/architecture/very-short-files-arch-any/build-spec/orig/dependency_links.txt
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/t/recipes/checks/files/architecture/very-short-files-arch-any/build-spec/orig/dependency_links.txt
@@ -0,0 +1 @@
+
diff --git a/t/recipes/checks/files/architecture/very-short-files-arch-any/eval/desc b/t/recipes/checks/files/architecture/very-short-files-arch-any/eval/desc
new file mode 100644
index 0000000..aaa31fa
--- /dev/null
+++ b/t/recipes/checks/files/architecture/very-short-files-arch-any/eval/desc
@@ -0,0 +1,2 @@
+Testname: very-short-files-arch-any
+Check: files/architecture
diff --git a/t/recipes/checks/files/architecture/very-short-files-arch-any/eval/hints b/t/recipes/checks/files/architecture/very-short-files-arch-any/eval/hints
new file mode 100644
index 0000000..439be0a
--- /dev/null
+++ b/t/recipes/checks/files/architecture/very-short-files-arch-any/eval/hints
@@ -0,0 +1 @@
+very-short-files-arch-any (binary): package-contains-no-arch-dependent-files