Deutsch English Français Italiano |
<vqcsk7$23bfo$1@paganini.bofh.team> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!feeds.phibee-telecom.net!2.eu.feeder.erje.net!feeder.erje.net!newsfeed.bofh.team!paganini.bofh.team!not-for-mail From: antispam@fricas.org (Waldek Hebisch) Newsgroups: comp.lang.c,comp.lang.python Subject: Re: Python recompile Date: Thu, 6 Mar 2025 19:21:45 -0000 (UTC) Organization: To protect and to server Message-ID: <vqcsk7$23bfo$1@paganini.bofh.team> References: <vq1qas$j22$1@gallifrey.nk.ca> <vq3oag$18iv6$1@dont-email.me> <vq4hf2$1brf7$1@dont-email.me> <vq4l3d$1ck9e$1@dont-email.me> <vq4m0u$1ctpn$1@dont-email.me> <vq4n05$1d5dv$1@dont-email.me> <vq4om7$1dbo2$2@dont-email.me> <vq6dqh$1pskk$1@dont-email.me> <vq6f8p$1pmnk$1@dont-email.me> <vq6gqc$1qcp8$1@dont-email.me> <vq6ips$1pmnk$2@dont-email.me> <vq6j5h$1qosf$1@dont-email.me> <20250304092827.708@kylheku.com> <vq7g1p$1vmg5$1@dont-email.me> <vq94dt$2boso$1@dont-email.me> Injection-Date: Thu, 6 Mar 2025 19:21:45 -0000 (UTC) Injection-Info: paganini.bofh.team; logging-data="2207224"; posting-host="WwiNTD3IIceGeoS5hCc4+A.user.paganini.bofh.team"; mail-complaints-to="usenet@bofh.team"; posting-account="9dIQLXBM7WM9KzA+yjdR4A"; User-Agent: tin/2.6.2-20221225 ("Pittyvaich") (Linux/6.1.0-9-amd64 (x86_64)) X-Notice: Filtered by postfilter v. 0.9.3 Bytes: 4137 Lines: 54 In comp.lang.c Muttley@dastardlyhq.org wrote: > On Tue, 4 Mar 2025 18:16:25 +0000 > bart <bc@freeuk.com> wibbled: >>The CPython source bundle doesn't come with any makefiles. The first >>step appears to be to run a 35,000-line 'configure' script. Part of its > > Frankly any build system that has a 35K configure file needs revisiting. > No package is so complex as to require that much setup. OS specific code > should be dealt with some appropriate ifdefs in the source and libraries > and linking should be a few 10s of lines. > > Back in the day packages used to hve different preprepared Makefiles for > each system they could build on and IME that tended to work a lot better > than configure scripts that tried to figure things out on the fly. I remember times when source package came with README file saying edit this and that to configure for your system. Typically one had to edit Makefile and possibly something like config.h. For me it worked quite well. But those times are gone. Most people now do not know essential information about system they use, so are unable to provide sensible values. And modern programs are bigger and more complicated, so such hand editing is too much work for rare people capable of doing this. Per platform Makefile-s do not scale when one wants to support multiple system and multiple configurations (there is exponential growth of possible combinations). And even of single configuration for supposedly single system like Linux there are troubles. In one project there was someting like 20 Makefile.linux_x files where x represented one Linux flavour. Yet regularly somebody would come and say: "build fails on my Linux x.y.z". If enough information was provided new Makefile was added, or possibly some similar Makefile was modified to cover more cases. Those troubles mostly vanished when project switched to configure script. Now there is about 1500 lines of hand written code in configure machinery (biggest is 933 lines long configure.ac) and 8564 lines long generated configure script. Most build troubles is now gone or diagnosed early. Writing "diagnosed early" I mean that most user errors are detected quite early. For example, a lot of people try to compile program without having a C compiler. And when they have compiler they fail to install needed libraries (there is list which says what is needed but people fail to follow instructions). It is certainly silly when generated configure file is much bigger than actual program code. This happens frequently when lazy or brainwashed folks use automake (which apparently puts all checks that it knows into generated configure.ac). But Python have reasons to check for a lot of things, so the size is somewhat reasonable. -- Waldek Hebisch