From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,80ae596d36288e8a X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII Path: g2news2.google.com!news4.google.com!feeder1-2.proxad.net!proxad.net!feeder2-2.proxad.net!newsfeed.arcor.de!newsspool4.arcor-online.net!news.arcor.de.POSTED!not-for-mail From: "Dmitry A. Kazakov" Subject: Re: Make, Automake, Configure, Autocong, GPRbuild etc Newsgroups: comp.lang.ada User-Agent: 40tude_Dialog/2.0.15.1 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit Reply-To: mailbox@dmitry-kazakov.de Organization: cbb software GmbH References: <9cb23235-8824-43f4-92aa-d2e8d10e7d8c@ct4g2000vbb.googlegroups.com> <4ddb5bd7$0$302$14726298@news.sunsite.dk> <4ddb81b8$0$7628$9b4e6d93@newsspool1.arcor-online.net> <87aaeban8a.fsf@ludovic-brenta.org> <8762ozahib.fsf@ludovic-brenta.org> <871uznaczz.fsf@ludovic-brenta.org> <015e3d6a-772a-41f8-a057-49c8b7bd80e1@w21g2000yqm.googlegroups.com> <4MednVYCXuUZQEHQRVn_vwA@giganews.com> <6d913128-402e-47cc-ae3e-273b65198507@n10g2000yqf.googlegroups.com> <0fa361b8-3e13-4656-9ca9-786dcc8aceef@h36g2000pro.googlegroups.com> <87ipsx8nem.fsf@ludovic-brenta.org> <82r57k74d8.fsf@stephe-leake.org> <12bp94g7j8v7k.d1ivuuyvwofm$.dlg@40tude.net> <57dd5b82-741b-400a-a279-aff6282458f6@16g2000yqy.googlegroups.com> Date: Fri, 27 May 2011 15:10:35 +0200 Message-ID: NNTP-Posting-Date: 27 May 2011 15:10:35 CEST NNTP-Posting-Host: 838f3e56.newsspool1.arcor-online.net X-Trace: DXC=da07[OG9CdoFXUDVUnEXQmic==]BZ:afn4Fo<]lROoRa<`=YMgDjhgbmo;P;OKo^>g[6LHn;2LCVn7enW;^6ZC`d\`mfM[68DCch=j9HI6^JKl X-Complaints-To: usenet-abuse@arcor.de Xref: g2news2.google.com comp.lang.ada:20490 Date: 2011-05-27T15:10:35+02:00 List-Id: On Fri, 27 May 2011 05:49:26 -0700 (PDT), Ludovic Brenta wrote: > Dmitry A. Kazakov wrote on comp.lang.ada: >> On Fri, 27 May 2011 07:46:43 -0400, Stephen Leake wrote: >>> Ludovic Brenta writes: >>>> Adam Beneschan writes on comp.lang.ada: >>>>> Ludovic Brenta wrote: >>>>>> Yannick Duch�ne wrote on comp.lang.ada: >>>>>>> Peter C. Chapin a �crit: >>>>>>>> It also true that autoconf is a travesty... a throwback to a >>>>>>>> darker age when the POSIX standard did not exist (or at least >>>>>>>> was not widely implemented). >>>>>>> >>>>>>> I do not know that much about Autoconf, so I can't really >>>>>>> understand what that mean and implies (someone else here >>>>>>> also say a bit the same as you too). >>>>>> >>>>>> Make was invented to overcome the deficiencies of C, notably >>>>>> the lack of modular programming and dependency management. >>>>>> >>>>>> Automake was invented to overcome the deficiencies of make, >>>>>> notably the poor maintainability of Makefiles. >>>>>> >>>>>> Configure was invented to overcome the deficiencies of early >>>>>> UNIX systems, notably the lack of conformance to POSIX, and >>>>>> their impact on the maintenance of Automake files. >>>>>> >>>>>> Autoconf was invented to overcome the deficiencies of >>>>>> Configure, notably the sheer size and horror of the configure >>>>>> scripts, which routinely consist of hundreds of thousands of >>>>>> lines of illegible POSIX shell code. >>>>> >>>>> I was going to ask what was the invention to overcome the >>>>> deficiencies of autoconf, but I think I figured it out ... >>>>> rm -rf, right? >>>>> >>>> Opinions differ but I'd tend to side with you :) >>> >>> No! Ada and gprbuild :) we finally got it right :) >> >> No, it was only one step forward. There are still mseinstall, >> rpmbuild, dpkg mess around there. > > I think it is appropriate to separate the building of the binary > software from the packaging for a particular target platform. For > starters, the author of the software does not necessarily have access > to all target operating systems. The package maintainer requires > intimate knowledge of the target operating system, its package > management system, its policies, the names of existing packages, etc. Exactly why the things I mentioned are garbage. Why such an intimate knowledge is needed for packaging and is no more needed for building binaries? Why intimacy of system directories is more intimate than privacy of machine instructions, object and binary formats? > These are different concerns best addressed by different build > systems. The things you mentioned (mseinstall, rpmbuild, dpkg) > naturally sit on top of the build system provided as part of the > software source distribution. I don't think they should be merged. Not merged, abstracted away, packaging is a trivial concept comparing to compilation, optimization and linkage. UNIX tools are so complicated, because it is a long standing tradition to have it as broken as possible. If C, make, autoconf & Co. are that bad, why dpkg should be any better? -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de