Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!seismo!husc6!cmcl2!brl-adm!brl-smoke!gwyn From: gwyn@brl-smoke.ARPA (Doug Gwyn ) Newsgroups: comp.bugs.4bsd,comp.unix.wizards Subject: Re: 4.3BSD stdio.h - sprintf() definition Message-ID: <6137@brl-smoke.ARPA> Date: Fri, 17-Jul-87 22:19:46 EDT Article-I.D.: brl-smok.6137 Posted: Fri Jul 17 22:19:46 1987 Date-Received: Sat, 18-Jul-87 17:54:31 EDT References: <521@quacky.UUCP> <526@quacky.UUCP> Reply-To: gwyn@brl.arpa (Doug Gwyn (VLD/VMB)) Distribution: world Organization: Ballistic Research Lab (BRL), APG, MD. Lines: 18 Xref: mnetor comp.bugs.4bsd:452 comp.unix.wizards:3293 In article <526@quacky.UUCP> dce@quacky.UUCP (David Elliott) writes: >Personally, I have a lot of problems with programs where people >put in #ifdefs based on hardware types when the #ifdef should >be based on something else. A good example (sorry Doug) is when >I ported the BRL System V package to the MIPS system and found >that some of the #ifdefs for "vax" applied (overall system >architecture, usually vs. pdp11) and some didn't (byte order, ... I too have a lot of hassle because of these issues when porting software. The problem as I see it is that there isn't a standard list of attributes, so one needs to establish standards for one's own software to treat these orthogonal attributes independently. Unfortunately much existing software treats the system type as the only selector. Most of that cruft in the BRL UNIX System V emulation was simply inherited from the original AT&T code; I didn't have time to thoroughly overhaul everything. Our latest shell sources, however, are almost free of this kind of conditionalization. Recent AT&T SGS packages also are much better about these things. Maybe there's hope!