diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-14 13:42:30 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-14 13:42:30 +0000 |
commit | 75808db17caf8b960b351e3408e74142f4c85aac (patch) | |
tree | 7989e9c09a4240248bf4658a22208a0a52d991c4 /t/recipes/checks/debian/shlibs/shared-libs-control-file | |
parent | Initial commit. (diff) | |
download | lintian-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/debian/shlibs/shared-libs-control-file')
18 files changed, 153 insertions, 0 deletions
diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/compat.in b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/compat.in new file mode 100644 index 0000000..640a566 --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/compat.in @@ -0,0 +1 @@ +[% $dh_compat_level %] diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/control.in b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/control.in new file mode 100644 index 0000000..a223c7e --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/control.in @@ -0,0 +1,57 @@ +Source: [% $source %] +Priority: optional +Section: libs +Maintainer: [% $author %] +Standards-Version: [% $standards_version %] +Build-Depends: [% $build_depends %] +Rules-Requires-Root: no + +Package: libnoshf1 +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: [% $description %] (no shlibs file) + 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. + . + Checks for missing shlibs file. + +Package: libeshf1 +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: [% $description %] (empty shlibs file) + 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. + . + Checks for empty shlibs file. + +Package: libunshf1 +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: [% $description %] (unused entry) + 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. + . + Checks for unused entry in shlibs file. + +Package: libfdshf1 +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: [% $description %] (foreign dep) + 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. + . + Checks for foreign dependency entry in shlibs file. + +Package: libdupshf1 +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: [% $description %] (dup entry) + 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. + . + Checks for duplicate entry in shlibs file. diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libdupshf1.install b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libdupshf1.install new file mode 100644 index 0000000..7452fe1 --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libdupshf1.install @@ -0,0 +1 @@ +usr/lib/libdupshf* diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libdupshf1.symbols b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libdupshf1.symbols new file mode 100644 index 0000000..166a346 --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libdupshf1.symbols @@ -0,0 +1,3 @@ +libdupshf.so.1 libdupshf1 #MINVER# + e@Base 1.0 + energy@Base 0.9 diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libeshf1.install b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libeshf1.install new file mode 100644 index 0000000..5ef4c2d --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libeshf1.install @@ -0,0 +1 @@ +usr/lib/libeshf* diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libeshf1.symbols b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libeshf1.symbols new file mode 100644 index 0000000..fdd0204 --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libeshf1.symbols @@ -0,0 +1,3 @@ +libeshf.so.1 libeshf1 #MINVER# + e@Base 1.0 + energy@Base 0.9 diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libfdshf1.install b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libfdshf1.install new file mode 100644 index 0000000..c01a368 --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libfdshf1.install @@ -0,0 +1 @@ +usr/lib/libfdshf* diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libfdshf1.symbols b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libfdshf1.symbols new file mode 100644 index 0000000..4a18831 --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libfdshf1.symbols @@ -0,0 +1,3 @@ +libfdshf.so.1 libfdshf1 #MINVER# + e@Base 1.0 + energy@Base 0.9 diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libnoshf1.install b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libnoshf1.install new file mode 100644 index 0000000..175a915 --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libnoshf1.install @@ -0,0 +1 @@ +usr/lib/libnoshf* diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libnoshf1.symbols b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libnoshf1.symbols new file mode 100644 index 0000000..fef945e --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libnoshf1.symbols @@ -0,0 +1,3 @@ +libnoshf.so.1 libnoshf1 #MINVER# + e@Base 1.0 + energy@Base 0.9 diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libunshf1.install b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libunshf1.install new file mode 100644 index 0000000..dcdae56 --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libunshf1.install @@ -0,0 +1 @@ +usr/lib/libunshf* diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libunshf1.symbols b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libunshf1.symbols new file mode 100644 index 0000000..737842d --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/libunshf1.symbols @@ -0,0 +1,3 @@ +libunshf.so.1 libunshf1 #MINVER# + e@Base 1.0 + energy@Base 0.9 diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/rules b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/rules new file mode 100644 index 0000000..0cd4c15 --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/debian/rules @@ -0,0 +1,19 @@ +#!/usr/bin/make -f + +DUPSHF:=debian/libdupshf1/DEBIAN/shlibs + +export DEB_BUILD_MAINT_OPTIONS=hardening=+all + +%: + dh $@ + +override_dh_builddeb: + # Work around "smart tools" that check the shlibs + # before installing them. + rm -f debian/libnoshf1/DEBIAN/shlibs + echo "# aloha" > debian/libeshf1/DEBIAN/shlibs + echo "libfoo 1 libunshf1 (> 0.1)" >> debian/libunshf1/DEBIAN/shlibs + sed -i 's/libfdshf1/libforeign1/' debian/libfdshf1/DEBIAN/shlibs + cat $(DUPSHF) $(DUPSHF) > $(DUPSHF).tmp + mv -f $(DUPSHF).tmp $(DUPSHF) + dh_builddeb diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/fill-values b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/fill-values new file mode 100644 index 0000000..9336eee --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/fill-values @@ -0,0 +1,5 @@ +Skeleton: upload-native +Testname: shared-libs-control-file +Default-Build-Depends: debhelper (>= 9.20151004~) +Dh-Compat-Level: 9 +Description: Test checks related to shlibs files diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/orig/Makefile b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/orig/Makefile new file mode 100644 index 0000000..37bef22 --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/orig/Makefile @@ -0,0 +1,23 @@ +CC=gcc +CFLAGS+= -fPIC + +SONAMES:= libnoshf.so.1 libeshf.so.1 libunshf.so.1 libfdshf.so.1 \ + libdupshf.so.1 +LIBFILES:= $(patsubst %,%.0.1, $(SONAMES)) + +all: $(LIBFILES) + +$(LIBFILES): code.o + $(CC) $(LDFLAGS) -o $@ -shared -Wl,-soname,$(patsubst %.0.1,%,$@) $^ -lc + +clean: + rm -f *.a *.o *.so* + +install: all + install -m 0755 -d $(DESTDIR)/usr/lib + install -m 0644 *.so* $(DESTDIR)/usr/lib + for FILE in $(SONAMES) ; do \ + ln -s $${FILE}.0.1 $(DESTDIR)/usr/lib/$$FILE ; \ + done + +.PHONY: install clean diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/orig/code.c b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/orig/code.c new file mode 100644 index 0000000..0ed08e0 --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/build-spec/orig/code.c @@ -0,0 +1,15 @@ +#include <stdlib.h> +#include <math.h> + +double e(void (*f)(char *)){ + char tmp[10]; + double x; + f(tmp); + x = atof(tmp); + return exp(x); +} + +double energy(double mass){ + return pow(10.0, 8.0) * pow(3.0, 2.0) * mass; +} + diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/eval/desc b/t/recipes/checks/debian/shlibs/shared-libs-control-file/eval/desc new file mode 100644 index 0000000..9ccf196 --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/eval/desc @@ -0,0 +1,2 @@ +Testname: shared-libs-control-file +Check: debian/shlibs diff --git a/t/recipes/checks/debian/shlibs/shared-libs-control-file/eval/hints b/t/recipes/checks/debian/shlibs/shared-libs-control-file/eval/hints new file mode 100644 index 0000000..87f69e6 --- /dev/null +++ b/t/recipes/checks/debian/shlibs/shared-libs-control-file/eval/hints @@ -0,0 +1,11 @@ +libunshf1 (binary): symbols-file-missing-build-depends-package-field libunshf.so.1 [symbols] +libunshf1 (binary): shared-library-not-shipped libfoo 1 [shlibs] +libunshf1 (binary): outdated-relation-in-shlibs libunshf1 (> 0.1) [shlibs] +libnoshf1 (binary): symbols-file-missing-build-depends-package-field libnoshf.so.1 [symbols] +libnoshf1 (binary): no-shlibs usr/lib/libnoshf.so.1.0.1 +libfdshf1 (binary): symbols-file-missing-build-depends-package-field libfdshf.so.1 [symbols] +libfdshf1 (binary): distant-prerequisite-in-shlibs libforeign1 [shlibs] +libeshf1 (binary): symbols-file-missing-build-depends-package-field libeshf.so.1 [symbols] +libeshf1 (binary): ships-undeclared-shared-library libeshf 1 for usr/lib/libeshf.so.1.0.1 [shlibs] +libdupshf1 (binary): symbols-file-missing-build-depends-package-field libdupshf.so.1 [symbols] +libdupshf1 (binary): duplicate-in-shlibs (lines 1 2) libdupshf 1 [shlibs] |