path: root/header_checks (follow)
AgeCommit message (Collapse)Author
2020-06-18meson: add Solaris supportVincent Torri
Summary: Add Solaris support for meson Test Plan: test on OpenIndiana Reviewers: raster, bu5hm4n, stefan_schmidt Reviewed By: raster, stefan_schmidt Subscribers: alarcher, stefan_schmidt, bu5hm4n, cedric, #reviewers, #committers Tags: #efl Differential Revision:
2020-05-01build - remove useless header checks for uv.hCarsten Haitzler (Rasterman)
we check for uv.h - but never do anything with it. this is configure noise that just confuses people into thinking we might do something. we still have dead libuv support but it's enabled with HAVE_LIBUV and we'd need to link to libuv too... which we don't do and we don't enable this. removing libuv supporrt entirely is a totally different question to raise. this here is just removing noise.
2020-01-15ecore_exe/efl_exe - implement exit with parent on bsds with procctlCarsten Haitzler (Rasterman)
2019-12-04exotic: remove left-overs from Exotic supportStefan Schmidt
This seems to have been gone a long time ago and only references left that have not been disturbing the build. Time to clean up! Signed-off-by: Stefan Schmidt <> Reviewed-by: Cedric BAIL <> Differential Revision:
2019-08-19make mman.h privateVincent Torri
Summary: integrate mman.h to make Evil private to the EFL, as mman.h does not exist on Windows. After a discussion with raster, i include sys/mman.h only on non Windows platform. One issue, though, is that src/modules/emotion/generic/Emotion_Generic_Plugin.h has inlined functions using mmap() Test Plan: compilation on Windows Reviewers: cedric, raster, zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-08-06meson: remove one more header checkMarcel Hollerbach
this header check is useless, it will never succeed.
2019-08-06remove useless definition of the macro HAVE_MMAN_HVincent Torri
use HAVE_SYS_MMAN_H when including sys/mman.h and HAVE_MMAP when using mmap() Reviewed-by: Marcel Hollerbach <> Differential Revision:
2019-07-28Eio: enable eio_file_chown if chown is available on the platformVincent Torri
Test Plan: compilation on Windows Reviewers: zmike, raster, cedric Reviewed By: raster Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-07-26meson - for crossbuild move run check to just compile checkCarsten Haitzler (Rasterman)
not as accurate but will do for cross build i guess for O_CLOEXEC
2019-07-26reduce syscalls on opening files - roll CLOEXEC into openCarsten Haitzler (Rasterman)
on linux open supports() O_CLOEXEC. add test case for this in meson build and ifdef. this rolls 3 syscalls into 1 as we were doing open, then fnctl to get and fcntl to set flags. less syscalls is a good thing as syscalls are not cheap on some architectures or systems. I've seen a syscall on 1 system take 2-3x as long as another and another syscall in the same 2 system comparison take 10x as long. depending on the syscall you may only have a budget of something like 5000 syscalls "per frame" (60fps) before you spend all of your frame time just in syscalls not doing any processing, so we should keep these down if possible and that is what this does.
2019-06-27meson: disable xattr on macosMarcel Hollerbach
macos has a different implementation than linux for xattr. This commit disables XATTR again for macos.
2019-06-27meson: add some config definitionsJongmin Lee
Some config definitions used in source code could not be defined during build config process. - HAVE_XATTR - HAVE_CIPHER - HAVE_SIGNATURE - BUILD_ECORE_EVAS_EWS Reviewed-by: Marcel Hollerbach <> Reviewed-by: Vincent Torri <> Differential Revision:
2019-06-21meson: do not error when no optimization architecture is thereMarcel Hollerbach
this should fix building on architectures that do not have native optimization support in efl. fix T8028 Reviewed-by: Dan Horák <@sharkcz> Differential Revision:
2019-05-06meson: enable and fix build of ddrag+gdi engines for evasMike Blumenkrantz
there are some specific defines and cflags needed for these builds to succeed and provide the expected functionality Depends on D8733 Reviewed-by: Marcel Hollerbach <> Reviewed-by: Vincent Torri <> Differential Revision:
2019-04-18Windows: remove fnmatch and regex in Evil and use the ones in regex DLL ↵Vincent Torri
installed by ewpi Test Plan: compilation with autotools and meson (at least as far as it can go) Reviewers: zmike, raster Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-04-02remove useless check of ws2tcpip.hVincent Torri
Summary: it is useless to check for header files which necessarly exist Test Plan: compilation Reviewers: raster, cedric, zmike Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-03-25meson build : remove duplicate check of dirent.hVincent Torri
Reviewers: zmike Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-03-25meson build : remove duplicate check of strerror_rVincent Torri
Summary: strerror_r is checked twice in headers_check Reviewers: zmike Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-03-06build: unbreak build for osxMarcel Hollerbach
We have CI! And even through our Infra is dead and too stupid to use it, you can push your commits there before. This means *you can test* if you build "fixes" are fixing all platforms, or break for example osx. *This one* brings osx back. <3 CI! Reviewed-by: Lauro Neto <lauromauro_> Differential Revision:
2019-03-01meson - fix some more fbsd building and make notes on broken checksCarsten Haitzler (Rasterman)
i found the header checks are logically broken. i was about to replace with a cc.compiles() check but that requires that every check also have full working code not just a symbol to check the existence form so for now just fix the HAVE_NOTIFY_KEVENT define that makes eio build properly again on bsd and note the broken state for a future rethink on how these checks are done.
2019-02-12Revert "Revert the env object because it's broken portability - please redo"Marcel Hollerbach
This reverts commit d6294fa22b88187e44391c1c8ca64b1ebdf14533.
2019-02-12Revert the env object because it's broken portability - please redoCarsten Haitzler (Rasterman)
setenv and unsetenv are not portable. i explained to you at fosdem there are issues and it's why i used putenv in the original implementation and even though it's a pain (the string tou pass to putenv is a pointer used literallt from there on in and you get it from getenv, thus making ownership a pain -this is a libc issue we can't readily solve). use putenv like the original code. then put it back in. vtorri now has windows porting issues with the setenv use. i knew there was a reason that still existed... in addition your in_sync stuff is broken. psuedocode: // assuming BLAGH env is not set to anything here c = efl_core_env_get(global_env, "BLAH"); ... putenv("BLAH=10"); ... c = efl_core_env_Get(global_env, "BLAH"); i will get NULL in both cases for c ... but i should get "10" for the 2nd in reality. reality is lots of code across application code and libraries will at times mess with the environment. it has to work with this. the prior implementation did work with this. Revert "ecore: here comes a env object" This reverts commit 2373d5db5b4cd5dfe139aa2a10017ef61b28b5ce. Revert "efl_task: remove env from this object" This reverts commit c3d69f66a69c0def357a5c373a13343e1c01ff5d.
2019-02-12ecore: here comes a env objectMarcel Hollerbach
the env object can be used to alter and edit the content of environment variables. Additionally, the class efl.core.env can be used to to setup a not applied set of environment variables, which then can be applied later (in the future) to set it directly to a spawned process for example, or as a general key/data storage. A efl.core.env object can also be forked off, which makes it easy to customize predefined objects. ref T7514 Differential Revision:
2018-12-14meson: fix build on power/ppc targets with altivec enabledDaniel Kolesa
2018-12-07meson: add inital support for windows compilationMarcel Hollerbach
Differential Revision:
2018-11-16meson - fix build on non-intel and correct cross compilationCarsten Haitzler (Rasterman)
don't set -msse3 unconditionally - set the correct flags based on architecture. now it builds on arm, aarch64 again as well as x86. sorry - can't test ppc as i have no such hardware. also use host_machine not target_machine. target is wrong that's only for cross compilers (if we were compiling a cross compiler and the kind of binary they may produce, not what they run on - that's host).
2018-11-16meson: cleanup the native-cpu optimization build codeMarcel Hollerbach
you were not able to disable the header checks, so if the header was not there it indicated that you could turn it of. However, the option check was in the has_header if not outside of it. Further more, header checks are done in the subdirectory that is done for header checks, unneccessary cpu_**** flags are removed, global optimization options are added to the global_arguments instead of just the package_c_args, which leads to the fact that also all binaries etc. are build by default with those optimization flags. This also reduces the amount of options to a minimum of 1 option, to just control if there should be the optimization or not. This also changes from host_maschine to target_mschine, since we probebly want to enable the optimization for the target maschine, not the host. Differential Revision:
2018-10-05meson: add sizeof checks for mesonMarcel Hollerbach
this fixes the building for systems where int and long does not have the same size. Differential Revision:
2018-10-02here comes mesonMarcel Hollerbach
a new shiny buildtool that currently completes in the total of ~ 4 min.. 1 min. conf time 2:30 min. build time Where autotools takes: 1:50 min. conf time 3:40 min. build time. meson was taken because it went quite good for enlightenment, and is a traction gaining system that is also used by other mayor projects. Additionally, the DSL that is defined my meson makes the configuration of the builds a lot easier to read. Further informations can be gathered from the README.meson Right now, bindings & windows support are missing. It is highly recommented to use meson 0.48 due to optimizations in meson that reduced the time the meson call would need. Co-authored-by: Mike Blumenkrantz <> Differential Revision: Depends on D7011