Re: A more mature build system for PARI

R J Cano <[email protected]>
Newsgroups gmane.comp.mathematics.pari.devel
Message-ID <CAFSmZyxYob7pYH9uNNpkC2pjUQ--+Cy6v-CBrRZTXkEHfPaOpg@mail.gmail.com>
i'm agree that the "old" build system we have is fine.

imho, it is quite more desirable than anything else. Highly customizable,
and widely supported in a stable way.... even for windows, i rather the
executables from headquarters and the PARIDroid apk for my mobile... and im
quite sure they're built strongly based on rhe current build system.

One experiment i dream to explore, consist of replacing standard GNU tools
with the Bellard's Tiny C compiler, just for fun and figuring out if im
capable of making it work. But i have to learn a bit more about both things
( notice here, i didn't mentioned changing internals of current system GP
calculator or PARI at design level, but instead of that, just did talk
about trying alternative compiling tools )

i think: things like that, are satellite projects and third party entities
can head to manage them... without touching the core build system ( Just a
guess ).

...

On Thu, 17 Aug 2023, 11:01 Charles Greathouse, <[email protected]>
wrote:

> It's my view that 20 years from now we will still have CMake and Autotools
> but lots of 'new' build systems will fall by the wayside in that time.
>
> On Thu, Aug 17, 2023 at 8:20 AM Bill Allombert <
> [email protected]> wrote:
>
>> On Sun, Aug 13, 2023 at 04:46:08AM +0000, John Scott wrote:
>> > Hi folks,
>> >
>> > I think PARI needs a standardized and well-respected build system
>> instead of
>> > the custom one. Right now the custom build system is inconvenient for
>> > downstream users like packagers, does not deal with corner cases like
>> cross
>> > builds well, and needlessly introduces an extra learning curve instead
>> of
>> > using a common solution.
>> >
>> > I'm interested in putting in the work to convert PARI to Meson. Meson is
>> > practically a standard with multiple competing implementations, and
>> it's very
>> > high-level, easy to learn, and designed for developers and packagers
>> first.
>> > Of course it also supports reproducible builds, cross compilation, and
>> has a
>> > sophisticated dependency management system that makes building for
>> platforms
>> > like Windows without package management just a little bit easier.
>> >
>> > If I write Meson support for PARI, would you consider merging it?
>> >
>> > I'm writing off Autotools and CMake since they're both too complex and
>> hard
>> > to learn; Autotools's documentation says that it's a design choice that
>> they
>> > put the needs of projects second, instead prioritizing downstream
>> builders.
>> > Autotools also generally entails shipping autogenerated files in your
>> > sources, which is a practice we hate in Debian since it's not truly
>> source,
>> > and in that way it doesn't belong in a VCS.
>>
>> Your last paragraph exactly explain why we prefer to keep our build
>> system.
>> (which is mature according to the dictionnary definition).
>> Every five years, there is a new build system that becomes trendy and then
>> we receive an email similar to this one.
>>
>> Breaking the user interface to the build system is just not worth the
>> trouble.
>> Requiring users to install more software to be able to compile PARI would
>> not
>> be a positive change.
>>
>> Shipping autogenerated files is a feature not a bug. For example, this is
>> helpful
>> on MacOS which ships a version of bison too old to build PARI.
>>
>> I maintain the Debian package which provide suitable compilation
>> instruction for
>> packager. I also maintain the CI which cross-compile PARI for Windows
>> every day,
>>
>> Cheers,
>> Bill.
>>
>>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.