Commit Graph

48 Commits

Author SHA1 Message Date
Jordan K. Hubbard
43497b9f75 Annual simplification drive:
1. DISTFILE is gone and replaced by DISTFILES, which can contain one or
   more file specifications.
2. MASTER_SITE created, which points to the distfiles directory on
   freebsd.cdrom.com (which I'll set up in a moment).
3. HOME_LOCATION is now simply a hint, and is never directly used except
   to inform the user when ncftp unable to transfer a file from
   MASTER_SITE.
4. ncftp is now assumed to live somewhere in the path, in preparation for
   Andrew bringing it in on a more permanant basis.
5. XMKMF defined - it was not before.

Thanks to Andrew (ache) for many helpful suggestions.
1994-09-10 22:26:47 +00:00
Jordan K. Hubbard
e86de4095d Rearrange this a bit while I think about the whole problem of fetching
multiple targets when dealing with creating a set of distribution files
from scratch.  Another problem is *verifying* that a given file fetched
from its HOME_LOCATION is the one we wanted (what if the stupid ftp site
maintainer updated it in place?).  Rich Morin pointed this out and suggested
some solutions.  I need to think about it some more (suggestions?).

For now, we have a seperate `fetch' and `extract' target.
Submitted by:	jkh
1994-09-09 06:21:43 +00:00
Jordan K. Hubbard
8315b1014c As per suggestion by Michael Reifenberger, make ncftp use the -N flag.
Reviewed by:	jkh
Submitted by:	mr
1994-09-09 00:17:47 +00:00
Rodney W. Grimes
ff753cd302 Add the installation of bsd.README. Realphabitize the FILES= list.
Reviewed by:	rgrimes
Submitted by:	bde
1994-09-07 09:18:44 +00:00
Rodney W. Grimes
7199b0911b The .c: rule added by Bruce, but as yet unused, causes serious problems
for the 1.1.5 FreeBSD make.  For now just comment it out until a fix for
make can be found.

Reviewed by:	bde
Submitted by:	rgrimes
1994-09-07 06:52:25 +00:00
Jordan K. Hubbard
74a3c65468 Add an X11BASE variable that currently points to /usr/X386 but will
be easy to change to /usr/X11R6 if and when the time comes.  This is
to deal with things like xditview which otherwise had hardcoded assumptions
about where X lived.  Yuck.
Submitted by:	jkh
1994-09-04 02:52:27 +00:00
Jordan K. Hubbard
c66c40460e Fixed a couple of typos. Ok, this works now. Only one significant hurdle
remains, and that's that this does not work with multiple targets, which
sort of throws the tk and fvwm distributions into a mess.  tk needs both
a tarball and a patch file from the same site, fvwm needs up to 3 different
files if you want all the options.  If anyone wants to take this the last
few steps of the way towards somehow handling cases like this, I'd be very
happy.
Submitted by:	jkh
1994-09-02 01:53:33 +00:00
Jordan K. Hubbard
9f421ad238 Ok, I've reviewed this and made it work now. ncftp fetching seems to be
working/closer to working now.
Submitted by:	jkh
1994-09-02 01:32:13 +00:00
Jordan K. Hubbard
e9ea29f3fe Add a few missing >> lines to error echo's.. This is basically my
convention to make searching for error messages easy.
Submitted by:	jkh
1994-09-02 01:13:47 +00:00
Jordan K. Hubbard
b9e3359515 Here's my first cut at doing auto-fetch with ncftp. The extract rule
is turning into the original make rule from hell!
Submitted by:	jkh
1994-09-01 18:03:37 +00:00
Jordan K. Hubbard
3158984cf8 Geeze, what was I thinking again? Replace all references to:
${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
1994-09-01 16:01:34 +00:00
Paul Richards
443dced56c Changed g++ to c++
Reviewed by:
Submitted by:
1994-08-31 03:57:32 +00:00
Adam David
07a9762776 added hook for post-build script
Reviewed by:
Submitted by:
1994-08-30 16:39:27 +00:00
Bruce Evans
80c02d5983 Use ${ECHO} instead of echo' so that make -s' is fairly quiet. 1994-08-28 15:37:40 +00:00
Bruce Evans
3c303ff206 Use ${ECHODIR} instead of `echo' for printing directory names so that
`make -ss' is very quiet.
1994-08-28 15:35:30 +00:00
Bruce Evans
a4c39c7aa6 Fix spelling error in little-used target.
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.
1994-08-28 15:32:10 +00:00
Bruce Evans
415bccaa8d Recover improvements in 4.4lite version that were clobbered by the
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.
1994-08-28 14:56:07 +00:00
Jordan K. Hubbard
82df480e9f Lots of changes - get the NO_XXX things over, add @'s to the touches for
default extract and configure targets, add a pre-clean since I need it for
pkg_install port.
Submitted by:	jkh
1994-08-28 14:41:34 +00:00
Bruce Evans
dcec6b1d7f Fix filenames for LIBC and LIBTERM. 1994-08-28 14:21:55 +00:00
Jordan K. Hubbard
cc3840179b Add bsd.port* to the Makefile.
Reviewed by:
Submitted by:
1994-08-28 09:35:51 +00:00
Garrett Wollman
c59ae063cb Add support for two modifier variables which will be useful soon:
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.
1994-08-26 18:58:10 +00:00
Jordan K. Hubbard
367eafb79a Add a pre-configure rule after all, since it's helpful to be able
to also run a rule before you apply patches and then go into the 3 stage
script configuration.  This bit Adam David in his dgd port.
Submitted by:	jkh
1994-08-25 22:59:56 +00:00
Jordan K. Hubbard
da22574df1 Also `make Makefiles' in USE_IMAKE case to catch subdirs.
Submitted by:	jkh
1994-08-25 21:02:45 +00:00
Jordan K. Hubbard
2581e485d5 Sigh. I am a hosebrain. I've been using gmake for so long, I've
started using some of its features reflexively.
Submitted by:	jkh
1994-08-25 13:56:08 +00:00
Jordan K. Hubbard
23573be72a Add a new flag: USE_IMAKE
This will cause the configure pass to do an `xmkmf' if set.
Submitted by:	jkh
1994-08-25 13:53:02 +00:00
Jordan K. Hubbard
c3181accea Some cosmetic changes.
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:
1994-08-24 14:49:33 +00:00
Jordan K. Hubbard
40ac3d51ca Ok, this should work with a centralized package directory now (so you
can elect to dump all finished packages in one directory).
Submitted by:	jkh
1994-08-22 13:25:33 +00:00
Jordan K. Hubbard
99188fedd9 Make package target a lot more general.
Submitted by:	jkh
1994-08-22 13:11:32 +00:00
Jordan K. Hubbard
301cdacf77 Whoops - left out the package rule!
Submitted by:	jkh
1994-08-22 13:02:16 +00:00
Jordan K. Hubbard
824137748f Use proper proper package suffix.
Submitted by:	jkh
1994-08-22 12:07:19 +00:00
Jordan K. Hubbard
12c6fd4131 Whoops, left out a backslash in my package rule.
Submitted by:	jkh
1994-08-22 12:00:34 +00:00
Jordan K. Hubbard
7fd2d1ca27 Ok, now we warn if we're about to recreate the distfile from configured
sources.  Configuring doesn't always _do_ anything, which is why it's
a warning and not an error.
Submitted by:	jkh
1994-08-22 11:23:17 +00:00
Jordan K. Hubbard
984dd1a95a New bsd.port.subdir.mk file for use by ports. This groks all the
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
1994-08-22 11:20:07 +00:00
Jordan K. Hubbard
44204c43cc I had to bite the bullet: There's now a port.subdir.mk that does the right
thing with recursive build, configure, bundle or extract targets.
Reviewed by:
Submitted by:
1994-08-22 10:46:38 +00:00
Jordan K. Hubbard
a57d411ac1 Sigh.. Some of these configs are a little hairy. I need to know the
${PORTSDIR} too now - pass it to any and all config scripts.
Submitted by:	jkh
1994-08-21 18:26:10 +00:00
Jordan K. Hubbard
a1c49e4efc Make things a little more user-friendly
Submitted by:	jkh
1994-08-21 17:42:24 +00:00
Jordan K. Hubbard
34c3b2aff2 Get the .configure_done stuff working - it wasn't in the right place.
Submitted by:	jkh
1994-08-21 16:55:54 +00:00
Jordan K. Hubbard
d0d7662fb4 Start really adding some features here. Let's see:
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
1994-08-21 16:37:09 +00:00
Jordan K. Hubbard
9bd3cef5dc Simplify the whole configuration script business quite a bit. What
was I thinking before..
Submitted by:	jkh
1994-08-21 15:04:03 +00:00
Jordan K. Hubbard
09e9c8438a Whoops, the check for a missing distfile was slightly bogus. Now it works.
Submitted by:	jkh
1994-08-21 14:32:40 +00:00
Jordan K. Hubbard
754969c971 Make any local configuration file unconditional. That is, if one exists
then run it even if GNU configure is to be run later.
Submitted by:	jkh
1994-08-21 14:10:16 +00:00
Jordan K. Hubbard
173b9407ed Commit my new ports make macros. Still not 100% complete yet by any means
but fairly usable at this stage.
Submitted by:	jkh
1994-08-21 13:12:57 +00:00
Bruce Evans
ed575421e9 - bsd.dep.mk and bsd.own.mk have been required for some time. Install them.
- Install with group BINGRP, not BINOWN.
1994-08-20 08:25:00 +00:00
Garrett Wollman
45f7f888bb Make the install targets obey the INSTALLFLAGS requests in the new
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.
1994-08-10 02:48:08 +00:00
Garrett Wollman
920f8baa30 Don't pass ${LDADD} to ${AR}. Use ${ARADD} for that. 1994-08-08 15:45:55 +00:00
Garrett Wollman
d14f862c56 Add a couple of files we created in 1.x. 1994-08-04 21:10:08 +00:00
Garrett Wollman
3585b293d1 Spplat our 1.1.5 `mk' ifiles over the top of the 4.4 ones. So far
as I can tell, this is ts the right thing to do.
1994-08-04 21:09:27 +00:00
Rodney W. Grimes
afe61c1516 BSD 4.4 Lite Share Sources 1994-05-30 19:09:18 +00:00