[comp.os.minix] cppmake and Minix 1.5.10

cechew@bruce.cs.monash.OZ.AU (Earl Chew) (10/25/90)

cppmake will be rejuvenated real soon now. There are incompatibilities with the
Posixfied header files. In the interim the following may be of interest.

Earl

-------------------------------------------------------------------------------
cppmake was written many moons ago when all we had was Minix 1.3. The makefiles
reflect this. I think that it's probably about time that I extract it and
bring the source up to date. Sigh.

>   cc -c -DCPPOPT=\"-D_MINIX\",\"-D_V7\"  -D_MINIX -DINTSIGNAL -DCHARMALLOC cppmake.c
>   "/usr/include/string.h", line 8: (warning) redefine "NULL"

Broken ack compilers require #include <stdio.h> _last_ ! Rearrange the order of
#includes.

>   "cppmake.c", line 107: illegal redeclaration of pid_t

Old sys/types.h was broken (left out pid_t). The new one has it. Now cppmake is
broken. Comment out the offending line in cppmake.

>   "cppmake.c", line 162: redeclaration of signal with different type

Old signals were int signal(). Now Posixfied it is void signal().

>   "cppmake.c", line 849: (warning) incompatible pointers in !=

Probably int signal() and void signal() associated problems.

The signal problems can be alleviated by not using -DINTSIGNAL.
-------------------------------------------------------------------------------
-- 
Earl Chew, Dept of Computer Science, Monash University, Australia 3168
EMAIL: cechew@bruce.cs.monash.edu.au PHONE: 03 5655447 FAX: 03 5655146
----------------------------------------------------------------------

nall@sun8.scri.fsu.edu (John Nall) (10/26/90)

In article <3276@bruce.cs.monash.OZ.AU> cechew@bruce.cs.monash.OZ.AU (Earl Chew) writes:
>cppmake will be rejuvenated real soon now. There are incompatibilities with the
>Posixfied header files. In the interim the following may be of interest.
>
>  (..deleted information about problems...)

After making the suggested changes, and doing a make of cppmake, I got a message
to the general effect (don't remember the exact language) of:

	_CppMake defined twice

Looking at the source of cppmake.c, there are a lot of names which begin
with "CppMake...".  At least one of them (CppMakefileName) is more than
14 characters long, so perhaps the 14-character variable name limit of Minix
is posing a problem.

At any rate, I grepped cppmake and found that the symbol CM does not appear,
so used sed to change all of the "CppMake"s to "CM"s, and it seems to compile
and load ok.  (Whether or not it is actually working or not, I dunno, as I have
not been able to get it to work yet.  But it may be that I'm doing something
wrong.  With standard Minix 1.5.10 cpp it gives an error message.  With cpp 
from oz, it does not give an error message, but also produces no results).



--
John W. Nall		| Supercomputation Computations Research Institute
nall@sun8.scri.fsu.edu  | Florida State University, Tallahassee, FL 32306
 "Real programmers can write assembly code in any language." - Larry Wall

cechew@bruce.cs.monash.OZ.AU (Earl Chew) (10/29/90)

In <1268@sun13.scri.fsu.edu> nall@sun8.scri.fsu.edu (John Nall) writes:

>Looking at the source of cppmake.c, there are a lot of names which begin
>with "CppMake...".  At least one of them (CppMakefileName) is more than
>14 characters long, so perhaps the 14-character variable name limit of Minix
>is posing a problem.

Oops, yes, that's another small problem. Hacking the names is sufficient to
overcome this.

Earl
-- 
Earl Chew, Dept of Computer Science, Monash University, Australia 3168
EMAIL: cechew@bruce.cs.monash.edu.au PHONE: 03 5655447 FAX: 03 5655146
----------------------------------------------------------------------