[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Build system considerations
From: |
Vincent Torri |
Subject: |
Re: Build system considerations |
Date: |
Mon, 18 May 2020 10:21:08 +0200 |
On Mon, May 18, 2020 at 8:44 AM David Turner <address@hidden> wrote:
>
>
>
> Le dim. 17 mai 2020 à 21:47, Nikolaus Waxweiler <address@hidden> a écrit :
>>
>> First off: all of this sounds fantastic! I always love when stuff is deleted
>> :)
>>
>> > In the end, and this is personal opinion, I find Meson cleaner than CMake,
>>
>> I'd vote for removing CMake support. Its inofficial status means that
>> people shouldn't rely on it anyway, even if there inevitably are
>> people that do.
>>
>
> I think providing a CMakeLists.txt that can be used directly to compile
> FreeType as a sub-project in a CMake-based project is still a very useful
> thing.
> As well as a FindFreeType.cmake or FreeTypeConfig.cmake module to be
> installed to make the system library available.
>
> But that's just for the core library. I.e. the ability to build
> documentation, install the library, or create distribution packages in CMake
> are probably superfluous.
> I hope to see something like the following for the future:
>
> - Meson as the primary build system for FreeType developers, which includes
> the ability to run tests, sanitizers, coverage analysis, etc.
> - Creating a distribution package should ensure the result supports
> config/make and CMake out of the box to build a default configuration of the
> library (with regards to features/modules, not external dependencies). The
> meta-build script would be useful for this.
> - The distribution package should probably only contain what's needed to
> build the library, and not all the extra tests we may use during development
> (maybe we can separate them with git submodules, I don't know yet).
> - A developer that wants to use FreeType with a different module/feature
> configuration would have to generate a new version of ftconfig.h/ftoption.h
> and use that in his/her own build system.
>
> But as I said, baby steps, so let's not throw CMake support just yet.
>
> By the way, I've compared the size of the stripped libfreetype.so binaries
> created by the 3 build systems:
>
> default: 712 KiB
> CMake: 812 KiB
> Meson: 896 KiB
>
> All generated on Linux from the same sources with the same ftconfig.h /
> ftoption.h (in particular with all external dependencies enabled), and with
> -fvisibility=hidden enabled for all of them.
> I don't understand why there is such a large differenc yet.
have you passed --strip to meson call ?
pass -v to ninja for verbose mode to see the differencies between make and ninja
regards
Vincent Torri
- Re: Build system considerations, Albert Astals Cid, 2020/05/01
- Re: Build system considerations, David Turner, 2020/05/17
- Re: Build system considerations, Nikolaus Waxweiler, 2020/05/17
- Re: Build system considerations, Werner LEMBERG, 2020/05/18
- Re: Build system considerations, Hugh McMaster, 2020/05/19
- Re: Build system considerations, Alexei Podtelezhnikov, 2020/05/19
- Re: Build system considerations, Ben Wagner, 2020/05/19
- Re: Build system considerations, Alexei Podtelezhnikov, 2020/05/19
- Re: Build system considerations, David Turner, 2020/05/20
Re: Build system considerations, Timo Suoranta, 2020/05/17
Re: Build system considerations, Behdad Esfahbod, 2020/05/18