There was segfault on

[ 88%] Generating src/lib/eo/efl_object.eo.c, src/lib/eo/efl_object.eo.h

I think autotools-generated files somehow interfere with cmake build, 
but this doesn't matter.
After git clean build works fine(eina, eolian, eo, test).


On 25.01.17 12:22, marcel-hollerb...@t-online.de wrote:
> Hello,
>
> i am sorry for the wrong minum-version number. I think 3.0.2 is enough,
> since we are using LINK_PRIVATE and LINK_PUBLIC.
>
> What error messages are you getting?
>
> Greetings
>     bu5hm4n
>
> On Wed, Jan 25, 2017 at 12:10:38PM +0200, Andrii Kroitor wrote:
>> Hello
>>
>> I'm very excited to see steps towards CMake :)
>> Is there any reason to limit minimum version to 3.7? Current unbuntu
>> release has cmake version 3.5.1 included.
>> Looks like with 3.5 cmake step passes ok, but build fails on eo files
>> generation. I'm wondering if it is because of some missing cmake
>> features or simply because work is in progress.
>>
>>
>> On 20.01.17 01:17, Gustavo Sverzut Barbieri wrote:
>>> Hi all,
>>>
>>> Marcel Hollerbach did a nice work and started a branch 
>>> devs/bu5hm4n/cmake-port
>>>
>>> After some review, I shared my experience with CMake and did a
>>> complement trying to simplify it: devs/barbieri/cmake
>>> (https://git.enlightenment.org/core/efl.git/log/?h=devs/barbieri/cmake)
>>>
>>> As you can see, complexities are hidden from the user using some
>>> macros/functions defined in cmake/helper/EflMacros.cmake
>>>
>>> At the toplevel directory you simply say: EFL_LIB(eina)
>>>
>>> Then the macro will include whenever appropriate
>>> src/{lib,bin,modules,tests}/eina and do the right action. You can see
>>> from sub-CMakeLists.txt how simple they become, basically define some
>>> variables (which makes it simpler for us to change to a new build
>>> system next time).
>>>
>>> There are some restrictions in that, which I'd like to keep and
>>> instead of work-around in the build system, change the code to reflect
>>> that:
>>>
>>>    - one library per directory, offenders are efreet_mime/efreet_thrash
>>> and possibly others;
>>>
>>>    - modules should install
>>> ${libdir}/${libname}/modules/${scope}/${modname}/v-${VMAJ}.${VMIN}/module.so,
>>> currently some libs miss "/modules", like ecore/system
>>>
>>> If you want to try it out, be aware that binaries are still not
>>> handled and eina_suite still doesn't work. And I'm forcing out-of-tree
>>> builds, so we fix that for once and for all:
>>>
>>>      mkdir -p build && cmake -H. -Bbuild && cd build && make
>>>
>>> To address raster's complains about hard targets and so on:
>>>
>>>      make eina
>>>
>>> builds eina checking dependencies, while:
>>>
>>>      make eina/fast
>>>
>>> doesn't check dependencies, this is in GNU Make. Ninja doesn't offer such 
>>> rule.
>>>
>>> I'm also offering targets for modules and tests:
>>>
>>>      make eina-tests
>>>      make eina-modules
>>>
>>> Everything should be placed in build/lib, build/bin and so on, so it
>>> will mimic the system installation and eina_prefix should be able to
>>> work (we're still missing the 'checkme' files).
>>>
>>> Although I know cmake from my years-ago usage, I'm not an expert that
>>> works with it every day, thus review of the CMake, particularly the
>>> macros is very helpful.
>>>
>>> >From an user (EFL developer that doesn't mess with build system) point of 
>>> >view:
>>>
>>>     - library configuration checks and options (cmake/config/eina.cmake):
>>> https://git.enlightenment.org/core/efl.git/tree/cmake/config/eina.cmake?h=devs/barbieri/cmake&id=c15eca03344e9bc1e602769c4af6e3c2ae2cc405
>>>    The idea is to isolate these complexities from source/headers as very
>>> few people will need to look at configure, but most developers need to
>>> touch file list.
>>>
>>>     - library sources, headers (src/lib/eina/CMakeLists.txt):
>>> https://git.enlightenment.org/core/efl.git/tree/src/lib/eina/CMakeLists.txt?h=devs/barbieri/cmake&id=c15eca03344e9bc1e602769c4af6e3c2ae2cc405
>>>
>>>    - library module (src/modules/eina/mp/pass_through/CMakeLists.txt):
>>> https://git.enlightenment.org/core/efl.git/tree/src/modules/eina/mp/pass_through/CMakeLists.txt?h=devs/barbieri/cmake&id=c15eca03344e9bc1e602769c4af6e3c2ae2cc405
>>>
>>>    - library unit tests (src/tests/eina/CMakeLists.txt):
>>> https://git.enlightenment.org/core/efl.git/tree/src/tests/eina/CMakeLists.txt?h=devs/barbieri/cmake&id=c15eca03344e9bc1e602769c4af6e3c2ae2cc405
>>>
>>> As you can see these files are very small, they basically define
>>> SOURCES, HEADERS, DEPENDENCIES, LIBRARIES... variables and these are
>>> used to execute CMake specific targets, set properties, etc.
>>>
>>> If we can settle on one-lib-per-dir, then we can even simplify those
>>> and remove ${libname}_ prefix, as done by modules we could specify
>>> SOURCES instead of eina_SOURCES.
>>>
>>>
>> -- 
>> *Best Regards,
>> Andrii Kroitor
>> * Engineer, Tizen Platform Lab
>>
>> Samsung R&D Institute Ukraine
>> 57, Lva Tolstogo St., Kyiv 01032, Ukraine
>> email: an.kroi...@samsung.com <mailto:an.kroi...@samsung.com>
>>
>>
>> ------------------------------------------------------------------------------
>> Check out the vibrant tech community on one of the world's most
>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>> _______________________________________________
>> enlightenment-devel mailing list
>> enlightenment-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
> _______________________________________________
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
>

-- 
*Best Regards,
Andrii Kroitor
* Engineer, Tizen Platform Lab

Samsung R&D Institute Ukraine
57, Lva Tolstogo St., Kyiv 01032, Ukraine
email: an.kroi...@samsung.com <mailto:an.kroi...@samsung.com>


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to