• Thomas Richter's avatar
    perf build: Update feature check for clang and llvm · 4e95ed4f
    Thomas Richter authored
    Perf build auto-detects features and packages already installed for its
    build. This is done in directory tools/build/feature. This directory
    contains small sample programs. When they successfully compile the
    necessary prereqs in form of libraries and header files are present.
    
    Such a check is also done for llvm and clang. And the checks fail.
    
    Fix this and update to the latest C++ standard and use the new library
    provided by clang (which contains new packaging) s/ee this link for
    reference:
    
     https://fedoraproject.org/wiki/Changes/Stop-Shipping-Individual-Component-Libraries-In-clang-lib-Package
    
    Output before:
     # rm -f ./test-clang.bin; make test-clang.bin; ./test-clang.bin; \
    	ll test-clang.make.output
     g++  -MD -Wall -Werror -o test-clang.bin test-clang.cpp \
    	 	> test-clang.make.output 2>&1 -std=gnu++14 \
    	-I/usr/include 		\
    	-L/usr/lib64		\
    	-Wl,--start-group -lclangBasic -lclangDriver	\
    	  -lclangFrontend -lclangEdit -lclangLex	\
    	  -lclangAST -Wl,--end-group 			\
    	-lLLVM-16	\
    			\
    	> test-clang.make.output 2>&1
     make: *** [Makefile:356: test-clang.bin] Error 1
     -bash: ./test-clang.bin: No such file or directory
     -rw-r--r--. 1 root root 252041 Jul 12 09:56 test-clang.make.output
     #
    
    File test-clang.make.output contains many lines of unreferenced
    symbols.
    
    Output after:
     # rm -f ./test-clang.bin; make test-clang.bin; ./test-clang.bin; \
    	cat test-clang.make.output
     g++  -MD -Wall -Werror -o test-clang.bin test-clang.cpp \
    	 > test-clang.make.output 2>&1 -std=gnu++17	\
    	-I/usr/include 		\
    	-L/usr/lib64		\
    	-Wl,--start-group -lclang-cpp -Wl,--end-group	\
    	-lLLVM-16	\
    			\
    	> test-clang.make.output 2>&1
     #
    
    Committer notes:
    
    Test it in the tools/build/feature directory, and have clang-devel and
    llvm-devel installed.
    Signed-off-by: default avatarThomas Richter <tmricht@linux.ibm.com>
    Tested-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    Cc: Heiko Carstens <hca@linux.ibm.com>
    Cc: Ian Rogers <irogers@google.com>
    Cc: Jiri Olsa <jolsa@kernel.org>
    Cc: Sumanth Korikkar <sumanthk@linux.ibm.com>
    Cc: Sven Schnelle <svens@linux.ibm.com>
    Cc: Vasily Gorbik <gor@linux.ibm.com>
    Cc: Wang Nan <wangnan0@huawei.com>
    Link: https://lore.kernel.org/r/20230725150347.3479291-1-tmricht@linux.ibm.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    4e95ed4f
Makefile 10.6 KB