🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.amiga.tech
Article #9382

Manx make

#9382
From: Brian Rhodefer
Date: Tue, 26 Jul 1988 20:39
59 lines
2520 bytes
In using Manx' make utility, I keep wishing it were possible
to set up a makefile so that compilations use precompiled
include files from RAM:, with the makefile automatically
creating the precompiled includes.  I'm never able to pull it off,
though, and have to do the include file by hand.  Can anyone
suggest a way to achieve total make nirva... I mean, automation?

My unfunctional approach:

----> begin makefile excerpt <-----

CFLAGS = -n +Iram:precompiled_include

OBJS = a_typical_module.o  another_module.o

result:	 $(OBJS)
	ln -g -o result $(OBJS) -lc

$(OBJS):	ram:precompiled_include

ram:precompiled_include:	precompiled_include
	cp precompiled_include ram:
#
# Note use of `cp' instead of `copy'.
#

precompiled_include:	includes_everything.c
	cc -O nil: +Hprecompiled_include includes_everything.c

----> end makefile excerpt <-----

I've put the `Xcopy' utility (I think that was its name)
was posted awhile back in my C: directory, and renamed it `cp'.
This gem behaves like `copy' SHOULD've, in that the copy's file
creation date is set to the original's.

All well and good, except it doesn't work.  I can run `make',
and (assuming no objects existed), everything happens as I'd
expect:  the `includes_everything.c' file is compiled to generate
`precompiled_include', which is then copied into ram:, and then
all the objects are built and finally linked together.

*BUT*, if I immediately re-issue the `make' command, it will RE-COPY
the `precompiled_include' file to ram:, and RE-COMPILE ALL THE MODULES,
even though everything should be `up to date'.
A `list ram:' shows that the creation date for `ram:precompiled_include'
is indeed the same as that of `precompiled_include', and BOTH are
older than ANY of the module.c files.  So why didn't make work right?

Is this one of those blessings of a `redundant' DOS?  Is `make' looking
at different file-creation-date information than `list'?
Or is there something funny about RAM:?

Obviously, this is not an earthshaking problem, but it is a puzzler,
and I thought I'd solicit some expertise.

Pre-gratefully,

Brian Rhodefer   ...!tektronix!tekig4!brianr
Technical Details
Message-ID: <3047@tekig4.TEK.COM>
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!tektronix!tekig5!tekig4!brianr

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!tektronix!tekig5!tekig4!brianr
From: brianr@tekig4.TEK.COM (Brian Rhodefer)
Newsgroups: comp.sys.amiga.tech
Subject: Manx make
Keywords: precompiled include aztec manx make xcopy
Message-ID: <3047@tekig4.TEK.COM>
Date: 26 Jul 88 20:39:49 GMT
Organization: Tektronix Inc., Beaverton, Or.
Lines: 59