emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [feature/native-comp] breakage on build


From: Óscar Fuentes
Subject: Re: [feature/native-comp] breakage on build
Date: Sun, 07 Feb 2021 20:38:00 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

Phillip Lord <phillip.lord@russet.org.uk> writes:

>> Maybe your dependency list would benefit from some review. Just show it.
>
> I just said "ruby" as it appeared in the corner of my eye.
>
> The full dependency list is this:
>
> mingw-w64-x86_64-giflib
> mingw-w64-x86_64-gnutls
> mingw-w64-x86_64-harfbuzz
> mingw-w64-x86_64-jansson
> mingw-w64-x86_64-lcms2
> mingw-w64-x86_64-libjpeg-turbo
> mingw-w64-x86_64-libpng
> mingw-w64-x86_64-librsvg
> mingw-w64-x86_64-libtiff
> mingw-w64-x86_64-libxml2
> mingw-w64-x86_64-xpm-nox
>
> I notice that it's missing gmp which I think it should have although
> it's gets it transitively. On native-comp this also needs:

gmp is a dependency of gcc-libs, and gcc-libs is a dependency of almost
every other package that contains binary executable code.

> mingw-w64-x86_64-libgccjit

That depends on gcc, and MSYS2 gcc includes C++ plus quite a few package
dependencies. No wonder that the final result uses so much disk space.

>> The route of creating an MSYS2 binary package (well, two, if you wish to
>> support i686) is as easy as it gets: create the package (I can help you
>> with it if the current PKGBUILD for mingw-w64-emacs-git in
>> https://github.com/msys2/MINGW-packages-dev/tree/master/mingw-w64-emacs-git
>> needs work). Then instruct the users to install MSYS2, download your
>> binary package and install it with pacman (copy and paste a command on
>> the MSYS2 shell). The most difficult step is to create a desktop icon
>> for runemacs.exe, which can be manually accomplished on the usual way
>> (and we used to have a tool for that, IIRC). That's about two minutes of
>> attended work.
>
>
> I was thinking of doing it the other way up. We install Emacs as now
> (either unzipping or using the installer). Then, Emacs runs, detects the
> first run and says "do you want to install msys2 also". If it does, then
> away we go, otherwise, we leave as is -- an editor rather than a pilot
> of multiple tools.

One caveat with this approach is that you can end (you *will* end) with
two copies of the same dependencies on two places, for the dependencies
that you put on Emacs' zip distribution.

> My original though was to bundle this into the install, but having done
> a little bit of picking, I think a better solution would be to have the
> first run of Emacs install a package from ELPA, which would actually do
> the msys install.

This is easier said than done :-)

>> Oh, and we still miss some dependencies, like `find'. But that can be
>> added too, once we (the MSYS2 contributors) check that it will not break
>> other things.
>>
>> Oh-2, currently MSYS2's Emacs does not install some things (e/ctags,
>> IIRC) because there are better alternatives on the repository.
>
> And some critical things, like git which is not available as a mingw64
> package; I have knocked together an mingw package for it; I have no idea
> whether the msys2 maintainers would be interested in it.

Do you have a PKGBUILD? Send me a copy and I'll look at it.

> Are you interested in helping with something along these lines? I have
> only so much time to give to Emacs and it will take me sometime to get
> any of this done. If so, we can write up a slightly more detailed plan.

I can help with the MSYS2/MinGW-w64 part asking questions, dealing with
the MSYS2 maintainers and other short-term tasks. It would be
disingenuous from me to offer my assistance for implementing those
elaborated plans you have, but I will take a look at wathever you send
to me or publish here.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]