[comp.sys.apollo] Apollo C Preprocessor and Make

kjb@zycad.UUCP (Kevin Buchs) (11/07/87)

The output of the preprocessor on Apollo gives the pathnames of included
files which are within the same directory with a leading dot, but with
out a slash following that.  For example, it puts out:

	# 1 ".pin_list.h"

Where other systems might give:

	# 1 "./pin_list.h"

These are certainly different pathnames.  Even more interesting is the
behavior of Make.  Using the output of the preprocessor to generate 
makefile dependency rules, without changing the pathname seems to 
work correctly.

Does anyone have good explanations for this behavior?
-- 
Kevin Buchs   3500 Zycad Dr. Oakdale, MN 55109  (612)779-5548
Zycad Corp.   {rutgers,ihnp4,amdahl,umn-cs}!meccts!nis!zycad!kjb

nazgul@apollo.uucp (Kee Hinckley) (11/12/87)

In article <679@zycad.UUCP> kjb@zycad.UUCP (Kevin Buchs) writes:
> 
> The output of the preprocessor on Apollo gives the pathnames of included
> files which are within the same directory with a leading dot, but with
> out a slash following that.  For example, it puts out:
> 
> 	# 1 ".pin_list.h"
> 
> Where other systems might give:
> 
> 	# 1 "./pin_list.h"
> 
> These are certainly different pathnames.  Even more interesting is the
> behavior of Make.  Using the output of the preprocessor to generate 
> makefile dependency rules, without changing the pathname seems to 
> work correctly.
> 
> Does anyone have good explanations for this behavior?

Well, I have an explanation, I don't guarantee its goodness :-).

First of all, it DOES work correctly at SR9.7 and possibly in releases before 
that, I haven't checked 9.6 or 9.5.  I know I reported it as a bug several 
releases ago.

The reasoning is really horrific.  Under Aegis, before case sensitivity reared
its head, files couldn't begin with "."s.  Therefore the naming server was made
to interpret ".foo" exactly the same as "./foo" (and "~foo" like "~/foo").  Thus 
the output of the compiler, and thus (I guess) the reason why make worked with
the output.

                                                        -nazgul
-- 
### {mit-erl,yale,uw-beaver}!apollo!nazgul  ### apollo!nazgul@eddie.mit.edu ###
### pro-angmar!nazgul@pro-sol.cts.com       ### nazgul@apollo.com           ###
###   (617) 641-3722  300/1200/2400         ###                             ###
I'm not sure which upsets me more; that people are so unwilling to accept       responsibility for their own actions, or that they are so eager to regulate     everyone else's.