Commit Graph

94 Commits

Author SHA1 Message Date
Mike Blumenkrantz b3cd430b02 ci: fix return value warning in test build code
Summary: this is a void function

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10272
2019-10-07 18:40:09 +02:00
Carsten Haitzler 6d8e39a642 build - remove evas-modules option as its rather pointless
evas-modules affects evas engine modules if they are static or shared,
but ecore evas modules are still modules... so all in all this doesnt
help much as it still requires modules to be separate from the shared
libs, thus disallowing for statically linking efl into an app anyway
etc. etc. etc. ... so less options to deal with, less complexity.
better.
2019-10-04 13:33:42 +01:00
Carsten Haitzler 04ce5058c1 ci - osx - switch to full gl option on osx 2019-09-23 20:55:05 +01:00
Mike Blumenkrantz 8b2cae5b07 ci: add back target to do out-of-tree test build
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
2019-09-23 14:16:22 +02:00
Stefan Schmidt 5028b6b7c0 ci: travis: let Coverity scan run be executed every night until release
Normally we only have this running on Saturday, which is fine for the
normal development cycle. Being close to a release now I would like to
get result updates every day. This will be switched back to weekly after
the 1.23 release.
2019-09-16 11:41:53 +02:00
Marcel Hollerbach c63b2d136e ci: disable rsvg loader on windows
Summary: deps are missing for that one

Reviewers: stefan_schmidt, zmike, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9514
2019-08-06 11:00:16 -04:00
Stefan Schmidt 87cfde51d3 ci: finally enable examples for mingw build
With the gnutls build problem fixed we can now enable these as well.
2019-07-04 11:09:57 +02:00
Stefan Schmidt f19189a54f ci: cross: make sure we use the mingw pkg-config to detect cross deps
This only came up when we had gnutls native but not cross to find out
that we used the system pkg-config all the time to detect cross.
Making sure we use the correct tool to detect the cross dependencies.
2019-07-04 11:09:57 +02:00
Stefan Schmidt bdc6987067 ci: enable more build options for mingw job
Withj an updated ewpi in the docker image we can now enable more build
options. Examples are still disabled as there is a build break that
needs to get fixed first.
2019-07-04 11:09:57 +02:00
Stefan Schmidt 4f0989f290 ci: travis: add coverity build job to be run from cron
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
2019-06-25 12:11:33 -04:00
Stefan Schmidt 61235a6e5c ci: travis: osx: switch to newer macos image and brew addon for packages
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
2019-06-24 09:10:56 -04:00
Stefan Schmidt dafd23655f ci: enforce ccache for macos meson run
Summary:
While we set CC="ccache gcc" as an env var in Travis it gets overridden
at some point before meson is run. This results in a situation where we
have ccache enabled for g++, but not for gcc. Enforcing the setting
directly before meson again to make sure it gets picked up correctly.

I have seen build time improvements on Travis with up to 7 minutes
with this in an optimal case (rebuild existing job). It should shave off
at least a few minutes from every build even with bigger changes.
Depends on D9160

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9161
2019-06-24 09:09:34 -04:00
Stefan Schmidt ccecfb05a6 ci: make sure we disable the new json evas loader in our jobs
This have been just added and we need to update our disabled list for
some specific jobs where we mess with the disabled loaders manually.
2019-06-21 11:51:52 +02:00
Stefan Schmidt ca64dbd3c9 ci: use ccache also in the mingw cross build
This is one of these two line changing commits one just have to love.
Using ccache also for the mingw builds got a amazing speedof for the
cross build as well.

In my, simple, testing I could reduce the build time on Travis from 18m
to 6m when rebuilding the same rev, thus a 100% cache hit rate. In real
life this would be less of an improvement but reducing the build time in
half is kind of realistic I think. Thanks to Marcel to bringing the idea
up.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9139
2019-06-20 14:05:07 +02:00
Stefan Schmidt 06d59c3457 ci: remove no longer needed make examples script
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
2019-06-19 09:26:23 -04:00
Stefan Schmidt 2a22b5ecef ci: rename some travis fold log names and add more
Summary:
For an easier to grasp travis output we are using the travis_fold and
endfold markers in our scripts. Renaming a few here to match the usage
of meson and ninja instead of make. Also adding a few more that have
been missing.
While we are add it remove a now silly extra mingw conditional.
Depends on D9119

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9120
2019-06-19 09:26:18 -04:00
Stefan Schmidt 4279406e7d ci: enhance enabled/disabled meson builds to cover almost all options
Summary:
We have been lacking to test many of the build options we have with
meson. Catching up on them here for the enabled and disabled build jobs.

Not everythign could be covered yet, but I leave notes about what stil
needs handling.
Depends on D9118

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9119
2019-06-19 09:26:13 -04:00
Stefan Schmidt f0f799e4a8 ci: remove no longer needed MAKEFLAGS env variable
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
2019-06-19 09:26:08 -04:00
Stefan Schmidt a873ae6ea0 ci: remove no longer used scripts and patch file
Summary:
With the autotools build system gone we now longer need these files in
our CI system.

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9116
2019-06-19 09:25:56 -04:00
Mike Blumenkrantz 90f5d5e1f1 ci: remove autotools-related conditionals
these are no longer used by anything

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9108
2019-06-19 13:26:06 +02:00
Stefan Schmidt 202c945bd3 ci/travis: add meson windows cross build
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
2019-05-29 12:29:04 -04:00
Stefan Schmidt 650b21ed7e ci: enhance native bootstrap script for cross builds
Summary:
So far we only did generate a newer eolian_gen binary here due to the
frequent changes, but we really need way more native tools when doing the
cross build. Edje_cc, eet and elm_prefs_cc to name them.

Maintaining a special target for these (when they need almost all of
efl/elm anyway) looks like a burden so we are going with a full efl
build. Still speeding it up quite a bit by disabling bindings, examples
and tests when dong the native tooling build.

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9041
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz 7c7998b3dc meson: enforce 61s timeout for tests, remove explicit timeouts from build files
unit tests automatically abort with info after 60s, and tests should be run with
an appropriate timeout to avoid conflict with the test runner's default 30s timeout

set explicit timeout in eio test for now because there's still frequent bugs here

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8894
2019-05-15 18:49:51 +02:00
Mike Blumenkrantz 07e549ae0d ci: check correct test log for meson build
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8504
2019-03-29 12:34:36 +01:00
Mike Blumenkrantz f397f53a2a ci: use meson test runner with ninja build and use dbus in tests
this fixes dbus usage in tests

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8503
2019-03-29 12:34:35 +01:00
Mike Blumenkrantz 13327b4fee ci: disable exit-on-error during configure and also grab stderr
this should resolve some issues where ci was not correctly detecting
changes in env and clearing the config cache during autotools build

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8416
2019-03-21 10:14:51 +01:00
Mike Blumenkrantz 7dc546bded ci: add missing double quote for osx autotools
Summary:
so there I was, out at the pub after a hard release cycle, drinking
GNU's finest, and a " comes over and challenges me to a duel--
editors at 50pt. the " cheats and gets me right in the repo before
the countdown ends and then I'm out cold.

I wake up the next day with CI (still) failing, hundreds of pings on IRC
asking where I've been, and my refrigerator is somehow filled with ethernet
cables (cat7) which I have no memory of purchasing. my computer has doodles
in permanent marker all over the screen, and my cat is somehow stuck in a
ceiling vent which I also have no memory of seeing. also this isn't my house.

I leave the building, which turns out to be a fast food franchise a few blocks
away from my gym, and the cops roll up (https://i.imgur.com/JnOI4Jz.gifv)
asking to see some identification. I show them my credentials (ssh RSA4096),
and they cuff me. I'm under arrest for failing to close a double quote and
submitting a patch which impersonated a fix to a failing CI job.

the moral of this story is to always reread your patches and make sure you've
matched up all your punctuation.

ref D8340

Reviewers: devilhorns, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl_build

Differential Revision: https://phab.enlightenment.org/D8356
2019-03-14 20:14:31 +01:00
Mike Blumenkrantz 8a6e89358d ci: force osx libffi dep to be found
this is also really, really stupid.

ref D8305

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D8340
2019-03-14 17:07:08 +01:00
Mike Blumenkrantz bf26ce4b12 ci: force osx libffi dep to be found
this is really, really stupid.

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D8305
2019-03-12 16:18:22 +01:00
Marcel Hollerbach b1217ede65 ci: host binaries have moved to a new path
this fixes ci
2019-02-21 08:56:13 +01:00
Marcel Hollerbach 7ab9b48151 build: enable eolian_gen bootstrapping for cross compile
this enables travis to build eolian_gen before cross compiling in mingw.
This is done in order to make eolian_gen patches easier on CI.

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D7930
2019-02-14 13:00:58 +01:00
Stefan Schmidt 95a9cc90d1 ci: travis: switch mingw cross build to also use Fedora 29 as base
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
2019-01-30 14:51:31 -05:00
Stefan Schmidt cea392390f ci: travis: bring back default and wayland builds
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
2019-01-23 09:13:27 -05:00
Stefan Schmidt 557bf35511 ci: update distro checks after version upgrades
Summary:
These two checks still used the, now updated to newer, Debian and Ubuntu
versions. It only showed in the daily cron job build.

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7719
2019-01-22 11:49:32 -05:00
Wonki Kim 8d58ef48bd meson: modify options for enabling the bindings
bindings are added as subdir by foreaching a array defined in meson.build at root.
then meson checks a option which has the same name of the binding.
this patch appends a new option for selecting bindings to build.

[howto]
*as-is
meson build.asis/ -Dmono=false -Dcxx=true
ninja -C build.asis/

*to-be
menson build.tobe/ -Dbindings=luajit,cxx
ninja -C build.tobe/

it is imposibble to use this wrongly because meson raise a error if arguments are not in a predefined list that described in meson_options.txt.
for more information, refer to https://mesonbuild.com/Build-options.html and also take a look at meson_options.txt please.
Differential Revision: https://phab.enlightenment.org/D7563
2019-01-10 10:57:42 +01:00
Stefan Schmidt 6206e7e944 ci: mingw: enable various build options with dependencies now satisfied
After some fixes and updates in ewpi we now have gstreamer, libtiff and
bullet ready as cross compiled dependencies. Time to enable them in the
build.

Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7378
2018-12-07 12:39:36 +01:00
Stefan Schmidt 8e9f773f04 travis: re-enable mingw build with newer eolian_gen for bootstrap
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
2018-12-07 12:39:35 +01:00
Marcel Hollerbach 1dabc4970a ci: disable testing on ubuntu and debian
it appears that there is a bug in meson (which is fixed upstream).
For now this disables the tests, it can be reverted later once 0.49 is
released.

This fixes the cron job for 2 jobs.

Differential Revision: https://phab.enlightenment.org/D7410
2018-12-06 15:49:33 +01:00
Marcel Hollerbach 8d1a1f603b ci: here comes ninja!
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
2018-11-23 14:38:26 +01:00
Stefan Schmidt defded25eb travis: merge wayland build into misc and rename to options-enabled
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
2018-11-23 14:20:25 +01:00
Stefan Schmidt 1a17f41584 ci: mingw build target to cross compile EFL for Windows
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
2018-11-20 11:17:37 +01:00
Stefan Schmidt b8bcd7c2f3 ci/dockerfiles: remove outdated files maintained elsewhere
For a long time now we maintain the needed dockerfiles in a different
repo: https://github.com/Enlightenment/ci-support-files

Doing so allows use to easily use Docker Hub to build these images being
used by Travis CI. The ones deleted here are outdated for a while now
and of no real use anymore.

Differential Revision: https://phab.enlightenment.org/D7307
2018-11-20 10:29:57 +01:00
Marcel Hollerbach ffb992cd4f Revert "ci: mingw build target to cross compile EFL for Windows"
This reverts commit 883058b92b.

This seems to bring up errors in the build -ldbus-1 cannot be found.
Revisions is reopened.
2018-11-19 19:00:11 +01:00
Stefan Schmidt 883058b92b ci: mingw build target to cross compile EFL for Windows
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
2018-11-19 09:29:43 +01:00
Mike Blumenkrantz 70d0fd0d52 ci: run tests up to 5 times before failing
when travis is throttling resourcse more than usual (resources are
dynamically allocated since we are not using a paid service), it
can be the case that tests fail even more than usual.

this number may need to be increased further if 5 does not provide enough
reliability

Differential Revision: https://phab.enlightenment.org/D6920
2018-09-14 11:38:02 +02:00
Mike Blumenkrantz 0a58590934 ci: silence libtool
attempt to disable some libtool warnings throughout the build

https://phab.enlightenment.org/D6661

[Hand edited to get it applied. Stefan]
2018-09-14 10:49:45 +02:00
Mike Blumenkrantz 3065bd054a ci: explicitly clone and build an external app during distcheck
Differential Revision: https://phab.enlightenment.org/D6789
2018-08-21 11:24:47 +02:00
Mike Blumenkrantz 48c12cba5c ci: use distcheck script
I forgot to enable this when I rebased the original version

Differential Revision: https://phab.enlightenment.org/D6877
2018-08-21 11:15:34 +02:00
Mike Blumenkrantz 6bd3bcebe6 ci: disable backtracing on log errors
this is just spam that fills up the logs and sometimes causes builds to
abort when they reach the maximum log size

Differential Revision: https://phab.enlightenment.org/D6788
2018-08-21 11:13:51 +02:00
Mike Blumenkrantz 91dd1d9f4b ci: use manual script for distcheck build
this adds a script which reimplements the distcheck rule generated from
automake and runs that script instad of 'make distcheck'

the benefit of this is that the distcheck script can run tests multiple times
to avoid intermittent failures which could potentially cause build errors.
distcheck builds are by far the longest and most costly of all ci builds, so
it's important to reduce failure rates in these builds to the absolute minimum
in order to keep ci build times low

cibuildme

fix T7094

Differential Revision: https://phab.enlightenment.org/D6734
2018-08-17 22:13:53 +02:00