tests: fix main symbol duplication

Pekka Paalanen ppaalanen at gmail.com
Fri Feb 8 10:09:09 UTC 2019


On Thu, 7 Feb 2019 18:07:36 +0200
Leonid Bobrov <mazocomp at disroot.org> wrote:

> From b00351a95d98e4ecc8efe9c7f1e5c56e79fe5f9f Mon Sep 17 00:00:00 2001
> From: Leonid Bobrov <mazocomp at disroot.org>
> Date: Thu, 7 Feb 2019 18:02:57 +0200
> Subject: [PATCH] tests: fix main symbol duplication

Hi Leonid,

your approach to fix these issues looks good to me, and the commit
message explains everything I could ask for, except for maybe
mentioning that the linker is one from OpenBSD, was it?

Unfortunately it seems the patch is somehow malformed:

git am -3 /home/pq/.claws-mail/imapcache/imap.gmail.com/ppaalanen at gmail.com/lists/wayland-devel/39311
-----------------------------------------------------------------------
Applying: tests: fix main symbol duplication
error: git diff header lacks filename information when removing 1 leading pathname component (line 9)
error: could not build fake ancestor
Patch failed at 0001 tests: fix main symbol duplication

It does not look like it came from git-format-patch.

Could you retry, please?

I guess that you might be sending more patches, therefore it would be
nice to get the workflow in order so I don't have to manually redo
every patch.

Would you consider adding a Signed-off-by as well to show that you
agree to https://developercertificate.org/ too?

S-o-b is mentioned in
https://gitlab.freedesktop.org/wayland/wayland/blob/master/CONTRIBUTING.md#sending-patches .


Thanks,
pq

> 
> So far I got these errors before patching:
> 
> libtool: link: cc -o .libs/headers-test -pthread -Wall -Wextra -Wno-unused-parameter -g -Wstrict-prototypes -Wmissing-prototypes -fvisibility=hidden -O2 -pipe tests/headers-test.o tests/headers-protocol-test.o tests/headers-protocol-core-test.o /tmp/obj/wayland-1.16.0/build-amd64/.libs/libtest-runner.a -L.libs -lwayland-client -lffi -lm -lwayland-server -lkvm -Wl,-rpath-link,/usr/local/lib
> ld: error: duplicate symbol: main
> >>> defined at headers-test.c:53 (/tmp/obj/wayland-1.16.0/wayland-1.16.0/tests/headers-test.c:53)
> >>>            tests/headers-test.o:(main)
> >>> defined at test-runner.c:377 (/tmp/obj/wayland-1.16.0/wayland-1.16.0/tests/test-runner.c:377)
> >>>            test-runner.o:(.text+0x250) in archive /tmp/obj/wayland-1.16.0/build-amd64/.libs/libtest-runner.a  
> 
> libtool: link: cc -o .libs/exec-fd-leak-checker -pthread -Wall -Wextra -Wno-unused-parameter -g -Wstrict-prototypes -Wmissing-prototypes -fvisibility=hidden -O2 -pipe tests/exec-fd-leak-checker.o /tmp/obj/wayland-1.16.0/build-amd64/.libs/libtest-runner.a -L.libs -lwayland-client -lffi -lm -lwayland-server -lkvm -Wl,-rpath-link,/usr/local/lib
> ld: error: duplicate symbol: main
> >>> defined at exec-fd-leak-checker.c:57 (/tmp/obj/wayland-1.16.0/wayland-1.16.0/tests/exec-fd-leak-checker.c:57)
> >>>            tests/exec-fd-leak-checker.o:(main)
> >>> defined at test-runner.c:377 (/tmp/obj/wayland-1.16.0/wayland-1.16.0/tests/test-runner.c:377)
> >>>            test-runner.o:(.text+0x250) in archive /tmp/obj/wayland-1.16.0/build-amd64/.libs/libtest-runner.a  
> 
> Makefile.am: error: object 'tests/test-helpers.$(OBJEXT)' created both with libtool and without
> 
> libtool: link: cc -o .libs/fixed-benchmark -pthread -Wall -Wextra -Wno-unused-parameter -g -Wstrict-prototypes -Wmissing-prototypes -fvisibility=hidden -O2 -pipe tests/fixed-benchmark.o /tmp/obj/wayland-1.16.0/build-amd64/.libs/libtest-runner.a -L.libs -lwayland-client -lffi -lm -lwayland-server -lkvm -Wl,-rpath-link,/usr/local/lib
> ld: error: duplicate symbol: main
> >>> defined at fixed-benchmark.c:100 (/tmp/obj/wayland-1.16.0/wayland-1.16.0/tests/fixed-benchmark.c:100)
> >>>            tests/fixed-benchmark.o:(main)
> >>> defined at test-runner.c:377 (/tmp/obj/wayland-1.16.0/wayland-1.16.0/tests/test-runner.c:377)
> >>>            test-runner.o:(.text+0x250) in archive /tmp/obj/wayland-1.16.0/build-amd64/.libs/libtest-runner.a  
> 
> This commit fixes all of that.
> ---
>  Makefile.am | 15 ++++++++-------
>  1 file changed, 8 insertions(+), 7 deletions(-)
> 
> diff --git Makefile.am Makefile.am
> index 697c517..cce4d73 100644
> --- Makefile.am
> +++ Makefile.am
> @@ -210,12 +210,16 @@ noinst_PROGRAMS =				\
>  	exec-fd-leak-checker			\
>  	fixed-benchmark
>  
> -noinst_LTLIBRARIES += libtest-runner.la
> +noinst_LTLIBRARIES +=				\
> +	libtest-runner.la			\
> +	libtest-helpers.la
> +
> +libtest_helpers_la_SOURCES = tests/test-helpers.c
> +libtest_helpers_la_LIBADD = -lrt -ldl $(FFI_LIBS)
>  
>  libtest_runner_la_SOURCES =			\
>  	tests/test-runner.c			\
>  	tests/test-runner.h			\
> -	tests/test-helpers.c			\
>  	tests/test-compositor.h			\
>  	tests/test-compositor.c
>  libtest_runner_la_LIBADD =			\
> @@ -223,8 +227,7 @@ libtest_runner_la_LIBADD =			\
>  	libwayland-util.la			\
>  	libwayland-client.la			\
>  	libwayland-server.la			\
> -	-lrt -ldl $(FFI_LIBS)
> -
> +	libtest-helpers.la
>  
>  array_test_SOURCES = tests/array-test.c
>  array_test_LDADD = libtest-runner.la
> @@ -270,7 +273,6 @@ protocol_logger_test_LDADD = libtest-runner.la
>  headers_test_SOURCES = tests/headers-test.c \
>  		       tests/headers-protocol-test.c \
>  		       tests/headers-protocol-core-test.c
> -headers_test_LDADD = libtest-runner.la
>  nodist_headers_test_SOURCES =			\
>  	protocol/wayland-server-protocol-core.h	\
>  	protocol/wayland-client-protocol-core.h
> @@ -280,13 +282,12 @@ cpp_compile_test_SOURCES = tests/cpp-compile-test.cpp
>  endif
>  
>  fixed_benchmark_SOURCES = tests/fixed-benchmark.c
> -fixed_benchmark_LDADD = libtest-runner.la
>  
>  os_wrappers_test_SOURCES = tests/os-wrappers-test.c
>  os_wrappers_test_LDADD = libtest-runner.la
>  
>  exec_fd_leak_checker_SOURCES = tests/exec-fd-leak-checker.c
> -exec_fd_leak_checker_LDADD = libtest-runner.la
> +exec_fd_leak_checker_LDADD = libtest-helpers.la
>  
>  EXTRA_DIST += tests/scanner-test.sh			\
>  	protocol/tests.xml				\

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20190208/4fd3d302/attachment.sig>


More information about the wayland-devel mailing list