> > Is it possible to tell configure that I have an arbitrary C89 > > environment, and it's none of its business what the name > > of my C compiler is or what operating system it is, just > > assume it is a C89 environment and act accordingly? > > Sorry, that functionality isn't there now. Demand for such > an ability is small, since Autoconf is oriented towards > build environments where you can easily run a compiler. That's a shame. Can I put that in as a feature request? > > My arbitrary C89 environment happens to be on MVS 3.8. > > I don't have the ability to run "configure" myself, but I know > > someone who can run "configure" for me and send me the > > output files. But they come with non-C89 rubbish > > I guess I don't understand the problem then. If someone > else can run "configure" for you, and if the "configure" > output is suitable for MVS 3.8, then why do you care whether > the resulting program uses features of MVS 3.8 that are > beyond what C89 requires? The configure output is not suitable for MVS 3.8. The configure output is suitable for his environment, not mine. > Here's another way to put it. Few programs are really > portable to all C89 hosts without any change. But if you > have such a program, then you don't need Autoconf, so why > use Autoconf? Programs such as gcc with -S option read in text files and output another text file. It should be possible to write that in C89. I have modified gcc 3.2.3 so that it is is C89 compliant, in preparation for porting to an enviornment that is C89 with no extensions whatsoever. It is successful BTW, I have gcc running on MVS 3.8. My problem is I want configure to generate a corresponding config.h that assumes C89, ie automatically sets HAVE_STDLIB_H to 1 etc etc. > > More generally, I want to be able to specify: > > > 1. Arbitrary C89 environment. > > 2. Arbitrary C99 environment. > > 3. Arbitrary Posix environment. > > That's not general enough, I'm afraid. There are multiple > flavors of C89 (with and without amendment 1, hosted vs > freestanding, etc.), and the same will be true for C99. And > there are thousands of flavors of POSIX. The sort of checks that configure does can easily be answered with reference to the C89/C90 standard. E.g. stdlib.h is there. sys/types.h isn't. malloc() works. etc, etc etc. Similarly there is a Posix standard, where sys/types does exist. Configure can answer all these questions by itself, it doesn't need to check my environment. It's enough to be told that it is Posix. > It is kind of a mess. (Which is why we have Autoconf -- a > mess of a different sort. :-) What I want is for programs to come out of the box as C89 compliant. Unfortunately they usually come out of the box with config.h missing. It wouldn't be so bad if configure would generate a C89-compliant config.h. Annoying, but no so bad. Or if it does directory manipulation, then come out of the box as Posix-compliant. BFN. Paul. _______________________________________________ Autoconf mailing list Autoconf@xxxxxxx http://lists.gnu.org/mailman/listinfo/autoconf