kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #44325
Re: New Build Dependencies: Lemon + GTK3
-
To:
kicad-developers@xxxxxxxxxxxxxxxxxxx
-
From:
Wayne Stambaugh <stambaughw@xxxxxxxxx>
-
Date:
Mon, 3 Aug 2020 14:33:02 -0400
-
Autocrypt:
addr=stambaughw@xxxxxxxxx; prefer-encrypt=mutual; keydata= mQGiBEM0hxQRBAC2fNh3YOVLu1d5GZ0SbrTNldGiGnCJPLqzEnqFX9v6jmf33TMt6EmSLkl6 Wtfkoj0nVwKxcYmJkA8DX0QAokBkwNIzhSsBzQvthBLIk/5LnPVVKrEXOcL4mUyH1doKlkaE slgJozNa6Av+oavcvD02o1zJOloBbaHlNlyRt7fKswCgtIFlVjWggVH/15KfWk+Qo5JVPbME AIUBAQyL2OAx0n60AWec2WHnO9buHuG0ibtICgUMkE+2MRmYyKwYRdyVwGoIUemFuOyHp0AJ InX4T+vy2E7vkwODqjtMLfIoRkokW74Fi4nrvjlhOAw/vdq/twLbAmR9MOfPTpR4y7kQy1O2 /n+RkkRvh26vTzfbQmrH7cBJhk6aA/9Uwvu3E4zNJgHVZeS0HyWtmR1eOPPRbnkPgJTToX5O KMKzTJI/FX6kT7cFoCamitHrW3BJP4Dx+cMMsa47EGxqVTdbVJ4LjogsXTXxb+0Fn1u4zBdx x3Cer6O7+hqWy7zvpzeC6nSREjqDKa5CgHtv/GLm5uFPOmsjAsnHj2tlBrQmV2F5bmUgU3Rh bWJhdWdoIDxzdGFtYmF1Z2h3QGdtYWlsLmNvbT6IeAQTEQIAOBYhBOffs6CbblRzBkv33BtR cWlZ+CReBQJbFBS2AhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEBtRcWlZ+CReMI8A nRbrLkzp7+c2f0vX7sfg4ICX8LAKAJ9uClo4uJajmZa5zZrL2nKdZlUwIrkCDQRDNIcxEAgA gCru+3/aOC6RCjpvYC72wY+d5SmHphC6yeiV2/mOumyt5MLo/Ps2GznZr11JspqFk5K/Zpvp MMLqqjDZ39+50a2iKRQFJ6NlK+hJWMmj6eJygQrCwYo3Gjc6CqfrqUv+8VSnf/i5sIZmtOVA 4ZjML18MuBvMSsNdVLFJd5HNnYb1iOECpvqdPVh/21LLCEw7MUUGGnHBhCrmk2aJe5hFmcSN g4ldBcXrgMQBwf7aMVoobXBMFDb/IENByXn0llB7Gr2IFMRmNS9/p8s/II1Yl2bTqyX4FSz8 cfn7C9KEz7faZ7wzAcpwHFC/zs3JoAjJ0IEKdNUpIwAlKMzT3CzctwADBQf/cxpG28MKyrqk nNmq/8LQLy+x6FSYXBLjxQz9BiBNYeesDZQ6J5UbL1mjpJzMa5tLZypPYo4bbGyR22hrbyDF K7m6AcVaMIJKl98g4ukMutFfAJyRDaREH5Zl/X1P4u1Z/yaAIy9mKaNbaK1/5djNJ5wCTFen TUgAp9xdc30kGkFDdLJFp5uxDY4P0vaZiZdjUCvDM3Zjv5IzpNOfxVqTUBQNUP/BnnKhkk0p DTD6s3X8S+D0rOtEBQ8K0cwERI/E8EFa8nj0TNw4e2MYGR8wg+SxqJ7z5f0zPY0bO6G9DDFB wYCqzzPWGqdAh9vA5971TAbPERtdFybhkurozp2SfYhJBBgRAgAJBQJDNIcxAhsMAAoJEBtR cWlZ+CResHUAniULLCWiT26ieRTl7N2vS6vBo/DuAJ4m7Ss/gyiW6ybTn1ctDXAUgm2QVQ==
-
In-reply-to:
<CAFT4xpj83dg4znNZuyvzi8MWe-JhRPPsTHinwca_bWjWX2LN1w@mail.gmail.com>
-
User-agent:
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0
Just a reminder for developers, this should have happened before any new
dependency was even pulled into KiCad and not resolved after the fact.
If we ran into a situation where we had to spend a lot of time fixing
lemon or could not build it on a given platform, we would be force to
revert all the code that depended on it or write our own solution.
On 8/3/20 1:54 PM, Roberto Fernández Bautista wrote:
> Thanks for that Ian - that sounds great! Definitely a much cleaner
> solution. Did you create a separate branch for this change or is it in
> master?
>
> Thanks.
>
>
>
> On Mon, 3 Aug 2020 at 18:40, Ian McInerney <Ian.S.McInerney@xxxxxxxx
> <mailto:Ian.S.McInerney@xxxxxxxx>> wrote:
>
> 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
> <mailto: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 <mailto: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
> <mailto: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
> <mailto: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
> <mailto: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
> <mailto: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
> <mailto: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
> <mailto: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
> <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help : https://help.launchpad.net/ListHelp
>
>
>
> --
> Mark
>
>
>
> --
> Mark
>
>
> _______________________________________________
> 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
>
References