We currently run a CI job on macOS Mojave with Xcode 10.
QEMU policy is to support the two last major OS releases.
Add a job building on macOS Catalina, which comes with Xcode 11.
Split the target list in two, as we don't need to cover twice the
same targets.
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
.travis.yml | 36 +++++++++++++++++++++++++++++++++++-
1 file changed, 35 insertions(+), 1 deletion(-)
diff --git a/.travis.yml b/.travis.yml
index a2a7fd0dd1..d02a477623 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -269,9 +269,10 @@ matrix:
# MacOSX builds - cirrus.yml also tests some MacOS builds including latest Xcode
+ # On macOS Mojave, the SDK comes bundled with Xcode 10.
- name: "OSX Xcode 10.3"
env:
- - CONFIG="--target-list=i386-softmmu,ppc-softmmu,ppc64-softmmu,m68k-softmmu,x86_64-softmmu --extra-cflags=-I/usr/local/opt/ncurses/include --extra-ldflags=-L/usr/local/opt/ncurses/lib"
+ - CONFIG="--target-list=i386-softmmu,ppc-softmmu,ppc64-softmmu,m68k-softmmu --extra-cflags=-I/usr/local/opt/ncurses/include --extra-ldflags=-L/usr/local/opt/ncurses/lib"
os: osx
osx_image: xcode10.3
compiler: clang
@@ -301,6 +302,39 @@ matrix:
- ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log && exit 1; }
+ # On macOS Catalina, the SDK comes bundled with Xcode 11.
+ - name: "OSX Xcode 11.3"
+ env:
+ - CONFIG="--target-list=arm-softmmu,ppc64-softmmu,x86_64-softmmu --extra-cflags=-I/usr/local/opt/ncurses/include --extra-ldflags=-L/usr/local/opt/ncurses/lib"
+ os: osx
+ osx_image: xcode11.3
+ compiler: clang
+ addons:
+ homebrew:
+ packages:
+ - ccache
+ - libgcrypt
+ - libiscsi
+ - libssh2
+ - libusb
+ - lzfse
+ - lzo
+ - gettext
+ - glib
+ - gnu-sed
+ - ncurses
+ - pixman
+ - python
+ - snappy
+ - vde
+ update: true
+ before_script:
+ - brew link --overwrite python
+ - export PATH="/usr/local/opt/ccache/libexec:$PATH"
+ - mkdir -p ${BUILD_DIR} && cd ${BUILD_DIR}
+ - ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log && exit 1; }
+
+
# Python builds
- name: "GCC Python 3.5 (x86_64-softmmu)"
env:
--
2.21.1
Philippe Mathieu-Daudé <philmd@redhat.com> writes:
> We currently run a CI job on macOS Mojave with Xcode 10.
>
> QEMU policy is to support the two last major OS releases.
> Add a job building on macOS Catalina, which comes with Xcode 11.
>
> Split the target list in two, as we don't need to cover twice the
> same targets.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> .travis.yml | 36 +++++++++++++++++++++++++++++++++++-
> 1 file changed, 35 insertions(+), 1 deletion(-)
>
> diff --git a/.travis.yml b/.travis.yml
> index a2a7fd0dd1..d02a477623 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -269,9 +269,10 @@ matrix:
>
> # MacOSX builds - cirrus.yml also tests some MacOS builds including latest Xcode
>
> + # On macOS Mojave, the SDK comes bundled with Xcode 10.
> - name: "OSX Xcode 10.3"
> env:
> - - CONFIG="--target-list=i386-softmmu,ppc-softmmu,ppc64-softmmu,m68k-softmmu,x86_64-softmmu --extra-cflags=-I/usr/local/opt/ncurses/include --extra-ldflags=-L/usr/local/opt/ncurses/lib"
> + - CONFIG="--target-list=i386-softmmu,ppc-softmmu,ppc64-softmmu,m68k-softmmu --extra-cflags=-I/usr/local/opt/ncurses/include --extra-ldflags=-L/usr/local/opt/ncurses/lib"
> os: osx
> osx_image: xcode10.3
> compiler: clang
> @@ -301,6 +302,39 @@ matrix:
> - ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log && exit 1; }
>
>
> + # On macOS Catalina, the SDK comes bundled with Xcode 11.
> + - name: "OSX Xcode 11.3"
> + env:
> + - CONFIG="--target-list=arm-softmmu,ppc64-softmmu,x86_64-softmmu --extra-cflags=-I/usr/local/opt/ncurses/include --extra-ldflags=-L/usr/local/opt/ncurses/lib"
> + os: osx
> + osx_image: xcode11.3
Are we duplicating what the latest Xcode on Cirrus is here?
--
Alex Bennée
On 2/25/20 1:29 PM, Alex Bennée wrote:
>
> Philippe Mathieu-Daudé <philmd@redhat.com> writes:
>
>> We currently run a CI job on macOS Mojave with Xcode 10.
>>
>> QEMU policy is to support the two last major OS releases.
>> Add a job building on macOS Catalina, which comes with Xcode 11.
>>
>> Split the target list in two, as we don't need to cover twice the
>> same targets.
>>
>> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>> ---
>> .travis.yml | 36 +++++++++++++++++++++++++++++++++++-
>> 1 file changed, 35 insertions(+), 1 deletion(-)
>>
>> diff --git a/.travis.yml b/.travis.yml
>> index a2a7fd0dd1..d02a477623 100644
>> --- a/.travis.yml
>> +++ b/.travis.yml
>> @@ -269,9 +269,10 @@ matrix:
>>
>> # MacOSX builds - cirrus.yml also tests some MacOS builds including latest Xcode
>>
>> + # On macOS Mojave, the SDK comes bundled with Xcode 10.
>> - name: "OSX Xcode 10.3"
>> env:
>> - - CONFIG="--target-list=i386-softmmu,ppc-softmmu,ppc64-softmmu,m68k-softmmu,x86_64-softmmu --extra-cflags=-I/usr/local/opt/ncurses/include --extra-ldflags=-L/usr/local/opt/ncurses/lib"
>> + - CONFIG="--target-list=i386-softmmu,ppc-softmmu,ppc64-softmmu,m68k-softmmu --extra-cflags=-I/usr/local/opt/ncurses/include --extra-ldflags=-L/usr/local/opt/ncurses/lib"
>> os: osx
>> osx_image: xcode10.3
>> compiler: clang
>> @@ -301,6 +302,39 @@ matrix:
>> - ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log && exit 1; }
>>
>>
>> + # On macOS Catalina, the SDK comes bundled with Xcode 11.
>> + - name: "OSX Xcode 11.3"
>> + env:
>> + - CONFIG="--target-list=arm-softmmu,ppc64-softmmu,x86_64-softmmu --extra-cflags=-I/usr/local/opt/ncurses/include --extra-ldflags=-L/usr/local/opt/ncurses/lib"
>> + os: osx
>> + osx_image: xcode11.3
>
> Are we duplicating what the latest Xcode on Cirrus is here?
Maybe, I'm not sure. It seems only few people care about
Cirrus/Shippable but they are not taken seriously by the community, as
they are often broken and nobody is notified. Currently Travis has a
broader audience.
Also I sent a series to fix various things that break on Cirrus from
time to time but I felt there is not many interest so I stopped spending
energy on it:
https://www.mail-archive.com/qemu-devel@nongnu.org/msg675074.html
We could change that by refusing to merge pullreq that break such CI.
On Thu, Apr 09, 2020 at 07:44:46PM +0200, Philippe Mathieu-Daudé wrote:
> On 2/25/20 1:29 PM, Alex Bennée wrote:
> >
> > Philippe Mathieu-Daudé <philmd@redhat.com> writes:
> >
> > > We currently run a CI job on macOS Mojave with Xcode 10.
> > >
> > > QEMU policy is to support the two last major OS releases.
> > > Add a job building on macOS Catalina, which comes with Xcode 11.
> > >
> > > Split the target list in two, as we don't need to cover twice the
> > > same targets.
> > >
> > > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> > > ---
> > > .travis.yml | 36 +++++++++++++++++++++++++++++++++++-
> > > 1 file changed, 35 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/.travis.yml b/.travis.yml
> > > index a2a7fd0dd1..d02a477623 100644
> > > --- a/.travis.yml
> > > +++ b/.travis.yml
> > > @@ -269,9 +269,10 @@ matrix:
> > > # MacOSX builds - cirrus.yml also tests some MacOS builds including latest Xcode
> > > + # On macOS Mojave, the SDK comes bundled with Xcode 10.
> > > - name: "OSX Xcode 10.3"
> > > env:
> > > - - CONFIG="--target-list=i386-softmmu,ppc-softmmu,ppc64-softmmu,m68k-softmmu,x86_64-softmmu --extra-cflags=-I/usr/local/opt/ncurses/include --extra-ldflags=-L/usr/local/opt/ncurses/lib"
> > > + - CONFIG="--target-list=i386-softmmu,ppc-softmmu,ppc64-softmmu,m68k-softmmu --extra-cflags=-I/usr/local/opt/ncurses/include --extra-ldflags=-L/usr/local/opt/ncurses/lib"
> > > os: osx
> > > osx_image: xcode10.3
> > > compiler: clang
> > > @@ -301,6 +302,39 @@ matrix:
> > > - ${SRC_DIR}/configure ${BASE_CONFIG} ${CONFIG} || { cat config.log && exit 1; }
> > > + # On macOS Catalina, the SDK comes bundled with Xcode 11.
> > > + - name: "OSX Xcode 11.3"
> > > + env:
> > > + - CONFIG="--target-list=arm-softmmu,ppc64-softmmu,x86_64-softmmu --extra-cflags=-I/usr/local/opt/ncurses/include --extra-ldflags=-L/usr/local/opt/ncurses/lib"
> > > + os: osx
> > > + osx_image: xcode11.3
> >
> > Are we duplicating what the latest Xcode on Cirrus is here?
>
> Maybe, I'm not sure. It seems only few people care about Cirrus/Shippable
> but they are not taken seriously by the community, as they are often broken
> and nobody is notified. Currently Travis has a broader audience.
>
> Also I sent a series to fix various things that break on Cirrus from time to
> time but I felt there is not many interest so I stopped spending energy on
> it:
> https://www.mail-archive.com/qemu-devel@nongnu.org/msg675074.html
>
> We could change that by refusing to merge pullreq that break such CI.
IMHO less is more. IOW, we should use/support the fewest possible CI
systems required to get the coverage we want. If we can get all macOS
coverage on Travis, I'd remove it from Cirrus, or vica-verca. The fewer
places we have to look at the more likely we'll pay attention to it
when it breaks.
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
© 2016 - 2025 Red Hat, Inc.