${DISTDIR}/${DISTNAME}${EXTRACT_SUFX}
With simply `${DISTFILE}' which defaults to the above. This lets you
easily name distribution files that don't cooperate with any rational
naming syntax.
Similarly, make a variable called ${PKGFILE} which fills the same purpose
for packages.
Just trying to make this thing really really general to suit every need.
Now I need somebody to figure out how to make the extract target auto-fetch
things from ${HOME_LOCATION} with ncftp *if* ncftp is installed and it
looks possible to reach the foreign site. That will take some fancy footwork,
but would be slick. I've changed this too so that HOME_LOCATION is no longer
set by default, allowing you to do an .if defined(..) check for it. The
extract rule now does this too.
Submitted by: jkh
Build an intermediate object file even when there is only one source
file. This costs a little space but saves time if the target is rebuilt
a lot, and it stops the target varying with the name of temporary
intermediates.
Use ${ECHO} instead of `echo' so that `make -s' is fairly quiet.
Use ${ECHODIR} instead of echo for printing directory names so that
`make -ss' is very quiet.
previous commit:
+ Everything is initialized using ?= instead of =.
+ Nicer formatting (more white space).
+ .c: rule.
Add macros ECHO and ECHODIR. Both are normally `echo', but when
the make flags include -s, ECHO is set to `true' and when the make
flags include two or more -s's ECHODIR is set to `true'. @${ECHO}
should be used instead of @echo in most cases. ${ECHODIR} is
intended to be used mainly for messages about directory names.
PRECIOUSLIB causes the shared library to be installed with the system
immutable flag (schg) set. (You can add other flags for shared-library
installation by modifying SHLINSTALLFLAGS.)
INTERNALLIB disables the generation of non-shared versions of the library.
This may be of use for programs like Taylor UUCP and GCC which have large
internal libraries shared among a number of programs.
Add pre-{build,extract,install,...} targets for Torsten, who apparently
needs them. Can't do effective post-* targets without major work, sorry.
Jordan
Reviewed by:
Submitted by:
special ports building targets and will recurse properly. Sorry,
Julian E - no fancy prompts, just recursion! :-)
Added a `bundle' target. Purpose is as follows:
You want to give someone a complete tree sans distfiles (for
sticking on CDROM perhaps?) but the difficulty there is that
the first time the user types `make clean', all the unpacked
sources are gone again. Typing `make bundle' recreates the
original distfile if it can, so someone can "back up" their
unpacked tree easily with one command.
Whoops, just thought of something - it should warn if you
configured the working source.
Ok, next commit! :)
Submitted by: jkh
1. New variable DEPENDS lets you list packages that this depends on,
relative to the top (lang/tcl, x11/tk, etc). These packages will
always get made first.
2. Don't configure again if you've already done so successfully.
3. Add pre-configure and post-configure hooks. You can now do a pre-configure,
a local configure, a port-provided configure and finally a post-configure
if you really really want to. I can't imagine anything this will leave us
not being able to do! :) [ Yes, I have actually found a use for at least
two of these in one port - see x11/tk!].
Submitted by: jkh
Makefiles.
DANGER WILL ROBINSON!
This will cause repeat installs of certain programs, such as `init' and
`rcp', to fail unless one of the two conditions is met:
1) You are in single-user mode.
2) Your security level is set to 0 or -1.
If you have compiled a kernel from the latest sources, your kernel
security level is set to -1 by default, which will keep `init' from
fiddling with it. You can increase it, but not decrease it, from the
command line with the command `sysctl -w kern.securelevel=<new value>'.
I believe that -1 is the most appropriate value to use while we are still
developing the code, although when we ship it should be changed back to 0.
See init(8) for more information.
have a choice between SHARED=copies and SHARED=symlinks. The default
is to copy.
I have also added a /usr/share/examples/etc directory, where I hope to
have all sample configuration files which in real use go into /etc installed.
(This way, if the user really screws the real one up, they can always go
back to a known-working distribution copy, even if they don't have sources.)
and cleandir: targets, simple use a CLEANFILES+= to handle this very
simple special case.
Add ${COPY} knob to install commands so that files don't disappear out
of the obj tree after a make install.
ready to go deal with just yet.
Disable man for now it will be fixed shortly, just wanted all the man
page converion stuff to be done togeather since that is a major functional
change and really belongs in a seperate commit.
I already update this manpage from wilko, moreover,
I fix some his bugs and add some new material.
Jordan, pleeease, do following commands *before* each your commit:
cvs update <file>
cvs rlog <file>
and after update (before commit)
cvs diff -c <file>
It can saves my life time at least...
Subject: syscons-1.3
Date: Sat, 29 Jan 94 23:33:50 MET
But here is the (hopefully) final syscons-1.3....
....
I've changed sgetc so it works as the pccons parallel
(it now uses a scgetc internally).
[
There were a couple changes that Bruce Evans sent me that were applied
to this version along with some changes that S'ren didn't incorporate
into the final version. There will be only minor changes if anything
from this version to his final release.
]