This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
Ruth, >Date: Fri, 26 Sep 2003 13:17:11 -0400 >From: Ruth Platner <address@hidden> >Organization: University of Rhode Island >To: Steve Emmerson <address@hidden> >Subject: Re: 20030926: udunits and fortran Mac OSX 10.2. The above message contained the following: > I attached the man page, but here's the part of interest. > > -M Instead of outputting the result of preprocessing, > output a rule suitable for make describing the depen- > dencies of the main source file. The preprocessor > outputs one make rule containing the object file name > for that source file, a colon, and the names of all > the included files, including those coming from > -include or -imacros command line options. > > Unless specified explicitly (with -MT or -MQ), the > object file name consists of the basename of the > source file with any suffix replaced with object file > suffix. If there are many included files then the > rule is split into several lines using \-newline. The > rule has no commands. > > -MM Like -M but do not mention header files that are found > in system header directories, nor header files that > are included, directly or indirectly, from such a > header. > > This implies that the choice of angle brackets or dou- > ble quotes in an #include directive does not in itself > determine whether that header will appear in -MM > dependency output. This is a slight change in seman- > tics from GCC versions 3.0 and earlier. > > MM and M give the same result on this Mac, I tried them both. It appears from your previous email that cc(1) is interpreting "-M" as if it was "-MM". This is the cause of the problem. Is there another, more standard, C compiler that you could use? > I did try replacing > the angle brackets with double quotes and then I got this output > > [d102-246:src/port/misc] monyoung% more conftestpath.c > #include "stddef.h" > [d102-246:src/port/misc] monyoung% cc -M conftestpath.c > conftestpath.o: conftestpath.c stddef.h /dev/null udposix.h > > > Ruth Regards, Steve Emmerson