Message ID | 1461595578-7014-1-git-send-email-cardoe@cardoe.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Apr 25, 2016 at 09:46:18AM -0500, Doug Goldstein wrote: > For native (non-cross compiles) we now only require bcc, ld86, as86 for > building rombios, we can build the toolstack sans rombios and using the > system SeaBIOS due to known build issues. At the same time capture the > output of the configure scripts to help with tracking down future build > issues. This does not enable building of the toolstack with clang for > now due to multiple failures. > > Signed-off-by: Doug Goldstein <cardoe@cardoe.com> It would be useful if you can provide a link to a success travis run so that people who are interested (e.g. me :-P) can have a look. > --- > .travis.yml | 8 ++++---- > scripts/travis-build | 31 +++++++++++++++++++++++++++++++ I guess the reason for this is because travis's yaml is not expressive enough for our purpose? The rest looks sensible to me. Wei.
On 4/25/16 9:53 AM, Wei Liu wrote: > On Mon, Apr 25, 2016 at 09:46:18AM -0500, Doug Goldstein wrote: >> For native (non-cross compiles) we now only require bcc, ld86, as86 for >> building rombios, we can build the toolstack sans rombios and using the >> system SeaBIOS due to known build issues. At the same time capture the >> output of the configure scripts to help with tracking down future build >> issues. This does not enable building of the toolstack with clang for >> now due to multiple failures. >> >> Signed-off-by: Doug Goldstein <cardoe@cardoe.com> > > It would be useful if you can provide a link to a success travis run so > that people who are interested (e.g. me :-P) can have a look. Apologies. I meant to just didn't. https://travis-ci.org/cardoe/xen/builds/125166028
On 25/04/16 15:46, Doug Goldstein wrote: > For native (non-cross compiles) we now only require bcc, ld86, as86 for > building rombios, we can build the toolstack sans rombios and using the > system SeaBIOS due to known build issues. At the same time capture the > output of the configure scripts to help with tracking down future build > issues. This does not enable building of the toolstack with clang for > now due to multiple failures. > > Signed-off-by: Doug Goldstein <cardoe@cardoe.com> Looking at the results of https://travis-ci.org/cardoe/xen/builds/125166028 , this is definitely a good improvement. Acked-by: Andrew Cooper<andrew.cooper3@citrix.com> > --- > .travis.yml | 8 ++++---- > scripts/travis-build | 31 +++++++++++++++++++++++++++++++ > 2 files changed, 35 insertions(+), 4 deletions(-) > create mode 100755 scripts/travis-build > > diff --git a/.travis.yml b/.travis.yml > index 741a8ab..0eea94e 100644 > --- a/.travis.yml > +++ b/.travis.yml > @@ -75,18 +75,18 @@ addons: > - gcc-5 > - g++-5 > - clang-3.8 > + - seabios > # we must set CXX manually instead of using 'language: cpp' due to > # travis-ci/travis-ci#3871 > before_script: > - export CXX=${CC/cc/++} > - export CXX=${CXX/clang/clang++} > script: > - - ( [ "x${RANDCONFIG}" = "xy" ] && ( make -C xen randconfig ) > - || exit 0 ) > - - ( ./configure --disable-tools --disable-stubdom --enable-docs && > - make dist ) > + - ./scripts/travis-build > after_script: > - cat xen/.config > + - cat tools/config.log > + - cat docs/config.log > notifications: > irc: > channels: > diff --git a/scripts/travis-build b/scripts/travis-build > new file mode 100755 > index 0000000..b553f20 > --- /dev/null > +++ b/scripts/travis-build > @@ -0,0 +1,31 @@ > +#!/bin/bash -ex > + > +# random config or default config > +if [[ "${RANDCONFIG}" == "y" ]]; then > + make -C xen randconfig > +else > + make -C xen defconfig > +fi > + > +# build up our configure options > +cfgargs=() > +cfgargs+=("--disable-stubdom") # more work needed into building this > +cfgargs+=("--disable-rombios") > +cfgargs+=("--enable-docs") > +cfgargs+=("--with-system-seabios=/usr/share/seabios/bios.bin") > + > +if [[ "${XEN_TARGET_ARCH}" == "x86_64" ]]; then > + cfgargs+=("--enable-tools") > +else > + cfgargs+=("--disable-tools") # we don't have the cross depends installed > +fi > + > +# Due to multiple build failures and the desire to get more > +# build testing (GCC only) enabled this is disabled > +if [[ "${clang}" == "y" ]]; then > + cfgargs+=("--disable-tools") > +fi > + > +./configure "${cfgargs[@]}" > + > +make dist However, I do have one suggestion for an improvement which we might want to consider (likely as a followup patch). It would be very useful if we could get travis to build 32bit tools as well as 64bit. It is moderately frequently that the build breaks because of a stray use of unsigned long vs uint32_t or uint64_t. This can be done using XEN_TARGET_ARCH=x86_32, although you would still need x86_64 to the hypervisor, or omit the hypervisor build entirely. ~Andrew
On Mon, Apr 25, 2016 at 10:02:55AM -0500, Doug Goldstein wrote: > On 4/25/16 9:53 AM, Wei Liu wrote: > > On Mon, Apr 25, 2016 at 09:46:18AM -0500, Doug Goldstein wrote: > >> For native (non-cross compiles) we now only require bcc, ld86, as86 for > >> building rombios, we can build the toolstack sans rombios and using the > >> system SeaBIOS due to known build issues. At the same time capture the > >> output of the configure scripts to help with tracking down future build > >> issues. This does not enable building of the toolstack with clang for > >> now due to multiple failures. > >> > >> Signed-off-by: Doug Goldstein <cardoe@cardoe.com> > > > > It would be useful if you can provide a link to a success travis run so > > that people who are interested (e.g. me :-P) can have a look. > > Apologies. I meant to just didn't. > > https://travis-ci.org/cardoe/xen/builds/125166028 > Thanks. Looks good to me. Reviewed-by: Wei Liu <wei.liu2@citrix.com> Though this patch is not strictly coupled with 4.7 I would like to see it in as soon as possible. I will let this patch floating on xen-devel for a bit in case other people have comments. Wei. > -- > Doug Goldstein >
On 4/25/16 9:46 AM, Doug Goldstein wrote: > For native (non-cross compiles) we now only require bcc, ld86, as86 for > building rombios, we can build the toolstack sans rombios and using the > system SeaBIOS due to known build issues. At the same time capture the > output of the configure scripts to help with tracking down future build > issues. This does not enable building of the toolstack with clang for > now due to multiple failures. > > Signed-off-by: Doug Goldstein <cardoe@cardoe.com> > --- So good to push? Just want to see this land for 4.7 because I think it will help catch issues for backports and I can continue to build on this to get more distros building.
On Tue, Apr 26, 2016 at 08:06:54AM -0500, Doug Goldstein wrote: > On 4/25/16 9:46 AM, Doug Goldstein wrote: > > For native (non-cross compiles) we now only require bcc, ld86, as86 for > > building rombios, we can build the toolstack sans rombios and using the > > system SeaBIOS due to known build issues. At the same time capture the > > output of the configure scripts to help with tracking down future build > > issues. This does not enable building of the toolstack with clang for > > now due to multiple failures. > > > > Signed-off-by: Doug Goldstein <cardoe@cardoe.com> > > --- > > So good to push? Just want to see this land for 4.7 because I think it > will help catch issues for backports and I can continue to build on this > to get more distros building. > I will push this in my next sweep. Wei. > -- > Doug Goldstein >
diff --git a/.travis.yml b/.travis.yml index 741a8ab..0eea94e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -75,18 +75,18 @@ addons: - gcc-5 - g++-5 - clang-3.8 + - seabios # we must set CXX manually instead of using 'language: cpp' due to # travis-ci/travis-ci#3871 before_script: - export CXX=${CC/cc/++} - export CXX=${CXX/clang/clang++} script: - - ( [ "x${RANDCONFIG}" = "xy" ] && ( make -C xen randconfig ) - || exit 0 ) - - ( ./configure --disable-tools --disable-stubdom --enable-docs && - make dist ) + - ./scripts/travis-build after_script: - cat xen/.config + - cat tools/config.log + - cat docs/config.log notifications: irc: channels: diff --git a/scripts/travis-build b/scripts/travis-build new file mode 100755 index 0000000..b553f20 --- /dev/null +++ b/scripts/travis-build @@ -0,0 +1,31 @@ +#!/bin/bash -ex + +# random config or default config +if [[ "${RANDCONFIG}" == "y" ]]; then + make -C xen randconfig +else + make -C xen defconfig +fi + +# build up our configure options +cfgargs=() +cfgargs+=("--disable-stubdom") # more work needed into building this +cfgargs+=("--disable-rombios") +cfgargs+=("--enable-docs") +cfgargs+=("--with-system-seabios=/usr/share/seabios/bios.bin") + +if [[ "${XEN_TARGET_ARCH}" == "x86_64" ]]; then + cfgargs+=("--enable-tools") +else + cfgargs+=("--disable-tools") # we don't have the cross depends installed +fi + +# Due to multiple build failures and the desire to get more +# build testing (GCC only) enabled this is disabled +if [[ "${clang}" == "y" ]]; then + cfgargs+=("--disable-tools") +fi + +./configure "${cfgargs[@]}" + +make dist
For native (non-cross compiles) we now only require bcc, ld86, as86 for building rombios, we can build the toolstack sans rombios and using the system SeaBIOS due to known build issues. At the same time capture the output of the configure scripts to help with tracking down future build issues. This does not enable building of the toolstack with clang for now due to multiple failures. Signed-off-by: Doug Goldstein <cardoe@cardoe.com> --- .travis.yml | 8 ++++---- scripts/travis-build | 31 +++++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+), 4 deletions(-) create mode 100755 scripts/travis-build