[ovs-dev] Travis build failures due to base image change to Xenial.

Ilya Maximets i.maximets at samsung.com
Thu Aug 1 15:53:25 UTC 2019

Hi, everyone.

I'm trying to fix TravisCI build failures on older branches. Recently they
started to change default images from Trusty to Xenial. Not all the repositories
affected so far, but main openvswitch github repo already builds with Ubuntu
Xenial as a base image.

This caused few issues on older OVS branches due to more recent compilers:

There are patches that needs to be backported:

* Followiong patch needed for all branches from 2.9 to 2.5:
a7021b08b 2018-07-09 | configure: Disable -Wnull-pointer-arithmetic Clang warning. [Ben Pfaff]

* Branches 2.7 - 2.5 additionally needs:
1e78e3085 2017-01-26 | libX.pc: use the correct output directory [Aaron Conole]

Above makes branches 2.9 - 2.6 to build correctly.
I prepared backports for these branches and could push them.

However, there is an additional issue with branch-2.5:

branch-2.5 has kernel 2.6.32 in the .travis.yml, but gcc >= 5 is not
able to build this kernel. This kernel reached its EOL few years ago
already and will never be fixed. So, there are few options for this issue:

1. Simply remove 2.6.32 kernel from the build matrix.
   (I have a simple patch for this.)

2. Officially drop support of this (or maybe some other too) kernel on branch-2.5.
   Note: Starting from branch-2.6 OVS officially supports only kernels >= 3.10.
   This will, probably, require documentation updates on all newer branches.

3. Drop support of branch-2.5, i.e. stop backporting patches and preparing
   stable releases.
   This might be not that easy as ovs-2.5 claimed as an LTS release right now.
   Does anybody use it?

4. Add 'dist: trusty' to .travis.yml on branch-2.5 so Travis will keep using
   Ubuntu Trusty image with old compilers that able to build kernel 2.6.32.

Would like to hear some opinions.

Best regards, Ilya Maximets.

More information about the dev mailing list