[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] tools/tests/x86_emulator causes build failures with older but supported compilers



On 23.11.2019 19:00, Doug Goldstein wrote:
> Per README, GCC 4.1.2 should lead to a successful default "make install" 
> per INSTALL. Currently this is failing due to tools/tests/x86_emulator 
> being in the default path and requiring a compiler with AVX. GCC 4.4.7 
> on CentOS 6 does not have this leading to a failure to build.
> 
> 1265 make[5]: Entering directory `/builds/xen-project/xen/tools/tests'
> 1266 make -C x86_emulator install
> 1267 cc1: error: unrecognized command line option "-mavx2"
> 1268 cc1: error: unrecognized command line option "-mavx512f"
> 1269 cc1: error: unrecognized command line option "-mavx512bw"
> 1270 cc1: error: unrecognized command line option "-mavx512dq"
> 1271 cc1: error: unrecognized command line option "-mavx512er"
> 1272 cc1: error: unrecognized command line option "-mavx512vbmi"
> 1273 /tmp/ccMkLpTV.s: Assembler messages:
> 1274 /tmp/ccMkLpTV.s:3: Error: junk at end of line, first unrecognized 
> character is `{'

These are errors, yes, but ...

> 1275 make[6]: Entering directory 
> `/builds/xen-project/xen/tools/tests/x86_emulator'
> 1276 Makefile:116: Test harness not built, use newer compiler than "gcc" 
> (version 4.4.7) and an "{evex}" capable assembler
> 1277 make[6]: Nothing to be done for `install'.

... there's no build failure here afaics, and this is the intended
way of how things are to work.

> Full log here: https://gitlab.com/xen-project/xen/-/jobs/358852978#L1266
> 
> We have 2 options for the next release:
> 
> 1. Bump the minimum GCC requirement for the tree and drop any support 
> for any distro not matching that requirement.

Not an option - the harness can only be built with gcc 8 or newer right
now, yet we can't raise the requirements (for all of Xen) this much imo.

> 2. Fix the default build to work with older GCC versions.

Not a reasonable option either, as it would be cluttering the harness
with all sorts of #ifdef-s or abstracting wrappers, making it even
more difficult to make changes to it.

What was considered in the past was to skip building of tests/ as a
whole in non-debug builds; don't know what has come of this. It is
probably telling enough that the bottom of ./Config.mk reads like this:

# Short answer -- do not enable this unless you know what you are
# doing and are prepared for some pain.

CONFIG_TESTS       ?= y

Jan

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.