this is necessary in order to ensure that our headers are usable
ref T8228
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D10036
With the specsuite tests fixed now we can see that the build also works
with Fedora 30, so we can update the last missing jobs not having it.
Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9193
Summary:
We finally have regular Coverity Scan runs back to our CI.
It gets triggered from the cron jobs on Travis. As we are not able to
identify if it comes from a daily or weekly cron build I added a check
to only run the scan build on a Saturday so we should have a nice and
fresh report on Monday morning in our mailboxes.
Reviewers: zmike, bu5hm4n
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9175
Summary:
This caching is no longer needed. No m4 cache around with meson.
Our config.cache setup by our autotools build is no longer there either.
Reviewers: zmike, bu5hm4n
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9160
Summary:
One of the time consuming parts of the macos build we have is the
installing of the efl dependencies as packages from brew.
The brew update command alone is often taking 5m to run.
To avoid running brew update at all we are switching to a newer osx
image from Travis, which comes with a newer set of brew metadata and
gets us around a brew update for now. Together with this we are also
switching from our own dependency install script to the brew package
addon provided by travis already.
In my testing this shows we are only spending 270s in the brew package
updates comapred to 635s before. So we have a 6 minutes speedup for
every osx build!
Depends on D9161
Reviewers: zmike, bu5hm4n
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9162
Summary:
This was part of the caching speedup for autotools we no longer need.
Depends on D9121
Reviewers: zmike, bu5hm4n
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9122
Summary:
With the meson build the examples do not have a dedicated target, no
need for this script anymore.
Depends on D9120
Reviewers: zmike, bu5hm4n
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9121
Summary:
This was used to pass to make and is no longer used with ninja.
Depends on D9117
Reviewers: zmike, bu5hm4n
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9118
Summary:
We used this to have a conditional to enter the different autotools
and meson branches in our build scripts. No longer needed.
Depends on D9116
Reviewers: zmike, bu5hm4n
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9117
these are no longer used by anything
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9108
Get your seatbelt fastend! It is happening! AUTOTOOLS IS GONE NOW!
All praise to meson!
This time the final version, ci has been adjusted, and now does not try
anymore to build a removed buildsystem. However, the scripts in there
need cleaning up.
Differential Revision: https://phab.enlightenment.org/D9027
Summary:
We follow Debian 9.9, Ubuntu 19.04 and Fedora 30 releases.
Also adding a build for Ubuntu 18.04 LTS to the cron job.
Not all jobs are updated yet as some experience failures
(old or new versions) which need to be understand and fixed
before we move on.
Reviewers: zmike
Reviewed By: zmike
Subscribers: zmike, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9088
Summary:
catchup with the windows cross build autotools build we have and provide
the matching meson build.
Depends on D9042
Reviewers: bu5hm4n, zmike, vtorri
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9043
Summary:
Updated mingw toolchain (6.0 plus gcc 9.3) based on Fedora 30.
Also updated ewpi with more and newer cross compiled deps.
Depends on D9041
Reviewers: bu5hm4n, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D9042
Summary:
The new image also contains the ewpi install in a different location.
Updating the references here.
Reviewers: bu5hm4n, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7833
Summary:
This makes job descriptions shorter and also clearer to see what env
variable belongs to what job and os.
Moving the release ready build to an earlier start position in the cron
job to shorten the total build time.
Depends on D7799
Reviewers: bu5hm4n, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7800
Summary:
This cuts down the time the osx builld takes from ~30min to ~20min
Keeping the autotools osx build in the cron job for now.
Reviewers: bu5hm4n, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7799
Summary:
With some recent changes we only had builds running after a push which
did not qualify for a make check / ninja test run. Mostly due to problems
with the tests and specific config options. Bring back a default build
which will also run the unit tests un every push.
Also adding back a dedicated wayland build due to conflicts of gl
versions with the all options enabled build.
Fixes T7545
Reviewers: bu5hm4n, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7545
Differential Revision: https://phab.enlightenment.org/D7727
Summary:
This stopped working a while ago and we are not actively using it.
If we need it we can bring it back in a better way later.
Depends on D7708
Reviewers: bu5hm4n, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7709
The docker image now contains a native efl build as bootstrap for doing
the mingw cross-build. Paths to the generator binaries have been
update. We also switched to using a dedicated Fedora28-mingw docker
image for now to have a more stable environment for now.
Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7377
Since a recent commit eolian_gen from HEAD is needed to build efl.
So far the mingw cross build avoided the double build of efl for
bootstrapping purpose and used the 1.21 package for the cross build.
This does no longer work and all Travis jobs are now failung due to
this. As a hotfix I disable the build now (Friday evening) to have
working builds over the weekend and find a better solution next week.
We currently have 6 jobs runnign after a git push, but only 5 parallel
workers available. The macos build takes way longer then the meson
builds for example which we will use to our advantage.
Starting the longest builds (macos and mingw) first and letting the
second meson build start after the first ones finishes. That way the
limitation is still the long running macos job.
Differential Revision: https://phab.enlightenment.org/D7321
this updates the scripts in order to make ninja all / ninja test work as
expected. For now there are 2 new jobs options-enabled and
options-disabled. mingw and osx will follow in another commit.
Benchmarks are disabled for now, as the eina benchmark does not seem to
terminate.
Differential Revision: https://phab.enlightenment.org/D7255
The misc build already had most of the extra options enabled for the EFL
build. Instead of wasting CPU cycles on a full seperate build for just
wayland options we merge these two together. In the process we rename
from misc (pretty vague) to options-enabled and options-disbaled.
Due to the combination of options we need to disable sdl for now. It
clashes with the OpenGL ES option we enable for wayland. Having build
for the different GL flavours is something we should look into at some
point.
Patch is based on the patches from Marcel in D7253 and D7254
Differential Revision: https://phab.enlightenment.org/D7320
We are using the EFL windows package installer (ewpi) from Vincent Torri
here (thanks!) to setup all the needed cross compiled dependencies for
EFL.
The make target is disabled as we are not able to execute the windows
binaries withour additional work to run check.
Work is ongoing in ewpi to have the dependencies provided for soem of
the disabled build options (gstreamer, webp, tiff, physics, etc). Once
these are working well in ewpi we will enable them here as well.
[Brought back after revert. CI image is now fixed to have the needed
pre-built windows components again]
Differential Revision: https://phab.enlightenment.org/D7294
With Archlinux being a rolling release every new build of the docker
image could contain new changes that would break for us. For all other
distros we also follow the latest release approach where we want to make
sure efl still builds for it. With Archlinux this is not possible by its
nature. Luckily enough efl developers use Archlinux so the risk of
issues being left unnoticed is small enough.
Differential Revision: https://phab.enlightenment.org/D7306
We are using the EFL windows package installer (ewpi) from Vincent Torri
here (thanks!) to setup all the needed cross compiled dependencies for
EFL.
The make target is disabled as we are not able to execute the windows
binaries withour additional work to run check.
Work is ongoing in ewpi to have the dependencies provided for soem of
the disabled build options (gstreamer, webp, tiff, physics, etc). Once
these are working well in ewpi we will enable them here as well.
Differential Revision: https://phab.enlightenment.org/D7294
We need to keep our builds running for every push to a minimum. Various
distro builds as well as the release-ready build can happily run once a
day.
This commit also switches from a build matrix to a simple list of build
jobs to allow the usage of build type = cron condition (not possible
with the matrix builds)
Differential Revision: https://phab.enlightenment.org/D7293
canceled builds indicate that someone is actively watching a build,
likely in order to test changes. there's no point in spamming irc for
these events
Differential Revision: https://phab.enlightenment.org/D6730
examples and install are both built by distcheck build, no need to also
build them in every other build
there's also no need to try building an app against the compiled libraries
since ci runs unit tests, requiring binaries to run after linking to the
libraries
Differential Revision: https://phab.enlightenment.org/D6663
Summary:
if env vars change between runs then the cache is invalidated, causing
configure to print a very specific error
by running a separate script to catch this error, the build can detect
and clear the cache when necessary to avoid having to manually disable
the cache when changing build settings
Depends on D6697
Reviewers: stefan_schmidt, bu5hm4n
Reviewed By: bu5hm4n
Subscribers: bu5hm4n, cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6732
this will be useful while profiling CI builds to know whether a patch
has made builds slower so that it can potentially be examined
Differential Revision: https://phab.enlightenment.org/D6666
travis upgraded to macos high sierra overnight without notification(?)
and this is now required in order to find openssl for some reason
also disable config.cache to prevent configure errors
Differential Revision: https://phab.enlightenment.org/D6718
this adds a script to run make check after the build has finished,
repeating tests 3 times to try and reduce false positives from intermittent
failure tests
ref T7094
Differential Revision: https://phab.enlightenment.org/D6617
this adds the downloaded homebrew package files to a cache in order to
avoid needing to separately download each file at the start of each build
not sure we can do better here unless we buy the enterprise-level travis
package which allows building with custom osx images which we could pre-install
all these dependencies on
ref T7096
Differential Revision: https://phab.enlightenment.org/D6610
this enables caching of the autoreconf and ./configure stages of the build
using autotools-provided caching mechanisms in order to speed up these steps
fix T7136
Differential Revision: https://phab.enlightenment.org/D6608
this enables and implements full support for ccache on travis builds
fix T7126
Differential Revision: https://phab.enlightenment.org/D6605
=also includes previously-submitted patches=
ci: split out ccache config setup into separate script
this provides a more unified place to set ccache options
also enable ccache compression to cut down on cache upload/download overhead
ref D6613
ci: zero ccache stats before build and add some comments for options used
zeroing the stats before each build will provide more insight into the cache
performance for each build
ref D6621
ci: break out ccache stat printing into separate script
continue to make travis.yml more readable
ref D6622
ci: add more ccache config options to improve cache direct hits
ci: disable second cpp run for ccache
this should avoid running cpp twice for files
https://ccache.samba.org/manual.html#_the_preprocessor_mode
this moves each step of the ci build into a separate script with the build
type passed as an argument, allowing for easier modification of each individual
step as necessary and making travis.yml more readable
Differential Revision: https://phab.enlightenment.org/D6604
also includes:
ci: break out make commands into travis.yml from build scripts
this simplifies the platform-specific build scripts to only perform
the configure stage of the build (and any additional setup) and then
uses standardized commands for the build
in addition to being simpler, this will also provide more/better info
about build timings
ref D6603
inotify is not available in docker containers, so disable this for now
as it will always cause codepaths relying on it to time out
Differential Revision: https://phab.enlightenment.org/D6601
Summary:
travis docs explicitly state that the expectation for builds is to have
2 cpus, meaning that 10 jobs is wayyyy too many and was actually causing
some build failures due to strain on the virtual hw
this sets the number of jobs using a global variable to avoid having to set
it separately for each build
https://docs.travis-ci.com/user/reference/overview/#Virtualization-environments
Reviewers: devilhorns, ManMower
Reviewed By: ManMower
Subscribers: ManMower, cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6558