Re: [PATCH] selftests/x86: Add <test_name>{,_32,_64} targets

From: Andy Lutomirski
Date: Thu Jan 18 2018 - 18:11:09 EST


On Thu, Jan 18, 2018 at 2:19 PM, Dmitry Safonov <dima@xxxxxxxxxx> wrote:
> One can only use `make all` or `make <test_name>_<bitness>`
> as make targets.
> `make <test_name>` doesn't work as Ingo noticed:
> x86> make test_vsyscall
> gcc -O2 -g -std=gnu99 -pthread -Wall -no-pie test_vsyscall.c -o test_vsyscall
> /tmp/aBaoo3nb.o: In function `init_vdso':
> test_vsyscall.c:68: undefined reference to `dlopen'
> test_vsyscall.c:76: undefined reference to `dlsym'
> test_vsyscall.c:80: undefined reference to `dlsym'
> test_vsyscall.c:84: undefined reference to `dlsym'
> test_vsyscall.c:88: undefined reference to `dlsym'
> test_vsyscall.c:70: undefined reference to `dlopen'
> collect2: error: ld returned 1 exit status
> <builtin>: recipe for target 'test_vsyscall' failed
> make: *** [test_vsyscall] Error 1
>
> Makefile target substitution neither works :-/
>
> Generate .PHONY targets per-test and fix target substitution.

Reviewed-by: Andy Lutomirski <luto@xxxxxxxxxx>