← Back to team overview

kicad-developers team mailing list archive

Re: New Build Dependencies: Lemon + GTK3

 

I have now updated this so that we bundle the lemon parser code inside
thirdparty and build it for ourselves (it is only 1 main c file that was
released into the public domain). CMake then takes care of all the pathing
for the template and executable file for the targets. This should work on
all platforms now with no extra steps. It also means that there is no need
to install lemon on dev computers anymore.

-Ian

On Sun, Aug 2, 2020 at 11:46 PM Mark Roszko <mark.roszko@xxxxxxxxx> wrote:

> LOL, "lemon" in VCPKG is not Lemon the grammar generator, it's Lemon the
> boost graph library.
>
> And lemon grammar itself, isn't a real library. It's a single C file. It's
> very unlikely to be accepted into vcpkg.
>
> We may as well just build it on the fly in kicad
> https://www.sqlite.org/src/file/tool/lemon.c
>
>
> On Sun, Aug 2, 2020 at 6:37 PM Mark Roszko <mark.roszko@xxxxxxxxx> wrote:
>
>> MSVC support is a work in progress so it's not that its not supported,
>> it's just someone needs to fix it ;)
>>
>> On Sun, Aug 2, 2020 at 6:06 PM Roberto Fernández Bautista <
>> roberto.fer.bau@xxxxxxxxx> wrote:
>>
>>> Just tried your branch and unfortunately couldn't get it to compile on
>>> Visual Studio (even after a "vcpkg install lemon:x64-windows" and "vcpkg
>>> integrate install")... I got the cmake error "lemon not found"
>>>
>>> I know Visual Studio isn't officially supported but any ideas what I
>>> could do to install lemon correctly so visual studio/ cmake can recognise
>>> it?
>>>
>>> Thanks
>>>
>>> Roberto
>>>
>>> On Sun, 2 Aug 2020 at 22:06, Ian McInerney <Ian.S.McInerney@xxxxxxxx>
>>> wrote:
>>>
>>>> Yes, I have a branch on my fork [1] called "im/lemon" that can be used.
>>>> It can be found here:
>>>> https://gitlab.com/imcinerney/kicad/-/tree/im/lemon. If the build
>>>> passes with that, it means lemon integration is working. CMake should error
>>>> during configuration if the lemon executable can't be found
>>>>
>>>> -Ian
>>>>
>>>> [1] https://gitlab.com/imcinerney/kicad
>>>>
>>>> On Sun, Aug 2, 2020 at 10:01 PM Adam Wolf <
>>>> adamwolf@xxxxxxxxxxxxxxxxxxxx> wrote:
>>>>
>>>>> Is there a branch packages can use to make sure their lemon
>>>>> integration is working?
>>>>>
>>>>> On Sun, Aug 2, 2020, 4:00 PM Ian McInerney <Ian.S.McInerney@xxxxxxxx>
>>>>> wrote:
>>>>>
>>>>>> Two new build-time dependencies are being added to the master branch
>>>>>> for v6:
>>>>>> * lemon - The lemon parser generator
>>>>>> * GTK3 (linux only) - the GTK3 libraries (only GTK3, not GTK2 - that
>>>>>> is not supported anymore). This is technically also a runtime dependency,
>>>>>> but we also need GTK3 for wxWidgets, so it shouldn't be a new runtime dep
>>>>>> (only needing the build headers are new).
>>>>>>
>>>>>> The lemon parser is needed to fix
>>>>>> https://gitlab.com/kicad/code/kicad/-/issues/5013 by changing how
>>>>>> the files are generated (in MR
>>>>>> https://gitlab.com/kicad/code/kicad/-/merge_requests/318). GTK3 is
>>>>>> needed to enable new functionality inside the platform-specific
>>>>>> KIPLATFORM library for Linux (such as overriding menu settings, moving
>>>>>> files to trash, etc.)
>>>>>>
>>>>>> All developers should make sure they have these new dependencies
>>>>>> installed, and nightly builds should add them to their build script (Steve,
>>>>>> thanks for updating Fedora's so quick!) I have opened issue on GitLab for
>>>>>> the builders on there:
>>>>>> https://gitlab.com/kicad/packaging/kicad-win-builder/-/issues/101
>>>>>> https://gitlab.com/kicad/packaging/kicad-mac-builder/-/issues/332
>>>>>>
>>>>>> https://gitlab.com/kicad/packaging/kicad-ubuntu-builder/kicad-daily-package/-/issues/2
>>>>>>
>>>>>> I haven't merged any code into master that needs them yet, but I
>>>>>> would like to merge the lemon fix as soon as possible (the problem it is
>>>>>> solving has attracted increased attention it seems).
>>>>>>
>>>>>> -Ian
>>>>>> _______________________________________________
>>>>>> Mailing list: https://launchpad.net/~kicad-developers
>>>>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>>>>> More help   : https://help.launchpad.net/ListHelp
>>>>>>
>>>>> _______________________________________________
>>>> Mailing list: https://launchpad.net/~kicad-developers
>>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>>> More help   : https://help.launchpad.net/ListHelp
>>>>
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~kicad-developers
>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>> More help   : https://help.launchpad.net/ListHelp
>>>
>>
>>
>> --
>> Mark
>>
>
>
> --
> Mark
>

Follow ups

References