From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/signed; protocol="application/pgp-signature"; micalg=pgp-sha1; boundary="Apple-Mail-3-103062923" Mime-Version: 1.0 (Apple Message framework v1082) From: "Gary V. Vaughan" In-Reply-To: <4CDFBF0D.1060604@gmx.net> Date: Mon, 15 Nov 2010 11:29:51 +0700 Content-Transfer-Encoding: 7bit Message-Id: <2972B139-9F41-4F6F-B906-7249E0B5CCCF@vaughan.pe> References: <703b2539-027e-4f9f-a739-00b59f6d3d82@v28g2000vbb.googlegroups.com> <20101113192425.GC22589@nibiru.local> <20101114091030.GA793@polynum.com> <4CDFBF0D.1060604@gmx.net> To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Subject: Re: [9fans] Plan9 development Topicbox-Message-UUID: 7e7adac0-ead6-11e9-9d60-3106f5b1d025 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --Apple-Mail-3-103062923 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii On 14 Nov 2010, at 17:50, Carl-Daniel Hailfinger wrote: > On 14.11.2010 10:10, tlaronde@polynum.com wrote: >> Furthermore, the auto* and libtool were typically made >> for trying to do something "working" to some extend with a chaotic >> source. They typically manage to compile "things" written by >> programmers who have been encouraged to look at the finger ignoring >> the moon: to concentrate on the "GNU" tools and "GNU" libraries >> etc, and not on C89 (or C99), POSIX etc. >> > > Heh. Pure C99 code (with no GNU extensions or OS specific stuff > whatsoever) doesn't compile with pcc unless you avoid some of the really > useful features and some of the standard headers. I can quote the C99 > standard if you doubt this. Even then, many vendor compilers and linkers have many non-conformances, and outright bugs. Take a look at the number of workarounds that make their way into gnulib to cover breakage in the POSIX APIs alone. You can either try to remember what all of those are, or use something like autoconf to probe for known bugs, and gnulib to plug them, or you can link against a shim library like GNU libposix which will do all of that automatically when it is built and installed, allowing you to write to the POSIX APIs with impunity. > I have successfully avoided using autoconf and similar stuff in my > projects by adhering to strict C99, but in an ironic twist of fate, Plan > 9 will be the OS that forces me to use something like autoconf due to > the limited C99 support. And sadly, there is a good chance that your blind faith in having fully conformant APIs would come unstuck quite quickly if your code needed to work on a large selection of commercial UNIX releases (assuming you didn't code around all of those shortcomings in each of your projects that is). Plan 9 is far from alone in having limited C99 and POSIX API support. Cheers, -- Gary V. Vaughan (gary@gnu.org) --Apple-Mail-3-103062923 content-type: application/pgp-signature; x-mac-type=70674453; name=PGP.sig content-description: This is a digitally signed message part content-disposition: inline; filename=PGP.sig content-transfer-encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (Darwin) iEYEARECAAYFAkzgtz8ACgkQFRMICSmD1gZ2PACeMXUEldWClkk8OIFVVEA9LL15 0ggAnifyhp/G4TC8LVFEPZw6Fe+1bDAG =TTrI -----END PGP SIGNATURE----- --Apple-Mail-3-103062923--