Commit Graph

1075 Commits

Author SHA1 Message Date
SADA Kenji
a68bcfe410 Sometimes we have to make `/var/db/pkg' directory before we create
`.mkversion' :)
Submitted by:	YAMAMOTO Shigeru <shigeru@bremen.or.jp>
1999-03-31 12:15:33 +00:00
Satoshi Asami
633df82af6 Create /var/db/pkg/.mkversion file with datestamp. 1999-03-29 23:02:29 +00:00
Bruce Evans
2336a7ea75 Removed all traces of LN_FLAGS. It was only used to produce a link
/usr/sbin/sysctl -> ${DESTDIR}/sbin/sysctl in some versions of 2.2,
and this link was broken if DESTDIR was set.

Added a SYMLINKS macro.  This works the same as LINKS, except it
creates symlinks and the linked-to pathname may be relative.  This
is more flexible than LN_FLAGS, since it supports installing
symlinks independently of hard links.

Use `ln -f[s] ...' instead of `rm -f ...; ln [-s] ...' for LINKS and
SYMLINKS.  This is equivalent if the target is neither a directory nor
a symlink to a directory.

PR:		8279
1999-03-23 03:06:25 +00:00
Bruce Evans
760a0960be Restored objlink. The previous commit was confused about the difference
between OBJLINK and objlink.
1999-03-21 06:43:40 +00:00
Mark Murray
5112f012f7 New names for the list; the DES crypt and libwrap for tcp_wrappers. 1999-03-14 20:45:05 +00:00
Mark Murray
5beaada399 Bitrot. Remove objlink as it is not pleasant to be downwind.
PR:		8071
Reviewed by:	Sheldon Hearn <sheldonh@iafrica.com>
1999-03-14 20:41:14 +00:00
Bruce Evans
305b918913 Rewrote the changes in rev.1.53. Don't ignore errors from makeinfo.
Use fancy substitutions instead of a huge if statement to handle the
rather delicate quoting.
1999-01-30 14:28:10 +00:00
Bruce Evans
9a6c0bd6c9 Fixed comment and whitespace lossage in recent commits. The -W flag
is not implied by -Wall as claimed by gcc.1.  Adding it causes a
measly 7193 new warnings for LINT, mostly for "unused parameter" and
"comparison between signed and unsigned".
1999-01-29 10:57:18 +00:00
Matthew Dillon
a91f66d4f6 Cleanup bsd.kern.mk after last commit. 1999-01-29 06:22:19 +00:00
Matthew Dillon
0bcef6efa1 Turn on -Wall and -Wcast-qual 1999-01-27 22:53:58 +00:00
Satoshi Asami
500ada61bf Move bsd.port.*mk to under ${PORTSDIR}/Mk (already repository copied).
There are only skeletons left here; they merely serve as a backup to
include the real versions under ${PORTSDIR}/Mk while we update the ports
tree to include them directly.
1999-01-26 03:40:12 +00:00
John Polstra
368c8de45c Introduce a new variable NEED_LIBNAMES. If it is defined,
<bsd.libnames.mk> is included regardless of the object file format.

This is needed to fix the a.out PAM breakage that manifests itself
when trying to build login.
1999-01-22 12:41:27 +00:00
John Polstra
b0aaedc6f1 Change the definition of LIBPAM to support the static PAM library.
When linking statically, LIBPAM is augmented with the extra libraries
that the PAM modules require.  The idea is to centralize this
information rather than scattering it about in the Makefiles of
all the applications that use (OK, will use) PAM.

There is a new variable MINUSLPAM that should be used instead of
"-lpam".  In the static case, it gets -l flags for the extra required
libraries.

This approach was suggested by <bde>, but he didn't actually review
my changes.
1999-01-20 21:48:56 +00:00
John Polstra
f67eb0dce4 Add some capabilities to <bsd.lib.mk> so that it can be used for
building dlopen-able modules, and add features needed to build a
static PAM library.  I think I cleaned it up some, too, but beauty
is in the eye of the beholder.

You can now build a shared library without version numbers, by
defining SHLIB_NAME to something like "pam_unix.so".  If SHLIB_MAJOR
and/or SHLIB_MINOR are set, SHLIB_NAME gets the usual default value,
but it can be overridden if desired.  If none of these symbols are
set, no shared library is built.

SHLIB_LINK controls the name of the symbolic link that points to
the library.  If it is unset, no link is made.  In the usual case,
it gets the right default: e.g., "libc.so" for ELF, nothing for
a.out.  This can be overridden.

STATICOBJS can be set to a list of extra object files that should
be added to the static library but not to the shared library.
These objects are added to the profiled library too.

These changes should make it easy to use <bsd.lib.mk> for building
things such as PAM modules and dynamic linkers, for which <bsd.prog.mk>
has been abused until now.
1999-01-20 21:42:40 +00:00
Andrey A. Chernov
50d5db08d0 remove - before __entry, it is not make conmmand but shell continuation line 1999-01-20 17:22:11 +00:00
Mark Murray
d7eb2472ac Texinfo has been upgraded. This needs to catch up.
Submitted by:	lkoeller@cc.fh-lippe.de
1999-01-20 05:48:19 +00:00
Satoshi Asami
5712096d18 (1) Add gnome master sites.
Submitted by:	Jeremy Lea <reg@shale.csir.co.za>

(2) Change backup distfiles dir to reflect change in ftp.freebsd.org's
    reorganization.
1999-01-20 01:55:05 +00:00
Hidetoshi Shimokawa
f9ed7e775f Clean new index file(GPATH) of global.
Submitted by:	Shigio Yamaguchi <shigio@wafu.netgate.net>
1999-01-18 07:48:41 +00:00
Mark Murray
c1bec88272 Option names have changes for texinfo-3.12 1999-01-14 20:02:41 +00:00
Satoshi Asami
68b35df498 (1) Add ONLY_FOR_ARCHS and NOT_FOR_ARCHS. They are list of architecture names
(as given by "uname -m") by which you can specify which
    architectures the port is appropriate for.
Idea borrowed from:	NetBSD, OpenBSD
Reviewed by:		simokawa

(2) New variable PERL_ARCH (value: ${ARCH}-freebsd) that is also
    passed to ${PLIST_SUB}.  Use it to simplify PLISTs.
Submitted by:	simokawa

(3) Check OSVERSION as well as existence of /usr/bin/perl5 before
    assuming USE_PERL5 is to be a no-op.  Basically to allow building
    of 2.2-INDEX on a 3.0 machine.

(4) Change USE_QT definition to use new shlib version (2) and
    directory (qt142).

(5) Uncomment temporary Motif dependency for parallel package
    building.  We still need to figure out a way to install the pkg
    database files, but it's a start.

(6) Move EXTRACT_SUFX up into the pre.mk area so it can be used in
    exists() tests.

(7) Add MASTER_SITE_COMP_SOURCES.  Note that this is defined like
    "/pub/usenet/comp.sources.%SUBDIR%/" so you can specify something
    like "SUBDIR=x/volume18" to select the newsgroup as well as
    subdirectory name.
Submitted by:	"distfiles" fenner

(8) Other misc. master site cleanup.
Submitted by:	"distfiles" fenner

(9) New target "maintainer".  I intend to use it to auto-mail failure
    build failure notices to the maintainer.
1999-01-11 13:04:18 +00:00
John Polstra
f92bdbd010 Switch to using ".So" as the extension for PIC object files rather
than ".so".  The old extension conflicted with well-established
naming conventions for dynamically loadable modules.

The "clean" targets continue to remove ".so" files too, to deal with
old systems.
1999-01-09 21:51:00 +00:00
Peter Wemm
10f7260a44 OBJFORMAT=elf in the absense of an override for both alpha and i386 by
default now.
1999-01-07 06:32:22 +00:00
Doug Rabson
65be2aace6 Move some compile flags from the kernel makefile to bsd.kern.mk so that
kernel modules are built with the right flags.

Suggested by: Andrew Gallatin <gallatin@cs.duke.edu>
1998-12-17 22:36:21 +00:00
Archie Cobbs
072fd7d9e7 Add -Wunused to kernel build flags.
Reviewed by:	cvs-committers@freebsd.org
1998-12-14 21:03:27 +00:00
Satoshi Asami
01e85cb38d (0) Fast INDEX generation. Only print out the directory name and
don't recurse in "make describe".  The new INDEX target in
    ports/Makefile invokes a perl script to recurse and convert them
    into package names.

    While I'm here, change the name of targets and move them around a
    little bit for the sake of consistency.

    It is also probably worth noting here that the meaning of the
    "build dependency" list in INDEX has been changed slightly
    changed.  The old list was "build depends and its build depends"
    -- not particularly useful if you had things like autoconf, which
    run-depend on gm4 (you install all the things listed here and
    you'll get an autoconf that won't run).

    It is now "build depends and its run depends" -- you install
    everything listed here, and you'll be able to build the port.
Submitted by:	steve

(0') Fast README.html generation.  It uses ports/INDEX to find
    dependencies instead of embarking on to a recursive loop.
Submitted by:	steve

(1) Remove NO_WRKDIR and NO_EXTRACT.  Their functionality are easily
    replacable with NO_WRKSUBDIR=t and EXTRACT_ONLY= (nothing on right
    side), and they get in the way of read-only port trees.

(2) Surround first few variable definitions with ".if !defined()".
    This will make cross-compilation easier and also speed up make
    processes.

(3) Call sysctl with absolute path.  Prefer the one in /sbin over the
    one in /usr/sbin.

(4) Add four new variables

    PKGINSTALL?=	${PKGDIR}/INSTALL
    PKGDEINSTALL?=	${PKGDIR}/DEINSTALL
    PKGREQ?=		${PKGDIR}/REQ
    PKGMESSAGE?=	${PKGDIR}/MESSAGE

    and use them in PKG_ARGS.  Frobbing with PKG_ARGS directly is
    strongly discouraged.

(5) Change PKG_SUFX to ".tar" (instead of ".tgz") if PKG_NOCOMPRESS is
    defined.  This is intended only for our own use.

(6) Add more sites to MASTER_SITE_GNU.
Submitted by:	billf

(7) Override MANUAL_PACKAGE_BUILD if PARALLEL_PACKAGE_BUILD is
    defined.  This is intended only for our own use.

(8) Add new target "ignorelist" which will print out the package name
    if the port is not going to be built on this machine.  This is
    intended only for our own use.

(9) Make mtree a little quieter.
1998-12-12 07:39:30 +00:00
Bruce Evans
d0abb5d270 Backed out previous commit. It was for bug for bug compatibility with
2.2's .mk files.

Fixed spelling and placement of '$Id$'.
1998-12-06 17:34:50 +00:00
Bruce Evans
1749f1e3bf Removed bitrotted code for setting OBJFORMAT. 1998-12-06 17:14:37 +00:00
Satoshi Asami
0e544fd5ea Change USE_QT to use version 1.41. I know this is a little premature,
but I'd like as many people to test this before the release.
1998-11-25 00:12:27 +00:00
Satoshi Asami
db0921e889 (1) Remove LOOP_VAR and LOOP_OPTIONS. It's a hack and just too many things
break one way or another.  With it goes the package-loop and the
    describe loop.

(2) Add new variable MASTERDIR to make it easier to share files between ports.
    bsd.port.mk will find things like ${PKGDIR} underneath
    ${MASTERDIR} (which defaults to ${.CURDIR}).

(3) Do not allow MD5_FILE to be renamed.  Funny things can happen if
    you do that.

(4) Use a few more absolute paths in the bsd.port.pre.mk part.  I
    can't use absolute paths for sysctl because it moved recently.
1998-11-20 04:00:38 +00:00
John Polstra
a0a4fbec88 Add LIBPAM, LIBRADIUS, and LIBTACPLUS. 1998-11-18 01:53:56 +00:00
John Polstra
851ee3c484 For ELF, create a symbolic link libfoo.so -> libfoo.so.NNN in the
object tree too.  This makes it possible to link against a shared
library that hasn't been installed yet.
1998-11-18 00:48:11 +00:00
Satoshi Asami
ffbc42db2c Add EXTRA_PKG_FLAGS to PKG_FLAGS. You can now add arguments to pkg_create
without redefining PKG_FLAGS after bsd.port.mk.
1998-11-14 09:45:09 +00:00
Peter Wemm
1e216ab590 Use a name less likely to collide with source files without an obj dir. 1998-11-11 07:40:44 +00:00
Satoshi Asami
218515c5f8 Make bsd.port.mk includable in two phases. bsd.port.pre.mk defines only
a few variables that could be used in the port Makefile for ".if exists()"
tests.  bsd.port.post.mk defines the rest.

Note: if you define USE_X_PREFIX or USE_IMAKE, put it before including
bsd.port.pre.mk.  These are the only two variables used in the first part.

In reality, bsd.port.pre.mk and bsd.port.post.mk just include bsd.port.mk
with special variables to turn part of it off.
1998-11-11 05:21:29 +00:00
Satoshi Asami
9fbb2e1c7b (1) New variable MAKE_ARGS: will be appended to build/install make argument
list.  The old MAKE_FLAGS was a little hard to use since it had a weird
    default ("-f").
Suggested by:	Shigeyuki FUKUSHIMA <shige@kuis.kyoto-u.ac.jp>

(2) Add new targets clean-restricted and clean-for-cdrom, which will
    delete RESTRICTED and NO_CDROM packages and distfiles from the top.
Reviewed by:	jkh

(3) Add depends to list of things to recurse on.  It will help people
    who are trying to fetch some ports plus their dependencies.

Requested by:	Chris Dillon <cdillon@wolves.k12.mo.us>
1998-11-08 10:29:53 +00:00
Peter Wemm
92892ca7a5 Do not add ${KMOD} to the CLEANFILES list. We want ${PROG} which is either
${KMOD}.o or ${KMOD}.ko.  Otherwise we can delete the source shell script
for linux, joy and ibcs2.
1998-11-05 04:01:55 +00:00
Satoshi Asami
fc006fb4ee (1) Add new variables LOOP_VAR and LOOP_OPTIONS to implement building several
packages from a single port.  LOOP_VAR is the name of the variable
    and LOOP_OPTIONS is a space-separated list of values it should
    take.  When these are set, the target "package-loop" will go
    through a clean and package loop for all the options.  The
    "package-loop" target is defined as "package" when LOOP_VAR is not
    defined, so if you are in the business for building packages, you
    should use "package-loop" all the time.  (This target is added to
    bsd.port.subdir.mk too.)

    Also, the "describe" target prints out multiple lines so that all
    options will go into the INDEX.  (In other words, if you define
    these variables, INDEX is going to look real silly if you don't
    put ${${LOOP_VAR}} in PKGNAME.)

Seconded by:	obrien ("ANYTHING")

(2) Turn off regexp support for LIB_DEPENDS.  It is a fixed string of
    the form <NAME>.<VER> now.
Tested by:	several rounds of complete package builds

(3) Check checksum even if NO_EXTRACT is defined.

(4) Cosmetic fix for message in MANUAL_PACKAGE_BUILD case.
1998-10-30 08:28:02 +00:00
Warner Losh
830775aaf9 Default to aout only on i386. Before we defaulted to elf only on
Alpha.  This is a minor, but important distinction.  Should be a no-op
to the install base.  If OBJFORMAT is set elsewhere, things work
exactly as they did before.
1998-10-19 20:09:17 +00:00
David E. O'Brien
7b81086b13 Allow ``make BINDIR=/foo/games'' to work. 1998-10-18 09:35:17 +00:00
Peter Wemm
08a04a8985 Update the kld glue
Pre-Approved by: jkh
1998-10-16 03:32:03 +00:00
Peter Wemm
fdbdd3a05f Support encapsulating ELF linker sets for KLD modules via gensetdefs.
Support name based dependencies at build time.  This is a hack.
These only affect KLD modules.
1998-10-14 04:04:22 +00:00
Satoshi Asami
37a64fc4b4 Add new variable NO_FILTER_SHLIBS -- it will disable ELF <-> a.out shlib
name conversion.  Use it for binary ports that come with its own private
shlib dirs, ports that install linux compatibility libraries (thus following
their naming conventions and not ours), etc.

Reviewed by:	Martin Cracauer <cracauer@FreeBSD.ORG>
1998-10-09 01:27:21 +00:00
Satoshi Asami
e96b50e352 (1) Add new variable ${PERL} which is equal to ${PERL5} but without the
version number part (i.e., "<directory>/perl").  Use this to
    substitute #! lines in your perl5 scripts.

Requested and reviewed by:	ache

(2) Add new variable WRKDIRPREFIX (defaults to "").  The "work"
    directories are now in ${WRKDIRPREFIX}${.CURDIR}/work by default.
    You can have a read-only ports tree (modulo any broken ports that
    write something to places other than ${WRKDIR}) by setting this to
    a writable location.

    Ports that set WRKDIR explicitly should append this to front so
    they will work when the user has WRKDIRPREFIX set.

Reviewed by:	Toshihiko Kodama <kodama@ayame.mfd.cs.fujitsu.co.jp>
1998-10-06 21:12:14 +00:00
Mike Smith
8fe644b289 Define KLD_MODULE if building a KLD module.
Forgot to mention that the previous commit was
Submitted by:	Doug Rabson <dfr@freebsd.org>
1998-10-02 05:08:09 +00:00
Mike Smith
90f60fc9bc Changes to support building of KLD modules. This includes the possibly
to be removed KMODDEPS define.
1998-10-02 04:51:10 +00:00
Satoshi Asami
c6d9533ece (1) Add BROKEN_ELF variable, similar to BROKEN. (There is no BROKEN_AOUT,
since ports are not supposed to be broken during the process of
    conversion to ELF -- please proceed with caution.)

(2) Support for checking file size before fetching.  The essential
    parts are commented out for now, so I won't lose the submission
    while we discuss how to do it.
Submitted by:	se (mostly)

(3) Don't run "fetch" twice.  It was due to the change in checksum
    target chaining.  It used to be fetch -> checksum -> extract,
    after 1.285 it was fetch -> checksum and checksum was also
    explicitly called from extract.  Fix it by not calling fetch from
    checksum when it's invoked by extract.
Noticed by:	pre-fetch target of lesstif being run twice

(4) Don't try to remove non-existent distfiles and patchfiles in
    distclean.
Submitted by:	anto@netscape.net
PR:		7988
1998-09-22 23:58:49 +00:00
David E. O'Brien
80db5fd640 Change lib specification in `clean' target to match ELF shared libs too.
Reported by:	Kris Kennaway <kkennawa@physics.adelaide.edu.au>
1998-09-20 19:49:44 +00:00
Jordan K. Hubbard
0f8ee3e37c This goes in doc distribution now. 1998-09-17 11:35:11 +00:00
Poul-Henning Kamp
d80044954c Two patches from the HARP people:
Various Makefile related fixes.

-Wformat fixes.

Submitted by:	Mike Spengler <mks@networkcs.com>
1998-09-17 09:35:02 +00:00
Satoshi Asami
d2748a4068 Yikes, put .endif in wrong place. 1998-09-17 01:22:05 +00:00
Satoshi Asami
b6ab977c7b Remove shlib minor if PORTOBJFORMAT=elf. 1998-09-17 01:00:23 +00:00
Satoshi Asami
66078de1a1 (1) Pass PORTOBJFORMAT in SCRIPTS_ENV too.
Submitted by:	"Eugene M. Kim" <gene@nttlabs.com>

(2) Check for exact version of perl5 in /usr/bin and exit with error
    message if USE_PERL5 is defined and version does not match
    ${PERL_VERSION}.

(3) Note LIB_DEPENDS should not have any regular expressions.  Remove
    those in USE_XLIB and USE_QT.
1998-09-16 12:04:38 +00:00
Justin T. Gibbs
b1758a280b Define LIBCAM and LIBDEVSTAT. 1998-09-15 10:27:20 +00:00
David E. O'Brien
fc936cbd13 Revert to rev 1.41.
Some didn't like it.
1998-09-15 05:24:01 +00:00
David E. O'Brien
30173cb8aa Add ${RM} for compatability with SunOS.
Many use ${RM} in their ``clean'' targets.
1998-09-14 09:22:04 +00:00
David E. O'Brien
5ecaf9a866 Change file ownership from bin.bin to root.wheel. 1998-09-14 08:34:45 +00:00
Wolfram Schneider
c7e4247c19 `make clean' depend on the inclunde file bsd.dep.mk 1998-09-13 20:57:56 +00:00
Satoshi Asami
aa135a93cd (1) Add MLINKS support.
Submitted by:	hoek

(2) ELF support.
 2a. Variable PORTOBJFORMAT specifies the object format of the system.
     It is passed down to configure/make via CONFIGURE_ENV/MAKE_ENV,
     and is given to generate-plist via PLIST_SUB.
 2b. In PLIST, substitute lines that end with "/libFOO.so.X" with
     "/libFOO.so.X.0".  (This means PLISTs should only list ELF
     libraries.)
Reviewed by:	jb, jdp, hoek, jseger, steve

(3) Perl5-in-system support.  Basically turns USE_PERL5 into a no-op
    if there exists a "/usr/bin/perl5".  Also fix prior breakage by
    dima (${PREFIX} => ${LOCALBASE} in perl5 path).
Reviewed by:	markm (sort of)

(4) Install requirement file as "+REQUIRE" so it will be executed
    correctly by pkg_delete.
Reported by:	Shigeyuki FUKUSHIMA <shige@kuis.kyoto-u.ac.jp>

(5) Do not disable checksum and makesum when NO_EXTRACT is set.
Pointed out by:	hoek and kiri, among other people
1998-09-10 06:38:02 +00:00
Mark Murray
072039180e Add libperl for Perl5. 1998-09-09 17:51:15 +00:00
Bruce Evans
90e137696c Fixed disordering and misformatting in previous commit.
Don't override correct default targets.

Don't use afterinstall for installing things; it is for fixups after
installing things.
1998-09-09 10:17:34 +00:00
Bruce Evans
def151a8fc Backed out rev.1.28. It was bogus because bsd.man.mk is only used
(and only usable) by other .mk files that have their own multiple
inclusion protection.
1998-09-09 10:12:07 +00:00
Bruce Evans
405b59bcb5 Turned on -Wformat -fformat-extensions. -fformat-extensions requires a
-current version of gcc.  Without it, -Wformat would complain about all
the nonstandard %[Dbrz] formats in the kernel.
1998-09-09 10:04:58 +00:00
John Birrell
c908270ee3 Add a man section 1aout for the legacy man files to avoid them being
installed over the ones from binutils.
1998-09-07 05:55:02 +00:00
Bruce Evans
1d0de5e557 Add -aout to CFLAGS and LDFLAGS in bsd.kmod.mk, not in
src/lkm/Makefile.inc.  This fixes broken builds of the syscons LKMs
when OBJFORMAT=elf.  Removed src/lkm/Makefile.inc since it became
empty and is worse than useless.
1998-09-02 14:29:09 +00:00
John Birrell
04df7eaa71 Oops, I missed the update from /etc/objectformat to /etc/objformat
which caused a port-ELF upgrade to continue to build aout.
1998-08-31 23:34:37 +00:00
John Birrell
3cba807609 Remove BINFORMAT which is only set when building tools that need to have
a default format.

Include /etc/objformat to get the installed object type if it exists
and if OBJFORMAT is not already defined.
1998-08-30 20:35:24 +00:00
John Birrell
cdaa52cf0c BINFORMAT -> OBJFORMAT ready for E-day. 1998-08-30 20:33:27 +00:00
Wolfram Schneider
e3706b10d9 bsd.docb.mk handles installing SGML/docbook documents. 1998-08-29 11:01:22 +00:00
Matthew Dillon
9eb10afece add support for /etc/make.conf.local 1998-08-29 01:30:13 +00:00
Dima Ruban
fd08501ea2 Introduce PERL5 variable.
It's gonna be used in all p5- ports.

Reviewed by:	asami
1998-08-28 18:41:04 +00:00
Satoshi Asami
9d9806c5b9 Hope I haven't missed anything or forgotten to credit anybody. (By
the way, most of the things below are "Reviewed by: hoek" as well.)

The changes are (roughly in order of appearance):

(1) Revamp comments at beginning of file.  Major rewrites.  Reorder
    them into more relevant sections.  Make clear which ones are user
    variables and not to be set in ports' Makefiles.
Reviewed by:	hoek (well, he's the only one who sent any comments)

(2) Include ${.CURDIR}/Makefile.local if it exists.  This is a local
    configuration file (ala rc.conf.local and make.conf.local) so
    please do not commit a file with this name to the repository.
Suggested by:	dillon

(3) MANCOMPRESSED now takes three possible values: "yes", "no" and
    "maybe".  (It used to be a binary variable -- the old behavior is
    now accomplished by "MANCOMPRESSED=yes".  Ports that defined this
    variable to other values have been corrected.)

    "yes" means the manpages are installed compressed, "no" means they
    are not, and "maybe" means the port already respects the value of
    NOMANCOMPRESS.  The default is "yes" for USE_IMAKE ports without
    NO_INSTALL_MANPAGES, and "no" otherwise.

    Add "compress-man" target and move manpage {,de}compression there.

Reviewed by:	hoek etc. and a full build of the ports tree

(4) Add LIBDIR="${LIBDIR}" to MAKE_ENV.  Makes easier to "fix" ports
    for /usr/lib/aout mess.
Submitted by:	ohashi@mickey.ai.kyutech.ac.jp (Takeshi Ohashi)

(5) Change ${TMPPLIST} from ${WRKDIR}/PLIST.mktmp to
    ${WRKDIR}/.PLIST.mktmp.
Suggested by:		hoek
Strongly seconded by:	steve

(6) Change a couple more relative pathnames to absolute ones.
Submitted by:	hoek

(7) Move checksum into real-extract.

(8) Change way rules are chained.  Instead of:

build: configure ${BUILD_COOKIE}
${BUILD_COOKIE}:
	@cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} real-build

    we now have

build: ${BUILD_COOKIE}
${BUILD_COOKIE}:
	@cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} configure
	@cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} real-build

    Other than being more PC (pmake clean), this really speeds up
    skipping ports already built.  For instance, "make package" on a
    fully packaged games subtree used to take 269 seconds on average,
    now it's 45 seconds on average.

    The flip side of this is that it will create more processes when
    the targets actually chain, but when you're actually compiling
    things, your make is creating half a bazzilion processes anyway so
    I don't think it matters.

(9) ${TMPPLIST} is now a real dependency.  Create "generate-plist"
    target to generate ${TMPPLIST}.  Make sure it's called when needed
    (usually between do-install and post-install), and that the
    required files exist.

(10) Change some messages so we can tell where "make index" failed.

(11) Check if LIB_DEPENDS really generated the required shared lib or
     not.
Seconded by: "Brent J. Nordquist" <bjn@visi.com>
1998-08-27 00:18:50 +00:00
Satoshi Asami
38bcfc5c0e Add "deinstall" to list of targets. This is only fair since "install" and
"reinstall" are already here. :)
1998-08-26 23:46:13 +00:00
John Birrell
7c9bea41de Add default OBJFORMAT so that the build process can test for this
without having to run objformat to determine it.
1998-08-18 00:50:36 +00:00
Mark Murray
7d970abcea Bump version number for latest perl 1998-08-15 17:34:00 +00:00
Satoshi Asami
b9a5e65b05 Merge 1.227.2.45 (perl version substitution in PLIST). 1998-08-12 09:47:47 +00:00
Satoshi Asami
de00beffba Merge 1.227.2.44. 1998-08-12 01:47:47 +00:00
David E. O'Brien
b9796e16d2 I presume Satoshi wanted `uname -r'' for OSREL not `uname -s''
Found by:	gcc28 port
1998-08-10 04:02:50 +00:00
Peter Wemm
1cfd4a8b66 Clean up all temporaries that we can generate. 1998-08-08 13:22:06 +00:00
Peter Wemm
d9eb0d4d1b Use more standard ld commands when stripping symbols out; ld -O is a
freebsd-aout extension.  The binutils ld doesn't understand it.
Essentially this is backing out rev 1.33 for elf and other toolchain
support..
1998-08-08 13:11:44 +00:00
Peter Wemm
e0301e5d4b Make ../Makefile.inc handling more consistant to prevent multiple includes
when certain .mk files include other .mk files.  This will remove the
need for multiple include protection in some other makefiles around the
tree (and helps some elf conditionals).
1998-08-08 07:02:08 +00:00
John Birrell
b1ecf4ef4b Remove the alpha specific __NETBSD_SYSCALLS from CFLAGS. This can still
be added in /etc/make.conf. Yes folks, the alpha kernel is coming to
a screen (and hopefully a disk) near you. Thanks to Doug.
1998-08-08 02:08:37 +00:00
Mark Murray
48a72a5522 Update for Perl 5.005_01 1998-08-06 11:43:11 +00:00
Satoshi Asami
11af289961 (1) Rename variable "USE_X11" to "USE_X_PREFIX" to make clearer what it
means (change PREFIX to ${X11BASE}) and add a new variable USE_X11
    which means "this port requires the X window system (actually the
    library)".  USE_X_PREFIX implies USE_X11.  USE_X11 adds a
    LIB_DEPENDS to libX11 with the x11/XFree86 port.
Reviewed by:	the ports list, hoek in particular

(2) Remove NO_CONFIGURE and NO_PATCH, which never meant anything.
    Yell if they are defined.
Reviewed by:	the ports list

(3) Add new variable OSREL, which is automatically set to the
    numeric OS version (e.g., 2.2.1, 3.0).  It can be used to refer to
    files in gcc installations, for instance.

(4) Finally remove EXEC_DEPENDS hack after all these years.
Submitted by:	hoek

(5) Put quotes around some echo ${*_DEPENDS} statements so they won't
    blow up when the variables include regular expressions like
    "qt\\.1\\.\\\(33\\\|40\\\):${PORTSDIR}/x11/qt140".
1998-08-05 09:29:13 +00:00
Bruce Evans
cf94fb2124 Fixed building -current under 2.2.6 using `make world'. Moved some
recently added definitions from sys.mk to bsd.own.mk.  Include the
src-relative bsd.own.mk in src/Makefile to pick up all new definitions.
Don't check that MACHINE_ARCH is defined in src/Makefile, since it is
(and should have been) guaranteed to be defined.
1998-08-03 08:28:14 +00:00
Bruce Evans
0b7162ffcc Use a different hack in the ${DFILE} rule to keep indirect dependencies
(mostly for includes) separate from direct dependencies (so that ${.ALLSRC}
can be used to find full paths to the sources for the direct dependencies
only).  The `::' hack just forgot the indirect dependendencies.  This
broke building doc/usd/13.viref with `make -jN' - the index got corrupted
by being built twice concurrently.

Cleaned up the ${DFILE} rule.  There was a .else clause with dead code in
it following a .else clause (make accepts this bad syntax).  ${.ALLSRC}
now works in the USE_SOELIMPP case.  Some client Makefiles no longer need
the SRCDIR=${.OBJDIR} hack.
1998-08-02 13:50:23 +00:00
Bruce Evans
e0e2794cd8 Honor NOSHARED for tools. All tools should be built static for
`make world' to avoid problems with picking up (new) target or (stale)
host shared libraries.

Don't honor -static in LDFLAGS for linking LKMs.  LDFLAGS is not
actually for ld, but we use it anyway, and must prevent -static being
misinterpreted as -s.

Don't hide any of the link steps.
1998-07-29 14:19:48 +00:00
David E. O'Brien
79dea028fd Add var "CD_MOUNTPT" set to /cdrom by default.
Ok'ed by:  discussed with Satoshi at USENIX
1998-07-28 22:27:16 +00:00
Stefan Eßer
c3673cc077 Add US Mirror site to MASTER_SITE_KDE. 1998-07-13 23:39:02 +00:00
Peter Wemm
e6b32a86af Move bsd.own.mk after make.conf, this allows BINFORMAT to be set in
/etc/make.conf - it changes LIBDIR in bsd.own.mk.  Note that there are
still problems with this, individual Makefiles cannot override BINFORMAT.
1998-06-12 10:52:52 +00:00
Bruce Evans
afba897ff2 Fixed `make depend', which I broke here about a month ago by moving
the null default for `depend' from bsd.dep.mk to bsd.obj.mk.
bsd.kmod.mk included these files in a bad order, so it picked up
the null default.
1998-06-09 02:55:40 +00:00
Dmitrij Tejblum
c7cbe79e18 Recognize ".cpp" as a C++ suffix.
PR:		3476
1998-06-05 18:38:55 +00:00
Peter Wemm
0b3f8389d2 Make the whereobj target print it's output without the overhead of
starting another make..
Besides, make -V is broken, since it will print unexpanded variables.
1998-06-04 15:31:55 +00:00
Peter Wemm
31d33723f2 Hard coded /usr/lib reference 1998-06-04 15:15:38 +00:00
John Birrell
b658f1dec8 Fix my last commit which got caught in the cvs/cvsup cycle.
I'm told that I botched the tabs too. I'm not sure they are fixed now
because I find that rather tedious.
1998-06-03 22:07:26 +00:00
John Birrell
a09e15f35c Uh, the NetBSD syscall define spam for alpha has to go after /etc/make.conf
so that it works all the time.
1998-06-03 08:51:39 +00:00
John Birrell
fdea3b6b0f In the case of alpha (only), more than just libc needs to know that
NetBSD syscalls are being used, so spam all compiles with the define
that indicates this.
1998-06-03 08:07:31 +00:00
Peter Wemm
686544f020 add libcipher, and update comments about libdes, libkdb, libkrb etc
which do exist but are in the secure dist rather than the base.
1998-06-01 19:38:20 +00:00
Bruce Evans
67b780b03b Fixed double slashes in pathnames. 1998-05-31 11:32:38 +00:00
Søren Schmidt
cabb97dcbf ELF preparation step 2:
Move a.out libraries to /usr/lib/aout to make space for ELF libs.
Make rtld usr /usr/lib/aout as default library path.
Make ldconfig reject /usr/lib as an a.out library path.
Fix various Makefiles for LIBDIR!=/usr/lib breakage.

This will after a make world & reboot give a system that no
longer uses /usr/lib/*, infact one could remove all the old
libraries there, they are not used anymore.

We are getting close to an ELF make world, but I'll let this
all settle for a week or two...
1998-05-26 20:12:56 +00:00
Jordan K. Hubbard
1c43d7e198 Complete back-out of the bsd.locale.mk change.
OK'd by:	asami
1998-05-20 22:27:18 +00:00
Matthew Hunt
5364b6d17c Add rcsid. 1998-05-20 05:43:01 +00:00
Matthew Hunt
e078c01fd2 If LOCALE is not defined, default to USA. Otherwise, bsd.locale.mk
blows up with errors.
1998-05-20 05:41:20 +00:00
Matthew Hunt
71e3426cdc Add bsd.locale.mk to the list of files. Whether bsd.locale.mk is
the right solution or not, bsd.port.mk is broken unless bsd.locale.mk
is installed.

Note that if LOCALE is not defined, port-building explodes:

"/usr/share/mk/bsd.locale.mk", line 135: if-less elif
"/usr/share/mk/bsd.locale.mk", line 135: Need an operator
(For each .if testing LOCALE)
1998-05-20 04:57:16 +00:00
Peter Hawkins
d04c1186ec PR: misc/6031
Patch applied as per PR - enables preferential fetch from local mirrors
1998-05-19 13:14:11 +00:00
Peter Hawkins
802d2d4af0 PR: misc/6031
Patch applied as per PR - enables preferential fetch from local mirrors
1998-05-19 13:02:04 +00:00
Wolfram Schneider
e6daac8be7 Add rules to generate PDF files. 1998-05-18 16:57:10 +00:00
Bruce Evans
5d9599c863 Oops, forgot references in previous commit.
Submitted by:	Brian Cully <shmit@erols.com>
PR:		6178
1998-05-15 09:34:48 +00:00
Bruce Evans
70a6e3314e Support Objective C almost as well as C++.
Notes:
- We no longer use -fgnu-runtime in bsd.lib.mk, since it is the default
  and bsd.lib.mk is the wrong place to override it.
- Gnu C doesn't have a special compiler driver for Objective C like it
  does for C++.  The defaults are suitable for Gnu C.  Use `OBJCLIBS='
  in /etc/make.conf for POC.
1998-05-15 09:30:13 +00:00
Bruce Evans
2ec8b6deea Oops, the lex and yacc sources must be added to SRCS before ${SRCS}
is used in the dependency list for ${DEPENDFILE}.  `make depend' was
broken for a few days.  `make world' only uses `make depend' when
NOCLEAN is defined, so only a few people noticed the bug.

Submitted by:	mostly by jmg
1998-05-11 15:37:13 +00:00
Bruce Evans
29901fcc76 Moved lex and yacc source handling from bsd.prog.mk to bsd.dep.mk
so that it applies to libraries (and lkms) as well as programs.
1998-05-08 06:31:05 +00:00
Bruce Evans
5a9eee48b6 Only include bsd.dep.mk in `mk'files that handle C sources. Abuse
bsd.obj.mk instead of bsd.dep.mk for defining the _SUBDIR target
and a default tags target.  Abuse bsd.obj.mk for defining default
cleandepend and depend targets.
1998-05-06 18:44:04 +00:00
Wolfram Schneider
400f992e53 Delete stale comment.
Pointed out by: bde
1998-05-06 16:53:53 +00:00
Bruce Evans
cf1b9c0a35 Regress to generating foo.c from foo.y via y.tab.c for crufty applications
that want a y.tab.h file.  This want must be specified by putting y.tab.h
in SRCS (and defaulting to or putting -d in YFLAGS).  This only works if
there is only one yacc parser, of course.  One improvement:  copy y.tab.c
to foo.c instead of renaming it, so that `#line...y.tab.c' statements in
it refer to an existing file.

Regress to not generating explicit rules for .l and .y sources containing
slashes.  This case is unusual and hard to handle properly.

Don't generate an unused dependency when -d is not in YFLAGS.
1998-05-06 15:01:18 +00:00
Bruce Evans
91023e7c67 Oops, the symlink from y.tab.h doesn't work until its target exists. 1998-05-05 03:59:27 +00:00
Bruce Evans
5441eeaedf Fudge local variables better in the yacc rules so that multiple yacc
sources are handled properly.
1998-05-04 17:43:46 +00:00
Bruce Evans
42b2082ac7 Generate explicit rules and other infrastructure for lex and yacc
sources.  This will be used to fix `make -jN' races in many
Makefiles in /usr/src, and to simplify these and other Makefiles.

To get the fixes and simplifications, application Makefiles should
put the raw lex and yacc source names (foo.l and bar.y) in SRCS and
not put the names of any generated files in SRCS or CLEANFILES.  A
few Makefiles already do this, although it didn't actually work before
(mkdep couldn't create complete dependencies because there is no
intermediate .c file for the .y.o and .l.o implicit rules).

Complications: if bar.y is in SRCS and -d is in YFLAGS, then bar.h
will be generated whether or not it is used, even if this clobbers a
real source file.  This is so that bar.c can be generated using the
-j-safe and debugger-friendly -o option to YACC.  There are smaller
warts for handling y.tab.h.  y.tab.c and lex.yy.c are not supported.
1998-05-04 13:54:41 +00:00
Steve Price
05effdc4fc Change a couple 'make' to '${MAKE}'.
PR:		6341
Submitted by:	Niall Smart <rotel@indigo.ie>
1998-05-04 04:01:26 +00:00
Bruce Evans
89f9e39f19 Added -ansi to CWARNFLAGS so that ANSI errors don't come back. 1998-05-01 18:13:37 +00:00
Jordan K. Hubbard
94e9e9fdc2 Add -pipe to default CFLAGS. The optimization it provides is cheap
and does not require any special action on the part of the user to
take advantage of it.  And no, it probably won't work with c89. Cry me
a river!
1998-05-01 11:36:59 +00:00
Bruce Evans
55137cdb87 Don't include ../Makefile.inc here. bsd.man.mk is always included
in another .mk file which has already included ../Makefile.inc, so
including ../Makefike.inc again mainly messed up `+=' definitions.
1998-04-27 15:08:07 +00:00
Eivind Eklund
55d7643ed8 Support for fine-grained external control of subdir building. 1998-03-29 01:10:09 +00:00
Eivind Eklund
f342a1c4b4 Remove special handling of 'tags' for complex subdir systems
(presently only used in tip; should have been used by e.g. pkg_add).

Submitted by:	bde
1998-03-26 16:02:44 +00:00
Satoshi Asami
f0bb46b1b3 Don't delete "Latest" link if NO_LATEST_LINK is set. 1998-03-24 03:34:51 +00:00
Eivind Eklund
1ed9b1c368 Support new version of global.
Submitted by:	Shigio Yamaguchi <shigio@wafu.netgate.net>
Tested by:	make buildworld
1998-03-23 14:58:30 +00:00
Bruce Evans
8d17ea527b Use gzip's -n flag so that simple regression tests of `make world'
work better.
1998-03-19 13:32:43 +00:00
Bruce Evans
5f1c0dcd1a Fixed CLEANFILES. Some temporary files were missing. 1998-03-19 13:22:46 +00:00
Bruce Evans
fe9ce45a0e Improved comparison of ${DPADD} with ${LDADD} for the checkdpadd target.
`BINFORMAT=foo make checkdpadd' in /usr/src now reports only 2 false
negatives (in libss and init).  (BINFORMAT=foo is to turn off better
handling of the a.out case.)
1998-03-14 14:08:29 +00:00
Eivind Eklund
69b87d3e06 Introduce the 'regress' target.
Silently approved by:	-hackers, -current
1998-03-12 20:02:17 +00:00
Bruce Evans
a813856e54 Pass -nostdinc to mkdep for assembler and C files (it was already
passed for C++ files).

Don't pass -nostdlib to mkdep for C++ files.

Don't use temporary variables to obfuscate the main rule.
1998-03-07 13:57:37 +00:00
Bruce Evans
fcccc50b75 Fixed generation of extra dependencies:
- the two `_EXTRADEPEND::' targets potentially clobbered each other for
  `make -jN'.  In practice, the output for the second target sometimes
  disappeared.
- bogus dependencies were generated for static libraries.
1998-03-07 13:13:41 +00:00
Satoshi Asami
c89f86ce8f Add ${CXX} to list of variables passed in the environment when
invoking configure.

Submitted by:	obrien
1998-03-07 04:40:19 +00:00
Bruce Evans
14172e4615 If .depend doesn exist, then pretend that all objects depend on all
headers in ${SRCS}, as in bsd.lmod.mk and bsd.prog.mk.  This helps
`make [-j]' work when .depend doesn't exist.  Even plain `make'
sometimes only worked because of magic ordering in ${SRCS}.
1998-03-06 08:08:36 +00:00
Bruce Evans
589d9341f4 Removed support for now-unused FreeBSD misfeature DPSRCS. 1998-03-06 07:28:01 +00:00
Bruce Evans
987afe2a2f Fixed dependency of ${PROG} on ${DPSRCS}. There were various races
for `make -j'.  There are one-off fixes for the problem in a few
Makefiles, e.g., amd/amq/Makefile.
1998-03-06 06:48:39 +00:00
Bruce Evans
47da63c3df Fixed dependencies of ${PROG} on ${DPSRCS} and `all' on ${_ILINKS}.
There were various races for `make -j'.  Half-built versions of
vnode_if.h were sometimes #included...

Removed a null dependency.
1998-03-06 05:43:46 +00:00
Bruce Evans
89d11b8a94 Removed clean target. Simply add to CLEANFILES so that the default target
in bsd.obj.mk works.
1998-02-25 02:56:58 +00:00
Bruce Evans
0f608029ab Remove ${CLEANDIRS} in the default clean rule, so that bsd.prog.mk can
use the default without losing any (currently unused) features.
(CLEANDIRS is only used by for libgmp and libmp via bsd.lib.mk, and
only documented everywhere it is supported except of course where it
is actually used.)
1998-02-25 02:48:28 +00:00
Bruce Evans
6c36f075fe Don't add ${DOC}.ascii* to CLEANFILES twice. 1998-02-25 01:35:16 +00:00
Bruce Evans
27cb203497 Removed default tags target. It was identical to the central one in
bsd.dep.mk.
1998-02-20 15:58:59 +00:00
Bruce Evans
161e89999d Removed default tags target. PROG is always defined here, so ifdefing
it was bogus, and without the ifdef the default is identical to the
central one in bsd.dep.mk.
1998-02-20 15:52:49 +00:00
Bruce Evans
d14459324d Don't pass the undocumented flags `-se' to gtags (gtags ignores them for
compatibility).
1998-02-20 15:27:03 +00:00
Bruce Evans
b7052cd110 Fixed cleaning of tags files. GSYMS was forgotten. 1998-02-20 14:32:30 +00:00
Eivind Eklund
f5c7505126 Limit check for target to smaller section of makefile. 1998-02-19 14:53:29 +00:00
Satoshi Asami
d4060348f4 (1) Don't disable "deinstall" if IGNORE is set.
I don't know what the hell I was thinking in:	rev. 1.268

(2) Create ${PREFIX} before calling mtree if it doesn't exist.  This
    may not be the best solution, but pre-install is called after
    mtree so there really isn't any way to fix this from the port
    Makefiles and thus has to be done here.
1998-02-19 06:49:27 +00:00
Eivind Eklund
6fe6af9f74 Don't create a ${PROG} target if it already exists. 1998-02-19 01:30:23 +00:00
Wolfgang Helbig
aa3be41e39 Postpone the test for non-emptiness of $PROG, $OBJS and $CLEANFILES
to ``shell time''. The previous version didn't work in
/usr/src7share/man/man4.
Reviewed by:	bde
1998-02-07 17:19:06 +00:00
Satoshi Asami
6b76dece87 (1) Improve the obsolete tcl/tk detection and dignosis.
Reviewed by:	the lists

(2) Change MASTER_SITE_CTAN to reflect current reality.
Submitted by:	fenner

(3) Add new port variable NO_LATEST_LINK.  When this is set, the
    "Latest" package symlink is not created.  Use this for ports that
    are betas when there is also a port for an older, more stable,
    version.

(4) Don't be too stupid about "make deinstall".
Submitted by:	fenner
1998-02-04 10:36:56 +00:00
Bruce Evans
021886ff87 Restrict the include search path using -nostdinc -I- in $(CFLAGS} as
in kernel Makefiles.  Nothing in /usr/include is used (provided
relative paths for sys/* and <machine> can be found), so there is
no need for the -I/usr/include kludge as in kernel Makefiles.
1998-02-01 17:19:54 +00:00
David E. O'Brien
8baab29a23 Allow package building in current directory again. 1998-01-31 20:59:30 +00:00
Bruce Evans
4a2d2630c8 Generate symlinks to the "sys" and <machine> directories and put
them in the include path.  This fixes recent breakage of the syscons
LKMs and general brokenness of the include paths (headers under
/usr/include were used in many cases).
1998-01-26 20:36:38 +00:00
Jordan K. Hubbard
c4be71c254 DISTRIBUTION=bin - we separate it out later. 1998-01-23 20:09:21 +00:00
John Birrell
5ec0ebbb0d FreeBSD's make knows about the MACHINE, but not the MACHINE_ARCH unless
it is built with this defined (which it isn't by default). This change
to sys.mk treats the absence of MACHINE_ARCH as i386 on the assumption
that it will be appropriately defined (as something else) on any other
architecture. When building FreeBSD's make with NetBSD tools, both
MACHINE and MACHINE_ARCH are correctly set (e.g. when bootstrapping
FreeBSD's make on NetBSD/mvme68k, MACHINE=mvme68k and
MACHINE_ARCH=m68k). This isn't really needed for the alpha which
has both defined as 'alpha', but I thought it was worth getting the
distinction between a MACHINE and a MACHINE_ARCH correct now.

Now, shouldn't PC98 have MACHINE=pc98 and MACHINE_ARCH=i386 ??!!
1998-01-21 01:03:51 +00:00
John Birrell
5bd65ce6ad Choose the default binary format based on machine type.
Alpha is elf, not aout.
1998-01-13 06:00:56 +00:00
Steve Price
5ea3b08056 Add a couple of ?='s missed in the previous commit.
Noticed by:	Paul Allenby <pallenby@zibbi.mikom.csi.co.za>
1998-01-04 00:00:21 +00:00
Wolfram Schneider
c7d591d647 Add new variables:
LIBCOMPATDIR 	[/usr/lib/compat]
	LIBDATADIR 	[/usr/libdata]
	INCLUDEDIR 	[/usr/include]
	LIBEXECDIR 	[/usr/libexec]
1998-01-03 19:07:30 +00:00
Wolfram Schneider
32bebd8d26 Undo rev 1.11, the cd is null since NOOBJ is set.
444 -> ${SHAREMODE}
1998-01-03 14:04:55 +00:00
Satoshi Asami
68ce8f76e8 About one month worth of bsd.port.mk improvements.
(1) Allow multiple checksums of same file.
Submitted by:	hoek

(2) Add "deinstall" target as an alias to "pkg_delete $(make package-name)"
    (well, something like that, see diff for details).

(3) Add new port variable USE_AUTOCONF.   It appends BUILD_DEPENDS to
    devel/autoconf and runs autoconf before configure.
Submitted by:	ohashi@mickey.ai.kyutech.ac.jp (Takeshi Ohashi)

(4) Clarify USE_X11 and USE_IMAKE usage.

(5) Add new user-overridable variable MASTER_SITE_KDE.
Submitted by:	vanilla

(6) Add support for "Latest" package links.
Idea by:	Terry Lambert

(7) Try to catch obsolete tcl/tk installations that could cause problems.
Annoyed by various bogus commits by:	you-know-who
1998-01-02 10:37:14 +00:00
Jordan K. Hubbard
935f96e769 DISTRIBUTION is bin (we'll make the info dist another way). 1997-12-26 00:19:23 +00:00
Bruce Evans
939d5a3dd8 Only remove ${CLEANFILES} in the default clean rule. In particular,
don't remove a.out explicitly.  a.out should only be generated for
libraries and is removed in the non-default rule in bsd.lib.mk.

Removed undocumented cleanfiles target.  It was the same as the
default clean target except it didn't descend into subdirs.  It was
different from special clean targets in other ways.  This feature
hasn't been missed for more important targets.

Removed unused default cleandepend target.  bsd.dep.mk has a better
version which is always used.

Use a better rule for checkdpadd in the BINFORMAT=aout case.  This
mainly checks that ld -f is working correctly.  The old rule is
still available via `make BINFORMAT=foo checkdpadd' and should be
used to check for regressions under 2.2 where ld -f is not available.
1997-12-19 18:48:45 +00:00
Bruce Evans
c6d8090e2c Oops, the previous patch was botched. 1997-12-18 12:56:52 +00:00
Bruce Evans
f0adc726c5 Oops, rm -f can't handle empty lists. 1997-12-17 15:35:09 +00:00
Bruce Evans
c0849ac85c Oops, rm -f can't handle empty lists. 1997-12-17 15:18:53 +00:00
Bruce Evans
4e9229ba67 Don't clean files that we don't create.
Fixed style of empty test.

Include <bsd.libnames.mk> if `checkdpadd' is being made, so that it can
:e checked until it goes away.
1997-12-17 13:40:00 +00:00
Bruce Evans
e3ace70e1e Normally don't include <bsd.libnames.mk>. Include it in the !aout case
(as in bsd.prog.mk).  Include it if `checkdpadd' is being made, so that
it can be checked until it goes away.

Don't clean files that we don't create.

Fixed style of empty test.
1997-12-17 13:36:44 +00:00
Bruce Evans
079512d1a2 Removed gross dir file bootstrap rule again. It would break building
when there is no /usr/src/share/info if it were actually used.

Added comments to explain duplicated tex commands.

Use substitution in IFILENS to simplify some things.

Removed /g from many substitutions.  It is bogus for anchored matches.

Don't echo nothing.

Don't add things that wouldn't be built with the current options to
CLEANFILES (except for some cases involving tex).
Reviewed by:	wosch
1997-12-16 18:29:48 +00:00
Wolfgang Helbig
e525599ef1 Add libcalendar 1997-12-15 20:30:38 +00:00
Wolfram Schneider
b31409f379 Optimize rm(1) usage. 1997-12-14 15:38:47 +00:00
Wolfram Schneider
261d7bf1f1 Add LIBZ 1997-12-09 20:17:49 +00:00
Satoshi Asami
c9f6c74d48 Define MASTER_SITE_SUBDIR and PATCH_SITE_SUBDIR to default to "." so
we won't have double-slashes.

Add support for new port variable MANUAL_PACKAGE_BUILD.  If this is
defined as well as the user variable PACKAGE_BUILDING, the port will
be ignored.  This is used to mark ports that can be built normally
except on a machine that has a lot of conflicting ports (i.e., our
package building machine).
1997-11-20 05:33:56 +00:00
Satoshi Asami
6f6617ad09 Add new target "checksubdirs". It will warn about any subdirectories that
are not in the SUBDIR list.  It also knows about the "standard" directories
that are to be ignored ("CVS", "distfiles", etc.).
1997-11-20 05:31:44 +00:00
Wolfram Schneider
2504f8dc98 target(__target) -> target(${__target})
PR: bin/4736
Submitted by: Martin Kammerhofer <dada@sbox.tu-graz.ac.at>

Index: bsd.subdir.mk
===================================================================
RCS file: /usr/cvs/src/share/mk/bsd.subdir.mk,v
retrieving revision 1.18
diff -u -r1.18 bsd.subdir.mk
--- bsd.subdir.mk	1997/06/21 15:40:34	1.18
+++ bsd.subdir.mk	1997/11/09 18:04:33
@@ -59,7 +59,7 @@

 .for __target in all checkdpadd clean cleandir depend lint \
 		 maninstall obj objlink
-.if !target(__target)
+.if !target(${__target})
 ${__target}: _SUBDIRUSE
 .endif
 .endfor
1997-11-15 13:09:52 +00:00
Mark Murray
18fed7b641 Upgrade perl to perl5.004_04 1997-11-12 10:25:17 +00:00
Wolfram Schneider
5e1b557ef4 target(__target) -> target(${__target})
PR: bin/4736
Submitted by: Martin Kammerhofer <dada@sbox.tu-graz.ac.at>
1997-11-10 00:35:25 +00:00
Wolfram Schneider
70e244f8f6 Remove the comments hat just list the nested includes.
The lists don't provide significantly more information than
grep '\.include', and grep gives lists that are actually correct.
Submitted by: Bruce
1997-11-09 15:03:15 +00:00
Wolfram Schneider
6d840e43a4 target(__target) -> target(${__target})
PR: bin/4736
Submitted by: Martin Kammerhofer <dada@sbox.tu-graz.ac.at>
1997-11-09 14:37:40 +00:00
Bill Fenner
ca8fdeef9e Convert <, > and & into &lt;, &gt; and &amp; in port names, COMMENT and
DESCR files when building README.html .
Don't use control characters in sed statement.

Problems reported by "Chris G. Demetriou" <cgd@pa.dec.com> in NetBSD PR
pkg/4341.
1997-11-06 02:20:27 +00:00
Wolfram Schneider
81e5344479 Inlucde ../Makefile.inc if exists. This make it easier to
build the Unix Seventh Edition Manual volumes 2.
1997-11-02 18:50:53 +00:00
Wolfram Schneider
534ac553a1 Undo rev 1.33 and 1.34: Build the HTML files in .CURDIR and
not in .OBJDIR so the hyper links will work again.
1997-11-01 19:45:02 +00:00
Bruce Evans
7ffe3d1c5d Oops, comment lines can't be indented either. 1997-10-21 10:39:27 +00:00
Bruce Evans
1bfc282680 Oops, comment lines can't be continued. 1997-10-21 10:36:07 +00:00
Bruce Evans
6e47de28bb Added -Wuninitialized to CWARNFLAGS. Warnings about uninitialialized
variables were lost when we removed -W, and 23 new ones including at
least one serious one have crept in for LINT.

Restored -Winline to CFLAGS.  This gives only 3 old warnings and 1 new
for LINT.
1997-10-21 06:53:24 +00:00
Wolfram Schneider
938d2a75bd Support output format html.
Add make variables INFO2HTML, TEX, DVIPS, DVIPS2ASCII.
1997-10-12 18:54:34 +00:00
Wolfram Schneider
3f3e72d5f9 Do not use an intermediate file. The intermediate filename will go
into the info output which may breaks other programs (e.g. info2html).
1997-10-11 17:30:18 +00:00
Wolfram Schneider
8d20e51f0a Bugfix for rev 1.41:
makeinfo does not understand the tex command \input
1997-10-09 18:14:18 +00:00
Satoshi Asami
f210c44ab8 Install ${PKGDIR}/MESSAGE as /var/db/pkg/${PKGNAME}/+DISPLAY if it exists.
Reviewed by:	kiri
1997-10-08 05:04:48 +00:00
Jordan K. Hubbard
97fe7f477f Changes to support full make parallelism (-j<n>) in the world
target.
Reviewed by:	<many different folks>
Submitted by:	Nickolay N. Dudorov" <nnd@nnd.itfs.nsk.su>
1997-10-05 09:40:24 +00:00
Wolfram Schneider
7c31952e23 Delete redundant entries.
Run tex twice due cross references.
Cleanup many tex generated files in `make clean'
Format latin1 output in 80 characters column (was ~110 characters).
1997-10-04 13:00:56 +00:00
Wolfram Schneider
4e8f5527a1 Support output formats dvi, ps, latin1. 1997-10-01 21:35:14 +00:00
Peter Wemm
e782d0b55d Restore the BINFORMAT?= in sys.mk, or it's painfully difficult to use
.if in Makefiles.  bsd.prog.mk and bsd.lib.mk do not depend on it however.

Allow overriding of the -soname arg when building the lib*crypt.so* libs
since libdescrypt.so and libscrupt.so both need a -soname of libcrypt.so
so that the symlink is obeyed at runtime rather than at compile time.
1997-09-05 11:45:15 +00:00
Peter Wemm
3ec75cc6df Change the BINFORMAT definitions so that they do not depend on sys.mk,
since 2.1.x make(1) apparently does not have the -m switch to set both
the the bsd.*.mk and sys.mk location, and this breaks 'make world' from a
2.1.x system.
1997-09-05 09:09:56 +00:00
Peter Wemm
8c05a446bf A first cut at some rules for building elf shared libs. Of particular
note, using "-Wl,-f" to generate a library objects list doesn't work
anymore since the hack to ld hasn't been incorporated into binutils-2.8.
(and the -f switch is used for something else already)

This is disabled by default, don't panic! :-)
1997-08-30 23:23:18 +00:00
Bruce Evans
662773e296 Fixed cleandepend target. Subdirectories weren't handled unless SRCS
was defined.
1997-08-26 16:54:33 +00:00
Satoshi Asami
2722459822 Add "distclean" to list of targets to descend into subdirs for. 1997-08-22 11:16:15 +00:00
Satoshi Asami
45d47e069f (1) Be nicer about mtree file missing. (Actually, just suggest where
you can get one from.)

(2) Use "reinstall" as DEPENDS_TARGET if target is "reinstall".  In
    particular, this will make it possible to do a "make reinstall" on
    several NFS clients and have them install all dependencies
    correctly.
Tested by:	davidn
1997-08-20 03:44:14 +00:00
Satoshi Asami
2799473b0c Merge buildworld/installworld patch to Makefile from RELENG_2_2. Patch
a couple *.mk files to enable -current world building on really old
machines (e.g., 2.1.5).

Reviewed by:	too many many people to list here, special thanks to bde
1997-08-05 03:49:49 +00:00
Satoshi Asami
e89ac5b08b Do not set the application variable LDDESTDIR. Note that it is still honored
in a few places (in bsd.lib.mk and bsd.prog.mk); this merely fixed part of
the brokenness by not setting it here.

This fixes building of secure telnetd when DESTDIR is defined.
(Otherwise, it will try to link libtelnet from ${DESTDIR}/usr/lib.)

Reviewed by:	bde, jkh
1997-07-31 06:12:04 +00:00
Bruce Evans
5d08f31126 Don't use !empty() on the potentially unset variable MANBUILDCAT. Using
it broke "everything" unless MANBUILDCAT was set.
1997-07-25 11:17:12 +00:00
Bruce Evans
87d75709bb Removed a stray `.if' that broke everything. 1997-07-25 10:43:55 +00:00
Paul Traina
5191ded867 Allow optional building of preformatted manual pages.
Reviewed by:	wosch
1997-07-24 18:39:46 +00:00
Bruce Evans
2e9b23b0ba Added ${KMOD} to CLEANFILES. ${KMOD} gets created if you run `make load'. 1997-07-21 16:04:41 +00:00
Mark Murray
5a93a1d726 Changes for perl-5.004_01 1997-07-17 17:47:36 +00:00
Satoshi Asami
7a9059f331 (1) Add preliminary support for architecture/operating system-dependent
patches and files.  Note this is just for testing -- I don't
    expect "patches.OpenBSD" or "Makefile.alpha" start cropping up on
    our ports tree just yet!
Pretty much ignored by: the ports/committers list

(2) Add "SH?=/bin/sh" to the list of command-name macros.  Use it.
Checked by: recompiling all packages
1997-07-10 02:29:51 +00:00
Bruce Evans
ed2be8eabe Removed temporary SMP header fix. 1997-06-30 23:37:54 +00:00
David E. O'Brien
4b287c3d4b ``-C ${WRKDIR} -xzf'' are no longer the default args for EXTRACT_BEFORE_ARGS 1997-06-29 10:51:55 +00:00
Paul Traina
3d8cd70cec Make NOSHARED = no / NOSHARED = NO do what you'd expect. 1997-06-28 08:14:10 +00:00
Satoshi Asami
0c3a571ce3 Add new variable USE_PERL5. It is similar to USE_GMAKE, except that
it also sets RUN_DEPENDS (USE_GMAKE is BUILD_DEPENDS only).

The (immediate) purpose of this is to avoid having to change 70
zillion ports when the version of perl changes.  Also, when perl5 is
pulled into -current, this will become a no-op in -current's
bsd.port.mk.

Reviewed by:	jfitz
1997-06-24 07:16:21 +00:00
Jordan K. Hubbard
398ac038db Change the distribute targets so that a given item in our source tree
can place itself into n distributions, where n >= 1.
1997-06-21 15:40:34 +00:00
Satoshi Asami
e1eecc081e Add `B' to list of flags to pass through from C*FLAGS when using mkdep
(bsd.dep.mk) and compiling assembly language sources (bsd.lib.mk).
This doesn't change anything for our current source tree, but if you
want to use the -B switch in C*FLAGS to specify the location of
compiler subprograms, now you can do it.

Reviewed by:	bde (implicitly)
1997-06-18 03:39:34 +00:00
Satoshi Asami
ab6e6dd2aa Move the "umask ?= 0022" check (a warning only) from the default
"do-install" target to the beginning of the "install" meta-target, so
that ports that define their own do-install will also run it without
having to duplicate it themselves.

Tested by:	rebuilding all packages
1997-06-18 03:20:22 +00:00
Satoshi Asami
b3e17ba2cf Add "-I${DESTDIR}/usr/include" to CFLAGS if DESTDIR is defined, just
like bsd.lib.mk and bsd.prog.mk.  It doesn't add it to CXXINCLUDES, I
don't think anybody has written a kernel module with C++.  (Not that I
think DavidG will allow it anyway. :)

Reviewed by:	bde
1997-06-18 03:10:31 +00:00
Satoshi Asami
c679de5e1d (1) Use the new BSD.x11.dist mtree file to create directories under
/usr/X11R6 if USE_IMAKE or USE_X11 is set.  It is mostly designed
    after the XFree86 distribution, but also includes some of our own
    goodies (libexec, share/doc, etc/rc.d).

(2) Full support for per-port dependency target.  An optional
    ":<target>" can be added to any of the *_DEPENDS variables.  Do
    not attempt to print out anything about dependencies if NO_DEPENDS
    is set (there was already too much code duplication, and this
    extra colon has really pushed it over the limit).
Requested by: jfitz

(3) Make "reinstal" pmake-safe.
Reminded in an e-mail from: jkh
1997-06-04 00:12:19 +00:00
Wolfram Schneider
05567545f5 Add a `strip' target which remove the ^H from plain text files. 1997-05-25 12:43:06 +00:00
Doug Rabson
f8a7448fcc Add "-assert pure-text" to the link line. The warnings about RRS
relocations in text sections are now dependant on this flag.
1997-05-23 17:50:35 +00:00
Satoshi Asami
15db27b831 Change CXXINCLUDES to use "g++" explicitly. CXXINCLUDES was defined
with ${CXX} at the end; the only problem was, the directory name is
"g++" and ${CXX} is defined as "c++" in sys.mk.
1997-05-23 08:38:46 +00:00
Brian Somers
75795a87aa Add LIBALIAS. 1997-05-23 04:48:23 +00:00
Wolfram Schneider
0d13363288 Add variable LPR for printer command.
Murphy's Law: define LPR=true in /etc/make.conf if you don't want
tomorrow find 3 paper copies (ascii, latin1, postscript) of the
handbook in your printer (or someone else printer on the other half of
the world).
1997-05-11 10:42:00 +00:00
Wolfram Schneider
70c8851f9b Support compressed output. Default is uncompressed output format.
Fix print target.
1997-05-11 00:32:14 +00:00
Doug Rabson
77e25db56d Add SMPHDRS to CLEANFILES instead of replacing its current value. 1997-05-06 14:29:56 +00:00
John Polstra
ef431e2e9e Use "gcc -shared" instead of "ld -Bshareable" for building shared
libraries.  Remove the now-unneeded CPLUSPLUSLIB hack.  I will also
remove the CPLUSPLUSLIB definitions from the Makefiles that use it,
after the dust settles.

Use gcc's LIBRARY_PATH environment variable to handle DESTDIR,
instead of -L flags in LDDESTDIR.  LIBRARY_PATH is documented in
the gcc info pages.  It is better than using -L flags, because it
modifies the search for start-up files as well as for libraries.
A new variable LDDESTDIRENV is used to contain the normally-empty
LIBRARY_PATH environment setting.

LDDESTDIR is no longer set in <bsd.lib.mk>.  It is still honored for
the time being, because a couple of userland Makefiles still (wrongly)
set it.  These should be fixed, and LDDESTDIR should vanish.

Removed the commented-out "LDDESTDIR+=-nostdlib", because "gcc -shared"
doesn't link in any standard libraries anyway.

Removed the ".if defined(LDADD)" around the _EXTRADEPEND target for
shared libraries.  This target is always necessary now, because
c++rt0.o is linked into every shared library.

Don't merge this into -2.2 without first merging the support for
"gcc -shared".
1997-05-04 21:30:40 +00:00
Andrey A. Chernov
33293868ee Add ascii to comment describing default FORMATS value too
(see previous commit)
1997-05-02 05:07:45 +00:00
Andrey A. Chernov
d228db0cbc Add ascii to default formats list.
latin1 looks very ugly on Russian screens/printers and users should
be able to print/view handbook first without inner knowledge of
bsd.sgml.mk tuning.
1997-05-02 05:02:54 +00:00
Jordan K. Hubbard
f40b37bdb9 Put the "grossness" back; it had a purpose and anyone screwing around
with these files MUST understand what a `make release' does before
making changes like this or get nasty-grams from me when my builds start
falling over.  In fact, if they can't test "make release" after making
such changes then they *should leave these files completely alone*.
Thank you.
1997-05-01 01:15:55 +00:00
Steve Passe
7f7578c815 removed:
opt_smp_invltlb.h
from:
SMPHDRS=        opt_smp.h opt_smp_invltlb.h

SMP_INVLTLB is no longer a valid config option, the invalidation of the TLB
via inter-CPU IPIs is now standard when APIC_IO is used.
1997-04-30 21:54:01 +00:00
Bruce Evans
035e8553c0 Fixed the SMP fixes:
- fixed dependencies so that `make depend' isn't necessary.
- added new files to CLEANFILES.
- fixed style.
1997-04-30 20:56:37 +00:00
Bruce Evans
409ac84cb2 Added trailing slash to ${CANONICALOBJDIR} in tests for directories,
so that /usr/obj can be a symlink to an existing directory.
1997-04-30 17:04:11 +00:00
Bruce Evans
c0bb409c43 Oops. The previous change duplicated the grossness instead of removing it. 1997-04-30 17:03:09 +00:00
Bruce Evans
a460096719 Removed gross dir file bootstrap rule. Keep depending on the dir
file so that we fail if it isn't already installed.  The bootstrap
is now done by `make install' in the top-level src directory.  As
well as being gross, the rule didn't actually work for src trees
other than /usr/src, and this is difficult to fix since the whole
src tree may not exist.
1997-04-30 16:33:43 +00:00
Andrey A. Chernov
ba11dfa74c bugfix: 'make depend' cause all LKMs rebuild 1997-04-30 06:04:17 +00:00
Satoshi Asami
29c78eecc2 (1) Change logic for dependency: instead of defining "is_depended"
(default: IS_DEPENDED?=install) target on the depended port, call
    DEPENDS_TARGET (default: install) from the depending port.

    Other than being more flexible (some ports don't require the
    dependency to be fully installed: see ghostscript4), this seems
    like a more natural thing to do.  (I never understood the
    convoluted logic that was used before.)

    By building packages with "DEPENDS_TARGET=package", I can avoid
    file-sharing problems (like gs3 binary going into the gs4
    package).

(2) Add new variable PATCH_SITE_SUBDIR and separate it from
    MASTER_SITE_SUBDIR.  Fixes linuxls port and is a correct thing to
    do anyway.
Initially suggested and reviewed by: fenner

(3) Add new variable MASTER_SITE_LOCAL for local ports.  Defaults to
    LOCAL_PORTS subdir on ftp.freebsd.org's distfiles dir.
Submitted by: jkh
1997-04-30 03:12:05 +00:00
Steve Passe
066da549d4 Submitted by: Wolfgang Helbig <helbig@MX.BA-Stuttgart.De>
make world fails when it tries to build LKMs because the files
	opt_smp.h
	opt_smp_invltbl.h
are missing.

This patch to /usr/src/share/mk/bsd.kmod.mk is a temporary workaround.

Note that LKMs built in this way may or may NOT work properly with an
SMP kernel.
1997-04-28 00:02:22 +00:00
Bruce Evans
1c735bb4a5 Pass everything in ${LDADD} directly to the linker for `make depend'
to prevent complaints from the compiler about nonexistent libraries.
1997-04-23 18:47:42 +00:00
Bruce Evans
32899676a8 Fixed missing strip step in .S.o and .S.po rules.
Fixed back to front -X and -x strip flags in .m.o and .m.po rules.
Fixed disordered .m.o and .m.po rules.  What is .m?

Stripping probably should be removed.  It makes problems in library
functions hard to debug...
1997-04-23 10:26:18 +00:00
Satoshi Asami
052b42b8a0 Merge from 2.2. 1997-04-21 00:24:51 +00:00
Bruce Evans
7c0c241dea Updated comment about MANDEPEND (it was misplaced in bsd.prog.mk). 1997-04-19 14:55:17 +00:00
Bruce Evans
25070303ca Removed unused (and almost unusable) support for LDONLY. See ld/rtld
for how to use gcc to invoke the linker only.

Removed `.if 0'ed support for not creating intermediate object files.

Removed unused include of bsd.libnames.mk (LDONLY had the last reference
to it).

Removed stale misplaced comment about MANDEPEND.
1997-04-19 14:36:49 +00:00
Satoshi Asami
992b8e3ad2 (1) Change comment for USE_X11 to be more explicit about what it
means.

(2) Change MASTER_SITE_GNU etc. to use += instead of ?=, so users can
    specify a local mirror in /etc/make.conf and still get the full
    fallback in case something is missing.
Submitted by:	Narvi <narvi@haldjas.folklore.ee>

(3) Skip port if USE_X11 or USE_IMAKE is defined and /usr/X11R6
    doesn't exist.
Submitted by:	imp

(4) Add "-" in front of rmdir of ${DISTDIR}/${DIST_SUBDIR} in
    distclean target; the directory might not be empty because the
    subdir is shared with some other ports' distfiles.
1997-04-15 08:36:41 +00:00
Jordan K. Hubbard
6eb5e456f1 Support GLOBAL style tags. 1997-04-13 06:44:25 +00:00
John Polstra
9c8ff5b51f Use "-pg" instead of "-p" for generating profiled object files.
The two options differ only when linking, but "-p" is incorrect
because it is associated with the old-style "prof" command, which we
do not support.
1997-04-09 20:31:15 +00:00
Bruce Evans
663e9677d5 Use ld -f' (actually cc -Wl,-f') at `make depend' time to generate
almost perfect dependencies on crt0's and libraries.  DPADD and
bsd.libnames.mk should go away soon.  Use a new _EXTRADEPEND target
to implement this and to avoid editing of .depend when .depend isn;t
being rebuilt.  The afterdepend target doesn't seem to be good for
anything and is now unused.

Fixed LDDESTDIR for the DESTDIR case when ${SHLIBDIR} != /usr/lib.

Added commented-out -nostdlib to LDDESTDIR for the DESTDIR case.
The wrong libraries may be used without this; however it breaks
linkage to crt0 and libc.
1997-04-09 16:10:27 +00:00
Bruce Evans
3bfa8cb182 Include ${CURDIR}/../Makefile.inc as in most other `.mk' files. This
is most useful for centralizing the definitions of paths to contrib
directories.

Removed useless subshell and evil-hiding @ in the the rule for
initializing the info dir.
1997-04-07 16:46:40 +00:00
Mike Pritchard
9b99027472 Fix a typo that prevented the proper flag from being set
when USE_REFER is set.

Submitted by:	Sandro Sigala <ssigala@globalnet.it>
1997-04-04 01:25:32 +00:00
Marc G. Fournier
d54266d5b6 Remove ${MAKEFLAGS} on recommendation by Bruce, mainly because the reason
for adding it was so that -j3 carried through on a make -j3 world, but found
at least one circumstance where it breaks  'make depend'
1997-03-31 05:30:16 +00:00
Marc G. Fournier
f457e46e0d Add ${MAKEFLAGS} to ${MAKE} in _SUBDIRUSE so that something like
'make -j3 world' works

Jordan points out that this may not be the only place this is required to be
added, but so far, its the only one I've found to break -j3
1997-03-30 23:39:39 +00:00
Peter Wemm
f477a27251 Fix some bugs from bde's list (long lines) 1997-03-29 12:39:52 +00:00
Peter Wemm
4c987fb1a7 makeinfo can fail but still leave behind zero length files which cause
interesting problems because the resulting file is newer than the source
and this stops 'make' from rebuilding it.  Go via an intermediate file
and rename to make sure this doesn't happen.
1997-03-12 07:14:44 +00:00
Peter Wemm
a53988f831 Move the conditional declarations of ICOMPRESS_CMD and ICOMPRESS_EXT
to before they are used in .for loops and .SUFFIXES lists, or it
doesn't work!  Without this, 'make all' doesn't gzip the result as the
generated 'all' target doesn't seem to be defined completely.
1997-03-12 06:24:52 +00:00
Wolfram Schneider
d66539fb98 Add comments. 1997-03-09 23:10:56 +00:00
Wolfram Schneider
efda6cd9d5 Add reference to `PMake - A Tutorial' 1997-03-09 15:51:07 +00:00
Wolfram Schneider
fd45cc5c52 Add table of contents. Remove stale comments. 1997-03-09 02:23:40 +00:00
Wolfram Schneider
f5d738c8df Add comments. 1997-03-09 00:14:00 +00:00
Wolfram Schneider
f7ea12a0b6 Add new variables COMPRESS_CMD and COMPRESS_EXT.
bsd.doc.mk:
	rename GZIPCMD to DCOMPRESS_CMD, add DCOMPRESS_EXT
bsd.info.mk:
	rename GZIPCMD to ICOMPRESS_CMD, add ICOMPRESS_EXT
	set INFOTMPL to ${INFODIR}/dir-tmpl
bsd.man.mk
	rename ZEXTENSION to MCOMPRESS_EXT, MCOMPRESS to MCOMPRESS_CMD
1997-03-08 23:46:56 +00:00
Bruce Evans
870d983770 Don't use dot in a chown command. The chown command has been a no-op
for years since it is for a symlink.
1997-03-08 19:47:08 +00:00
Satoshi Asami
07a557af5e Make COMMENT and DESCR variables (just like PLIST). Will be useful
when you want to share all of PKGDIR except for one file.  (See upcoming
multilingual nvi ports.)
1997-03-06 08:28:15 +00:00
Wolfram Schneider
d4ae7dd925 Cosmetic change: remove a redundant ${.OBJDIR} in the html realinstall
target. The current dir is ${.OBJDIR} so ${.OBJDIR} shouldn't be in
the rule.

Pointed out by: bruce
1997-03-02 15:52:34 +00:00
Wolfram Schneider
5fe2071d68 Put html output into the obj directory and not into the source directory. 1997-03-02 00:16:49 +00:00
Satoshi Asami
b7de6f6321 (1) Define ${LDCONFIG} and ${MV} to be full pathnames to ldconfig and
mv, respectively.  This will make Warner's life easier.

(2) Add new variable ${PLIST}, which defaults to ${PKGDIR}/PLIST.
    If you need to have different PLISTs for different configurations,
    you can either

    @ pre-fabricate all of them and switch ${PLIST} to point to the
      appropriate one, or

    @ use sed/awk/perl/whatever to create the correct one from
      pkg/PLIST and set ${PLIST} to it.

    It is still recommended to have a file called "pkg/PLIST" so
    people can do "grep badprog /usr/ports/*/*/pkg/PLIST" and such.

(3) Move /var/db/pkg/${PKGNAME} clash detection to before the
    installation (instead of after) and make it fatal, with an error
    message suggesting a workaround.

(4) Don't make distclean fail if DIST_SUBDIR is set and the
    subdirectory does not exist.

(5) Don't put "@pkgdep Error code 2.  Stop." kind of garbage into
    packing list if depended port's directory doesn't exist.  Instead,
    print out a message to stderr.
1997-02-23 13:24:45 +00:00
Peter Wemm
b97fa2ef50 Revert $FreeBSD$ to $Id$ 1997-02-22 14:13:04 +00:00
David E. O'Brien
71e1edb218 Submitted by: Dave Cornejo <dave@dogwood.com>
ftp.shsu.edu is no longer maintained - they refer you to the mirror I
maintain at ftp.cdrom.com
1997-02-17 08:20:36 +00:00
Bruce Evans
b96ab0b039 Removed bogus NOOBJ ifdef which was added in rev.1.18-1.19. SRCS is
for C sources only and must not be set if you don't want C objects.

This should fix PR2748.

This should go in 2.2.
1997-02-17 07:52:37 +00:00
Wolfram Schneider
934d03e415 Bugfixes for HTML output:
- use ${MACROS} for macro package and not hard-coded -ms
	   Note: -me is currently not supported by unroff(1).
	 - use only ${SRCS} as input files.
1997-02-16 22:23:44 +00:00
Wolfram Schneider
d4be225939 Remove unsupported man section 3f 1997-02-16 11:46:54 +00:00
David E. O'Brien
765c61ce45 Fixed URL for ftp.tex.ac.uk in MASTER_SITE_TEX_CTAN.
Added ftp.shsu.edu and ftp.dante.de used by jmz in the latex port.
1997-02-16 02:51:17 +00:00
John Polstra
261003872e In the "cleanobj" target, always remove the old-style "${.CURDIR}/obj"
links if they exist.  The old-style links confused make and caused
problems when upgrading from a 2.1.5 or 2.1.6 system.

I will merge this into -2.2.
1997-02-14 05:09:07 +00:00
Jean-Marc Zucconi
10a84c544f Fix a typo in the .s.o rule: asssembler -> assembler 1997-02-14 01:42:29 +00:00
Wolfram Schneider
da5636b6b2 Support PRINTERDEVICE "html" using the troff translator unroff(1).
It works in most cases, but not all (e.g. nvi).
1997-02-13 03:26:02 +00:00
Satoshi Asami
3344f87d7d Change $FreeBSD$ back to $Id$. I'm sorry, but it's been too long and
it's getting too hard to diagnose people's problems with this.
1997-02-12 11:04:58 +00:00
Paul Traina
125e9dcf6c Put libopie.a in libnames 1997-02-07 17:06:24 +00:00
Paul Traina
88636c0b6f Don't use /tmp for afterdepend cleanup target 1997-01-26 01:37:05 +00:00
Satoshi Asami
17abb434aa (1) Add ${DESTDIR} to ${LOCALBASE} and ${X11BASE}, and remove it from
${PORTSDIR}.  This undoes the changes done in rev. 1.38 and 1.59
    (part of the bsd.port.mk pre-dawn ages I've never understood).
Requested by: jkh

(2) Add new variable NO_IGNORE that will override any IGNORE causes.
    This is just a little hack to allow building of REQUIRES_MOTIF
    ports and its dependencies only etc., so don't document it.

(3) Update +REQUIRED_BY files as necessary.  Now you should be able to
    delete ports that have runtime dependencies without pkg_delete
    complaining about this file missing.
1997-01-25 02:45:09 +00:00
Wolfram Schneider
9ca816cb59 Move gzip(1) option -c from commandline into variable GZIPCMD. Not
all compress programs (e.g. cat(1)) support the option -c.
1997-01-14 11:59:33 +00:00
Satoshi Asami
ade0fb0da9 Move $FreeBSD$ up right next to $NetBSD$ (oh, the solidarity! :). 1997-01-14 07:55:46 +00:00
Jordan K. Hubbard
1130b656e5 Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
1997-01-14 07:20:47 +00:00
Jordan K. Hubbard
aac45e814c Make sure dir file exists before we call install-info, which requires it.
Sorry, I know it's a gross fix to call share/info's install target as
a side-effect, but that's less gross than propagating the work-around
changes to files which have nothing to do with the info system.
1997-01-13 23:44:20 +00:00
Satoshi Asami
79353ba0f7 Skip non-existent subdirectories. The diff is rather large because
the original logic went into a section of code assuming some
incarnation is there, but it's basically a "test -d" fix.  Closes PR
ports/2082.

Reviewed by:	max ("although I didn't test it, it looks fine")
1997-01-13 02:13:19 +00:00
Wolfram Schneider
0f22460de7 Add comments about variables and targets. Incomplete, see '???'. 1997-01-12 16:20:13 +00:00
Wolfram Schneider
edc8135799 Add a general comment about this include file. 1997-01-12 16:12:40 +00:00
Satoshi Asami
b2502fb7ef Add OpenBSD support. Change some comments to reflect the fact. Also:
(1) Change commented out MAINTAINER to FreeBSD_MAINTAINER and
    OpenBSD_MAINTAINER.  These are not comments anymore, so we may
    even use it in the future.

(2) Instead of the ".if ${OPSYS} = "NetBSD" hack, use ".if exists()"
    to find the location of md5 an tar.  Play similar trick for fetch
    (OpenBSD uses /usr/bin/ftp which groks http: addresses).

This commit includes most of the changes made in 1.242 (although many
of them are done differently after more discussion).  One thing that
is conspicuously missing is NOMANCOMPRESS, which has been postponed
until Warner figures out what exactly the situation is on the OpenBSD
ports paradigm.  (In a nutshell, we can't just define NOMANCOMPRESS in
this file even if uncompressed manpages is the default for OpenBSD,
because that will take away the ability of individual users to select
manpage compression.)

Reviewed by:	imp@openbsd.org
1997-01-12 12:37:48 +00:00
Satoshi Asami
0f003de40d (1) New variable, SCRIPTS_ENV, which is passed to scripts/configure
and scripts/{pre,post}-* as environment vars.  Also, if BATCH is
    set, "BATCH=yes" is automatically added to SCRIPTS_ENV.
    (Requested by: max)

(2) The INSTALL_* macros are added to SCRIPTS_ENV and MAKE_ENV as
    BSD_INSTALL_*.  (Requested by: obrien)

(3) New variable MOTIF_ONLY, which will only build ports with
    REQUIRES_MOTIF defined.  This doesn't do dependencies right (what
    if the depended port doesn't need Motif) yet.

(4) Try not to clean the same port twice in clean-depends when (for
    instance) it's defined in both BUILD_DEPENDS and INSTALL_DEPENDS.
    Note that it won't check chained dependencies so you may still see
    the same port cleaned multiple times, but checking that far will
    surely make this run slower than the un-"optimized" case so I left
    it as is.  (Requested by: jkh)

(5) Ignore *.rej files in patches/ directory in addition to *~ and
    *.orig.
1997-01-12 11:48:26 +00:00
Peter Wemm
be216bf89f one more tweak to make it fly without INFO defined. (like bsd.prog.mk) 1997-01-12 07:30:23 +00:00
Peter Wemm
167a634704 oops, missed a ${BINDIR} -> ${INFODIR}. Also remove the slash between
${DESTDIR}/${INFODIR}.
1997-01-12 07:15:24 +00:00
Peter Wemm
a6e6861d65 recover spammed revisions 1.20 and 1.21. This fixes the breaks in the
builds when INFO is commented out.

Pointed out by: bde
1997-01-12 07:05:07 +00:00
Steve Price
c3e3432cd3 Revert changes to make the .y.c rule 'make -j n' safe. 1997-01-12 04:01:25 +00:00
Joshua Peck Macdonald
38a1b9404b In an attempt to make the new info rules bootstrap themselves, make
the rules conditional on NOINFO not being defined, just like NOMAN.
1997-01-11 10:51:36 +00:00
Joshua Peck Macdonald
0d7f401441 Change the installation rules. It now copies an empty dir file
into the DESTDIR in the beforeinstall rule in src/share/info/Makefile.
Then each info file that gets installed into the dir file using
install-info.

It has struck me that there's going to be a problem bootstrapping
this change, since parts of install will fail until install-info
is installed.  Maybe someone who knows best how to deal with this can
fix it.
1997-01-11 02:39:37 +00:00
Wolfram Schneider
7ed8349293 if !(command) -> if ! (command)
the ksh and I guess some other shells want a space
between '!' and the next command. This problem exist since rev 1.207
1997-01-10 21:02:27 +00:00
Andrey A. Chernov
f91ef3d095 FIx typing error .SRCDIR -> SRCDIR
Submitted by:  bde
1997-01-06 02:30:13 +00:00
Steve Price
e10e3950fa Make the .y.c rule 'make -j n' friendly.
Inspired by: bde and brian@mediacity.com
1997-01-06 02:07:35 +00:00
Andrey A. Chernov
8a1590b4dc Use SRCDIR to handle non-current directory docs
Use INFO* macros from bsd.own.mk
1997-01-05 15:33:36 +00:00
Wolfram Schneider
236fc12afb add new variable NOMLINKS
NOMLINKS If you do not want install manual page links. [not set]
1996-12-26 22:37:30 +00:00
Satoshi Asami
887070162e I'm sorry, this kind of commits need to be reviewed by me, espicially
in a time like this (i.e., right before the release).

Back out rev 1.242, also add a stronger note above the MAINTAINER.
1996-12-26 01:02:29 +00:00
Warner Losh
e107b29a74 Integrate changes from OpenBSD's efforts to use the FreeBSD ports system.
Generalize the selection of programs to run based on the existance of files
rather than the OS names that we find.  Add comments about me being the
keeper of the OpenBSD mods of this file.  Use ftp on OpenBSD rather than
fetch since OpenBSD's FTP supports urls and there is no fetch.

Reviewed by:	Joerge Wunch, Jordan Hubbard, and others in ports I've forgotten
Obtained from:	OpenBSD with changes from me.
1996-12-25 18:19:22 +00:00
Satoshi Asami
dad7105a9b Suggested by: msmith
Add a little more sophistication to the md5 grep command.

Change the md5 checksum logic a bit.  Now, the message is printed
out for every successfully/unsuccessfully matched checksum, and it
aborts at the end if there was a mismatch.  Also, make missing checksum
and IGNORE file inconsistency fatal, as there is now no reason to have
a missing checksum.
1996-12-23 02:49:35 +00:00
Wolfram Schneider
dbab5e88a6 Do not use variable PRINTERDEVICE as printer name. 1996-12-22 16:16:13 +00:00
Mike Pritchard
11205c3459 Change bsd.doc.mk to use the variable PRINTERDEVICE instead
of PRINTER for defining the default output device when formatting
documents for installation.  This prevents problems if the
user has defined PRINTER for use by lpr.

Closes PR# 1437.
1996-12-19 22:40:43 +00:00
Satoshi Asami
16f5775ab2 Add missing targets (extract, patch) in the IGNORE (INTERACTIVE &
PATCH, etc.) section.  Also sort them in order of execution like other
parts of this file.
1996-12-18 02:27:44 +00:00
Satoshi Asami
f31d4d080c Add new variable IGNOREFILES, to be set to list of files that you don't
want md5 checksum calculated.  (It will create an entry in files/md5
with rhs "IGNORE".)  Now it's safe to do a "make makesum" on all ports.
1996-12-17 12:20:53 +00:00
Wolfram Schneider
284e5324dd update comments 1996-12-17 01:29:09 +00:00
Satoshi Asami
f813e3b8d2 Change delimiter of substitution that uses MANLANG from .' to %', so
things like `ja_JP.EUC' will work.

Suggested by:	max
1996-12-12 04:32:25 +00:00
Satoshi Asami
7daf790957 Extend the manpage compression handling a bit.
(1) MANLANG is now a list (defaulting to ""), so if you have English
    and Japanese-EUC versions of the manpages, you can say something
    like `MANLANG= "" ja_JP.EUC' and manpage compression will DTRT.

(2) Add new variables MAN%cPREFIX (where %c=[1-9LN]) which default to
    MANPREFIX (which defaults to PREFIX), to specify per-section
    prefixes.  In particular, this handles the cases in many perl
    ports, which install man1pages into man/man1 and man3pages into
    lib/perl5/man/man3.

Note these modifications won't change the behavior of existing
variables used in previously-approved ways, so any Makefile that
worked before will still continue to work.
1996-12-11 10:17:44 +00:00
Satoshi Asami
6df8f78ac3 Add support for uncompressing manpages that are already installed
compressed.

Requested by: obrien
Change name of -D option (to pkg_create) file to MESSAGES.  (More
friendly to filename completion.)
1996-12-11 04:51:31 +00:00
Satoshi Asami
2b2b1ca931 Submitted by: fenner
(1) Print out reason when port is ignored because of NO_CDROM,
    RESTRICTED, IS_INTERACTIVE, (not) IS_INTERACTIVE, BROKEN,
    REQUIRES_MOTIF or NO_PACKAGE.

Submitted by: obrien
(2) Add new special file in pkg/: DISPLAY.  (Cf. man pkg_create)

(3) Minor bugfix in clean-depends target, which sometimes executed
    "make clean" in the current directory.  (Which is probably ok, but
    is wrong nonetheless.)
1996-12-09 07:08:16 +00:00
David E. O'Brien
deff0e9566 Was using new URL (ftp://ftp://) before the RFC has been voted on. :-)
Obtained from:	make fetch
1996-12-08 05:40:38 +00:00
Satoshi Asami
c69930e5e3 Optimize by changing "sort | uniq" -> "sort -u". "make index" is now
412 secs instead of 498 secs on my machine!

Submitted by:	fenner
1996-12-04 05:53:17 +00:00
Satoshi Asami
2189449696 Merge from RELENG_2_2 (duh). See rev 1.227.2.4 for details. 1996-11-30 10:31:50 +00:00
Satoshi Asami
c0e21d1ce9 Just realized that the spacing after "==>" is not consistent. I'm
terribly sorry, please merge this into 2.2 as well.
1996-11-14 11:45:42 +00:00
Satoshi Asami
e27532f3a3 Oops, forgot to silencethe gzip command to compress manpages.
It will be nice if this went into 2.2, I guess.

Reminded by:	max
1996-11-14 11:35:19 +00:00
Satoshi Asami
a6fc2e2bd1 (1) There is no default "orphans" for CATEGORIES, it simply fails if
you have a Makefile without one.

(2) Fix case when user had DISTDIR defined elsewhere and DIST_SUBDIR
    is also defined.  (Submitted by: max)

(3) Add several popular master sites as variables.  For instance,
    MASTER_SITE_XCONTRIB is defined to be a list of X11R6 contrib sites,
    which you can set MASTER_SITES to in your Makefile if you just
    want ftp.x.org or any of the mirror sites.

    There is also a new variable, MASTER_SITE_SUBDIR, to specify which
    subdirectory of the master site your tarball is located.

    One nice thing this enables the user to do is to define the
    nearest mirror site in /etc/make.conf.  This is especially useful
    for continents without a full FreeBSD master site.

    Eventually, we will probably split this into a separate file
    (bsd.port.sites.mk?), and add some more sites from all corners of
    the world.

    Right now, XCONTRIB, GNU, PERL_CPAN, TEX_CTAN, and SUNSITE are
    supported.

(4) COMPRESS_MAN command alias is replaced by MAN[1-9LN] variables.
    You just say "MAN1=foo.1 bar.1" and the make rules will
    automatically compress it for you if necessary.  (Idea by: obrien)

(5) New "distclean" target to delete distfile too.  (Submitted by:
    obrien)

(6) Chained dependency cleaning, can be turned off by NOCLEANDEPENDS.

Reviewed by:	the ports list
1996-11-13 11:37:40 +00:00
Bruce Evans
a400403a8c Turned off -W and -Winline so that the warnings that should be fixed for
2.2 are more obvious.  -Winline is unimportant, but -W gives thousands
of warnings for comparisions.  Turning off -W also loses warnings for:
- auto variables clobbered by longjmp.  Not much of a problem in the kernel.
- functions returning without a value.  I don't like losing this.
- an expression statement or the left side of a comma operand contains no
  side effects.  Turning this off also stops warnings for the low quality
  debugging macros in gsc.c and lpt.c.

Should be in 2.2.
1996-11-11 15:49:27 +00:00
Alexander Langer
32b97f0b55 Style changes: $(...) --> ${...}, consistent placement of -c.
Suggested by:	bde (via steve)
1996-11-07 01:46:47 +00:00
David E. O'Brien
7384599321 Set tabstops to 4 in vi like in emacs. 1996-11-03 07:51:59 +00:00
Steve Price
2be2be749b Add in POSIX 1003.2 mandated rules. NOTE: these
will only be enabled when the first non-comment line
of the Makefile contains the .POSIX directive.

Submitted by: Joerg Wunsch <joerg@freebsd.org>
1996-11-03 03:25:50 +00:00
Satoshi Asami
7bf5b94f9e (1) Add NetBSD support. Closes PR bin/1643.
Submitted by:	Jason Thorpe <thorpej@nas.nasa.gov>

(2) Remove the bogus "CAT+=" definition.  Closes PR ports/1703.
Submitted by:	Peter Childs <pjchilds@imforei.apana.org.au>

(3) Change MKDIR to "/bin/mkdir -p", remove "-p" from ${MKDIR}
    invocations.  Closes PR ports/1901.
Submitted by:	obrien

(4) Add a new macro variable COMPRESS_MAN, which will evaluate to gzip
    if NOMANCOMPRESS isn't set (default), or true if it is.

(5) Add a new variable NO_CHECKSUM, which will disable the md5 checksum.
Submitted by:	jkh

(6) Also, move NO_PATCH and NO_PACKAGE checks to right place in
    invocation order.

(7) Check for LIB_DEPENDS before installation too.  (It used to check
    only before extraction.)
Forgotten a long time ago by:	asami
1996-11-01 07:22:37 +00:00
Bruce Evans
272937b07f Oops, this wasn't supposed to have -Wcast-qual yet.
Also disabled -Wunused.  It caused too many warnings even for me.
The sign mismatch warnings should be fixed first.  They are more
important and harder to disable (they are controlled by -W, which
controls too many things).
1996-10-09 18:41:40 +00:00
Bruce Evans
6b30bfd370 Oops, forgot to cvs add bsd.kern.mk.
Centralized the definition of CWARNFLAGS into bsd.kern.mk.
1996-10-08 22:10:49 +00:00
Bruce Evans
9e72552ff0 Centralized the definition of CWARNFLAGS into bsd.kern.mk. 1996-10-08 22:09:03 +00:00
John Fieber
0764dce2cb Generate ISO-8859-1 text by default instead of US-ASCII. 1996-10-08 13:45:06 +00:00
Wolfram Schneider
7bc830bb88 add variables MODLOAD and MODUNLOAD for modlad/modunload commands 1996-10-06 22:10:35 +00:00
Wolfram Schneider
69d16a72e4 Create first HTML output and than ASCII. Generating
HTML formatted output is usually faster and we see SGML errors
earlier.
1996-10-06 21:55:18 +00:00
Peter Wemm
fbb10fbaa8 Add LIBSTDCPLUSPLUS
(can't use the '+' char in variable names, same as LIBGPLUSPLUS)
1996-10-04 08:55:05 +00:00
Peter Wemm
0ef8d11abe libresolv.a doesn't exist anymore... Hmm, what's the right thing to do
here?  Can we just undefine it?  What about 3rd party bmakefiles?
1996-10-04 08:52:43 +00:00
John Fieber
0f31813a98 1) If as link file was created by sgmlfmt, use it during installation.
2) The assignment of CLEANFILES in a .for loop was badly botched.  Now fixed.
1996-10-01 23:44:03 +00:00
Bruce Evans
2986df98eb Don't warn about non-canonical object directories if they have been
forced in any of the standard ways (MAKEOBJDIR was lost in the
previous commit).  Simplified the conditionals for this.

Restored comment about MAKEOBJDIR from rev.1.4.

Improved English in comments.
1996-09-29 18:28:55 +00:00
John Fieber
6712066d80 Add links file to CLEANFILES. 1996-09-29 18:21:16 +00:00
Nate Williams
7fc738cf77 The warning was triggering off the unused variable MAKEOBJDIR, instead
of the variable OBJLINK which is used in /etc/make.conf to build 'obj'
links in the current directory.  This caused lots of useless warnings
since if OBJLINK is defined ./obj will be created and used.
1996-09-28 19:39:18 +00:00
Bruce Evans
1a5ed802d2 Fixed dependencies on libraries which I broke in rev.1.39 of
bsd.prog.mk and didn't actually fix in rev.1.43 of bsd.lib.mk.
The library names must be defined before they are used in
dependencies.
1996-09-28 06:01:01 +00:00
Satoshi Asami
251d6f360e Back out changes in rev. 1.217 -- ${CONFIGURE_SCRIPT} is not
meant to rename the name of script in ${SCRIPTDIR}.
1996-09-24 06:48:22 +00:00
Andrey A. Chernov
55c8be64d1 Back out my brackets change, it is definitely make bug, (recently
introduced) because old make version I check do the right job.
1996-09-24 04:17:14 +00:00
Andrey A. Chernov
4400af91f7 Add brackets to change bogus make expression priority, i.e.
!defined(X) && $(A) != $(B)
parsed as
(!defined(X) && $(A)) != $(B)
and not as
!defined(X) && ($(A) != $(B))
Probably it should be fixed in make
1996-09-24 03:48:10 +00:00
Satoshi Asami
0a2bb16e68 Look on the CDROM for patch files too.
Submitted by:	max

While I'm here, add "${DIST_SUBDIR}/" at end of CDROM pathnames.  Also
add an empty declaration of PATCH_SITES next to MASTER_SITES to avoid
"variable recursive" error.
1996-09-23 09:27:59 +00:00
Bruce Evans
373fdd9648 Added a `checkdpadd' target to help check that ${DPADD} is consistent with
${LDADD}.  It doesn't handle internal libraries very well yet.
1996-09-20 16:17:07 +00:00
Bruce Evans
6a2c9543a5 Fixed and simplified `whereobj' rule. Use the not-so-new -V feature.
Echoing ${.OBJDIR} would work. but -V is more general.
1996-09-20 16:08:21 +00:00
Peter Wemm
0a5243c743 add -fgnu-runtime to the .m.o and .m.po rules, since we (will) have
the gnu libobjc rather than the NeXT one.  I do not understand objc
so I don't know the implications of this, but the gcc-2.7.2 libobjc is
built with this.
1996-09-19 07:01:45 +00:00
Peter Wemm
32b115257e disable the objwarn warning if NOOBJ is set.. We have quite a few places
in the tree that use things like bsd.prog.mk just to get the default
targets like install, tags, obj, clean, cleandir, cleandepend, but do not
actually build anything there.
1996-09-19 06:58:26 +00:00
Steven Wallace
b3618bcf57 .TARGETOBJDIR has been removed from make and CANONICALOBJDIR set in
bsd.obj.mk.  Also, a make target called objwarn checks to see
if ${.OBJDIR} != ${.CURDIR} and ${.OBJDIR} != ${CANONICALOBJDIR}
and outputs a warning.  (No warning for the latter if MAKEOBJDIR or MAKEOBJDIRP
REFIX is set).  objwarn is called from all targets in bsd.prog.mk, bsd.kmod.mk,
and bsd.lib.mk.

Reviewed by:	bde
1996-09-18 06:09:19 +00:00
Peter Wemm
eb0085f483 Workaround to (hopefully) fix the NOMANCOMPRESS case of the MANFILTER-using
man pages (eg: named/bind/etc).  In order to get (say) dig.1 to pass
through the filter and produce a new dig.1 for installing, I used an
intermediate file at build time, similar to the way the .gz man pages are
built.

I've not extensively tested this, but it seems to work for the known
cases where it was failing, and it only affects the NOMANCOMPRESS case
which was already broken.

Pointed out by: "Ph. Charnier" <charnier@xp11.frmug.org>, PR#1612
1996-09-16 14:13:40 +00:00
Bruce Evans
9b66eea42e Moved definitions of library names from bsd.prog.mk to a new central
file bsd.libnames.mk and include this file where necessary.  This fixes
null library names in ${DPADD}'s in library makefiles.
1996-09-05 18:05:08 +00:00
Bruce Evans
833e666181 Fixed make objlink' (and make obj' in the (non-default) OBJLINK case).
Running them twice usually destroyed the target binary.  E.g., the
second `make objlink' in `make objlink; make; make objlink' replaced
the `cat' binary by a symlink cat@ -> /usr/obj/usr/src/bin/cat.

`ln -fs' is unusable when the target might be a symlink that resolves
to a directory.  Then -f applies to a file in the directory and not
to the symlink.  This seems to be the standard (and sometimes useful)
behaviour.
1996-09-05 17:53:13 +00:00
Bruce Evans
35732dda77 BSD.usr.dist:
Added forgotten share/doc/psd/05.sysman and share/zoneinfo/America/Indiana.

bsd.doc.mk:
Nuked mkdir -p and wrong fixups of the leaf directory's ownerships and
permissions.  The doc tree should be well enough established for this
to be safe.  Installs to directories should use a trailing slash on
the directory name so installs to non-drectories are fatal, but I
didn't start changing them.

bsd.man.mk:
Nuked mkdir -p and wrong fixups of the leaf directory's ownerships and
permissions.  They were overkill to create just /usr/share/info.

zoneinfo/Makefile:
No changes yet.  zic creates directories with ordinary 755 permissions.
Why do we use 555 permissions for directories in /usr/share/zoninfo.
Why not for zoneinfo itself?  /proc and /dev/fd are the only other
directories in the system with 555 permissions.
1996-09-03 15:14:45 +00:00
Bruce Evans
09a8dfa260 Don't depend in the kernel on the gcc feature of doing arithmetic on
pointers of type `void *'.  Warn about this in future.
1996-08-31 14:48:13 +00:00
Peter Wemm
5e7d3affd4 Use MANFILTER everywhere instead of a couple of MANFILT typos.. 1996-08-26 10:55:32 +00:00
Wolfram Schneider
2d7765f39d /bin/echo -> ${ECHO}
/usr/bin/sed -> ${SED}
1996-08-25 21:07:38 +00:00
Jordan K. Hubbard
5c8baf29e9 Back out the recent DEPEND changes - as Bruce points out, it's bogus.
I'll leave any future Makefile hackery to him since he's clearly thought
about this a great deal more than I have.
1996-08-25 05:16:56 +00:00
Satoshi Asami
69ab93260f Use the new "file:" URL specification to fetch to check the CDROM
first if /cdrom/ports/distfiles exists.  If FETCH_SYMLINK_DISTFILES
is set, symlink the file instead of copying.

Reviewed by:	jhk
1996-08-24 09:28:48 +00:00
Jordan K. Hubbard
67cebbd1da Make it possible to turn the depend pass off entirely with a NO_DEPEND
variable.
Requested-By: wollman
1996-08-23 22:33:33 +00:00
Jordan K. Hubbard
8d26610d5f Add depend to all target so that it's explicit. It's only done once,
even if make all is run multiple times, since the depend rule looks for
an existing .depend file.
1996-08-23 16:49:06 +00:00
Satoshi Asami
8e67e42f63 Update explanation of *_DEPENDS, in particular note that bsd.port.mk
can now check existence of files specified by full pathnames, not only
executables.
1996-08-20 10:00:33 +00:00
Satoshi Asami
4dbc40f9a5 (1) Use INSTALL_PROGRAM where we attempt to pass this command line
to configure.

(2) Gently warn user for non-0022 umasks.

Submitted by:	"David E. O'Brien" <obrien@Nuxi.cs.ucdavis.edu> (1)
1996-08-18 10:53:16 +00:00
Satoshi Asami
38c3b03d54 (1) Ignore patches directory without a patch with a message instead of
bombing mercilessly.

(2) If that directory has a directory called CVS, remind the user of
    the existence of the "-P" option to cvs co and update.

(3) While I'm here, clean up the PATCH_DEBUG code a bit.  In
    particular, don't duplicate a whole bunch of code just for adding
    a single "echo" statement. ;)

Reviewed by:	the ports list
1996-08-17 10:16:02 +00:00
Satoshi Asami
bd01a3d4e1 (1) Add myself as MAINTAINER (of this file) -- commented out so it
won't be pulled into individual ports that include this file. ;)

(2) Document MOTIFLIB, it's not set in the ports Makefiles but is
    important for Motif ports (already documented in the handbook).

(3) Add INSTALL_PROGRAM, INSTALL_SCRIPT, INSTALL_DATA, INSTALL_MAN as
    "aliases" of the appropriate install command line, for use in *-install
    targets.

Reviewed by:	the ports list (item 3 only)
1996-08-15 05:55:33 +00:00
Peter Wemm
d5dcd8e63f Add a hook ``MANFILTER''. This optionally specifies a command to
pipe the man page source through before compressing or installing.
This can be used to do do (eg) sed substitution on man pages from
3rd party packages (in particular, ncurses and bind-4.9.4)

This should not affect anything already in the source tree.
1996-08-11 12:31:57 +00:00
Peter Wemm
6ba7f9ff84 Replace some leaky `cpp | as'' pipelines with `cc -x <lang>'' commands
to do the preprocessing and assembling.

(I've been running this for months, and had forgotten about it)
1996-08-11 12:24:44 +00:00
Satoshi Asami
e3b68a1b89 Make explanation of BUILD_DEPENDS less confusing.
Requested by:	Narvi <narvi@haldjas.folklore.ee>
1996-08-07 08:25:08 +00:00
Jordan K. Hubbard
62eba8760b Use tsort -q 1996-08-03 06:43:05 +00:00
Jordan K. Hubbard
293fcf5e41 The clean rule in here was bogus. 1996-07-27 22:16:54 +00:00
Andreas Klemm
467652583c Fixed bug, that CONFIGURE_SCRIPT in a port's Makefile doesn't have
any effect. The target do-configure used ${SCRIPTDIR}/configure
instead of ${SCRIPTDIR}/${CONFIGURE_SCRIPT}.
	-andreas
1996-07-27 11:54:30 +00:00
Peter Wemm
fb547ee202 Fix the recently added whereobj target.
Add missing end-of-line backslash
Remove two extra @ characters
1996-07-14 11:09:12 +00:00
Paul Traina
120a065638 Add whereobj target to find that pesky obj dir 1996-07-12 06:01:55 +00:00
Jordan K. Hubbard
5f1a3c08d6 Remove now-unused SRC_ENCAPSULATION hack. 1996-07-05 06:12:12 +00:00
Jordan K. Hubbard
68e00b9233 Fix the ordering dependency I broke. 1996-06-30 22:16:19 +00:00
Poul-Henning Kamp
209396df73 Make cleandirs more safe
Suggested by:	bde
1996-06-29 03:12:49 +00:00
Gary Palmer
502d775872 Add a missing space in a comment 1996-06-26 21:12:28 +00:00
Jordan K. Hubbard
4c4f0f7d51 Add default targets for cleandepend and objlink.
Submitted by:	Michael Hancock <michaelh@cet.co.jp>
1996-06-24 21:33:23 +00:00
Jordan K. Hubbard
cd9a2f5c28 Bring in my changes for removing the pestilent obj links (unless you
really want them) from /usr/src.  This is the final version of the
patches, incorporating the feedback I've received from -current.
1996-06-24 04:26:21 +00:00
Gary Palmer
bbf5261a72 Correct spelling errors (i before e except after c :-) )
Submitted by:	James Raynard <jraynard>
1996-06-22 21:20:56 +00:00
Poul-Henning Kamp
e767093fa3 Add man-page section 'n' and LIBTCL macro. 1996-06-22 06:01:57 +00:00
Jordan K. Hubbard
485f5a7718 Handle the `distribute' target. 1996-06-20 23:52:45 +00:00
Jordan K. Hubbard
b5bc989d0c Whoops - I made `make clean' chatty by mistake. 1996-06-20 18:51:28 +00:00
Satoshi Asami
985a18a7c1 The changes to go with ncftp -> fetch. Besides changing the names,
standardize the variables a little, and simplify some parts because
we can now trust the fetcher's return value.

Reviewed by:	the list
1996-06-19 09:33:31 +00:00
Jordan K. Hubbard
d79a958dcf Spit out the a proper port path for the describe target.
Submitted-By: Chuck Robey <chuckr@Glue.umd.edu>
1996-06-19 07:07:16 +00:00
Jordan K. Hubbard
2c9ca1a977 Ok, now cleandir: is correct. 1996-06-19 01:26:18 +00:00
Jordan K. Hubbard
61d16cdb21 Add some unobtrusive changes to handle sources which aren't ports
(SRC_ENCAPSUATION).  Stick in some cd ${.CURDIR} directives which have
been (benignly) missing all this time.  Allow more types of targets to be
selectively disabled.
1996-06-19 01:04:23 +00:00
Poul-Henning Kamp
2b9cd23802 Add support for ${CLEANDIRS} that will be rm -rf'ed during clean & cleandir. 1996-06-17 15:59:52 +00:00
Bruce Evans
5d1999ec59 Synced with Makefile.i386: added -Wunused. 1996-06-17 15:11:10 +00:00
Jordan K. Hubbard
abf58409aa Add LIBFTPIO 1996-06-17 12:31:02 +00:00
Satoshi Asami
9fe358a4b3 Add "MASTER_SITES?=" (no this is not a typo) right before the
"MASTER_SITES:= ..." of defined(MASTER_SITE_OVERRIDE) case, otherwise
it would cause a recursive variable definition error when
MASTER_SITE_OVERRIDE is set and MASTER_SITES is not set.
1996-06-13 06:03:39 +00:00
John Fieber
d6d88a1549 Fix incorrect handling of .cxx files in default rules. 1996-06-03 13:26:16 +00:00
Poul-Henning Kamp
006f5fe068 Back out yacc change. 1996-06-02 17:04:08 +00:00
Satoshi Asami
43c915b1af Add some comments to sections to disable targets using NO_* variables.
Remove disabling of "repackage", that thing calls package anyway.

Submitted by:	(mostly) jkh
1996-06-01 05:47:42 +00:00
Poul-Henning Kamp
b2e2fd2801 Make the yacc rules reentrant
Suggested by:	peter
1996-05-30 20:39:45 +00:00
Satoshi Asami
afcc796bf1 Set MAKE_ENV and CONFIGURE_ARGS with += instead of ?=, it is easier to
add things this way.

Reviewed by:	ache
1996-05-30 08:53:26 +00:00
Poul-Henning Kamp
50ef9020fd Avoid a ton of "mv" when making libs by using -O to ld.
Make lex rules reentrant.
1996-05-28 16:20:13 +00:00
Wolfram Schneider
187f8e98f5 make install' do not depend on make all'
Add some comments for variables and targets.
Include <bsd.obj.mk>, remove targets  obj, clean, cleandir.
Replace ${MAN*} with ${DOC*} variables.
Use a .for loop for undefined targets
1996-05-27 23:12:15 +00:00
Wolfram Schneider
125e8ffd27 Add a note that MAKEOBJDIR is an enviroment variable
and does work proper only if set as enviroment variable,
not as global or command line variable.
1996-05-27 23:05:54 +00:00
Wolfram Schneider
53996faddb Add some comments for variables and targets. 1996-05-25 23:09:49 +00:00
Wolfram Schneider
d8982a6a42 speedup MLINKS 1996-05-25 21:50:54 +00:00
Poul-Henning Kamp
4a6a373a1c Make some rules reentrant, and mark the onces that cannot be. 1996-05-09 13:01:44 +00:00
Jordan K. Hubbard
cce80494f9 Fix a minor grammatical error (reselled -> resold) I just noticed. 1996-04-27 18:36:02 +00:00
Satoshi Asami
1844587c79 Add CFLAGS=${CFLAGS} to MAKE_ENV, otherwise gmake won't pick it up. 1996-04-26 10:09:06 +00:00
Wolfram Schneider
44d97e5b42 New variable NOOBJLINK
Create 'obj' directory in current directory instead
	a symbolic link to the 'obj' tree if defined. [not set]

Print a warning if 'obj' tree (/usr/obj) does not exist.

Change default 'obj' directory from ``obj.${MACHINE}'' back to
``obj'', unfortunately many Makefiles are wired with the name ``obj''.

Add some comments for variables and targets.
1996-04-22 23:31:39 +00:00
John Polstra
0bd0c3cc45 Add "-x" to the linker command for building shared libraries. This
eliminates many local symbols that could not be removed by the "ld -r -x"
steps on the individual object files.  It makes shared libraries
substantially smaller -- almost 11%, in the case of libc.so.3.0.
1996-04-21 17:45:38 +00:00
Wolfram Schneider
bcb1a9de55 install bsd.obj.mk
Submitted by:	Asami
1996-04-12 11:13:29 +00:00
Satoshi Asami
726722154d Add NO_CDROM, RESTRICTED, BROKEN and Motif support.
(1) The new NO_CDROM Boolean variable means "don't put the distfile/
    package on the CDROM you're going to sell".  It will basically
    turn off everything if FOR_CDROM is set.

    Many of the NO_PACKAGE ports are actually "don't sell for profit"
    types, which we shouldn't have any problem distributing via ftp.

(2) The new RESTRICTED Boolean variable means don't build this unless
    you know what you are doing.  It doesn't have any effect unless
    NO_RESTRICTED is also set.

(3) BROKEN means this port is broken.  At least it will now show up in
    INDEX and README.html, and give people more incentive to fix (I
    hope).

    RESTRICTED and BROKEN are expected to replace the pseudo-targets
    in parent Makefiles.  (The RESTRICTED and BROKEN list didn't do
    anything before, they were solely for grepping purposes.)

(4) The Motif support brings in four new variables: REQUIRES_MOTIF,
    which the porter sets for ports that require Motif to build;
    HAVE_MOTIF, which the user sets to indicate the system has Motif;
    MOTIF_STATIC, which the user sets to indicate that the static
    libXm, instead af the default dynamic library, is to be used; and
    MOTIFLIB, which is set to "${X11BASE}/lib/libXm.a" or
    "-L${X11BASE}/lib -lXm", depending on whether MOTIF_STATIC is set.

    The porter is expected to replace all occurrences of libXm in the
    {Im,M}akefiles with ${MOTIFLIB}, and this will allow both dynamic
    linkage (for users with Motif) and static linkage (for those who
    build packages to be used by those withot Motif, i.e., me ;)
    automatically.

Original Motif support idea by:	graichen
1996-04-12 08:08:36 +00:00
Wolfram Schneider
5ce6c3cfe2 remove variables KMODGRP?=, KMODOWN?=, KMODMODE?=
replace ${BIN*} variables with ${KMOD*} variables

cleanup manpage code

include bsd.obj.mk
remove targets clean, cleandir, obj (included by bsd.obj.mk)
1996-04-11 23:03:10 +00:00
Wolfram Schneider
bd063a9d88 Add variable ``_MANPAGES'' This will be replace the
.if !defined(MAN1) && !defined(MAN2) ... orgy in bsd.prog.mk and
bsd.kmod.mk
1996-04-09 23:10:19 +00:00
Wolfram Schneider
cd8e84c7e1 use .for loop for common targets 1996-04-09 22:54:13 +00:00
Wolfram Schneider
fe51f2705c Add targets cleanfiles/clean, cleandir 1996-04-09 22:43:33 +00:00
Satoshi Asami
89f4624ddc Change ${ENV} -> ${SETENV}. The former coincides with startup file
names of bash et al.

Submitted by:	Thomas Gellekum <thomas@ghpc8.ihf.rwth-aachen.de>
1996-04-07 08:34:21 +00:00
Wolfram Schneider
8e1a411f0b remove BINGRP?=, BINOWN?=, BINMODE?=, STRIP?=
use .for loop for common targets
1996-04-05 22:22:44 +00:00
Poul-Henning Kamp
56bac51bc7 Pick up CWARNFLAGS from /etc/make.conf if defined. 1996-04-03 12:08:52 +00:00
Wolfram Schneider
b16495e786 add MKDEPCMD?= and DEPENDFILE?=
replace sh(1) commands with make(1) builtins
1996-04-01 18:58:28 +00:00