Commit Graph

735 Commits

Author SHA1 Message Date
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
Satoshi Asami 25f2b0066a Thanks for the overwhelming response (which can be only summarized by the
word: "zilch").  I guess the only way to get people try and comment on
these kind of things is to shove it down their throat.... ;)

Anyway, here's a set of changes required for auto-generation of READMEs
in ports directories.  Necessary changes and additions of templates
to the ports tree will follow shortly.

Eventually I'll commit all the generated READMEs to the tree, but that
will be in the rather distant future.  For now, I encourage anyone
with a -current systam and a matching ports tree to do a "make readmes"
at the top level and see what they get.

Next step will be to add pkg/{COMMENT,DESCR} to all the categories.
1996-04-01 11:13:00 +00:00
Wolfram Schneider 05e5545fc3 add SHAREDIR?=, SHAREOWN?=, SHAREGRP?=, SHAREMODE?=,
INFOOWN?=, INFOGRP?=, INFOMODE?=

set variables recursive, eg. change KMODOWN?=bin to KMODOWN?=${BINOWN}

from NetBSD:
	add NLSDIR?=, NLSGRP?=, NLSOWN?=, NLSMODE?=,
	BSDSRCDIR?=, BSDOBJDIR?=, NOBINMODE?=
1996-03-31 23:15:17 +00:00
Satoshi Asami 54b04ea300 Change name of variable to LOCALBASE, to keep it symmetric with X11BASE,
which has been in the tree for a much longer time.

Sorry for the multiple commits and I know I shouldn't be doing this but
my hamster tells me to be orthogonal...("hey Phoenix, do you think
I should call it LOCALBASE?" "squeak" "ok, if you say so").
1996-03-31 10:35:26 +00:00
Satoshi Asami bfe907886a Add a variable LOCAL_PREFIX that defaults to "/usr/local", as a
counterpart to X11BASE (default "/usr/X11R6").

Now PREFIX is set to ${X11BASE} or ${LOCAL_PREFIX} depending on
whether USE_IMAKE or USE_X11 is set or not.

This enables us to refer to non-X ports from X ports using
${LOCAL_PREFIX}, thus removing most of the remaining "/usr/local"s
from the ports tree.

This will also allow the system administrator to move the whole
"local" tree to somewhere else, without affecting X ports.  (Of course
not all ports are necessarily happy with that, but we're working on
it.)

Based on: an idea that came up while I was watching a football game
          several months ago ("hey, maybe I can move that sideline
          without disturbing the other!")
1996-03-31 10:02:09 +00:00
Wolfram Schneider accb7fafc8 Obtained from: NetBSD
"obj" directory stuff work
1996-03-24 22:49:16 +00:00
Wolfram Schneider 110dbd1072 remove BINGRP?= BINOWN?= BINMODE?= 1996-03-24 00:41:11 +00:00
Wolfram Schneider 86ec11baf9 KMODDIR= -> KMODDIR?=
add INFODIR
1996-03-24 00:31:56 +00:00
Wolfram Schneider 77ad77dd74 delete LIBDIR?= LINTLIBDIR?= LIBGRP?= LIBOWN?= LIBMODE?= SHLIBDIR?=
BINGRP?= BINOWN?= BINMODE?=
1996-03-24 00:21:04 +00:00
Wolfram Schneider 9c6fe31f3d delete MANGRP?=, MANOWN?=, MANMODE?=, MANDIR?= 1996-03-24 00:08:02 +00:00
Wolfram Schneider 9e6778d48f delete ``.if ${MACHINE} == "sparc"'' 1996-03-24 00:02:38 +00:00
Bruce Evans 580ccec473 sysinstall/Makefile:
Fixed DPADD again.

mk/bsd.README
Don't list the LIBXXX identifiers here.  Describe them better.

mk/bsd.prog.mk
Updated the list of LIBXXX identifiers.
- recently added library libdisk.a wasn't mentioned (required for sysinstall)
- old objects kz*.o weren't mentioned
- old libraries libc_pic.a, libcom_err.a, libf2c.a, libg++.a, libgcc_pic.a,
  libgmp.a, libipx.a, libkeycap.a, libss.a and libxpg4.a weren't mentioned
- old libraries libgnumalloc.a and libftp.a no longer exist
- old library libmp.a was said to not exist
- deprecated links libfl.a and libln.a weren't mentioned
1996-03-19 14:30:15 +00:00
Wolfram Schneider 82622fe072 add DOCDIR, DOCOWN, DOCGRP, DOCMODE for documents
add LIBDIR, LINTLIBDIR, SHLIBDIR, LIBOWN, LIBGRP, LIBMODE for libs
add KMODOWN, KMODGRP, KMODMODE
new variable KMODDIR similar to BINDIR
1996-03-12 00:07:28 +00:00
Satoshi Asami 7c1b69d881 Replace PATCH_PRFX with a more generic DIST_SUBDIR. If it is set to
"foo", what this does is:

(1) Put all distfiles and patchfiles in /usr/ports/distfiles/foo

(2) Go to ftp://ftp.freebsd.org/pub/FreeBSD/distfiles/foo when the
    master site is down

When your port has a lot of dist/patchfiles, or has a file that does
not have a very port-specific name (e.g., "Makefile"), set this
variable instead of redefining DISTDIR.  (If you redefine DISTDIR, (1)
will work but (2) will not.)

Agreed that it's a good idea by:	adam
1996-03-10 08:26:21 +00:00
Wolfram Schneider 5c2da7893a [Ee]rrs -> Errs errs, save one process for make clean 1996-03-09 23:48:55 +00:00
Wolfram Schneider c9a41a43bc [Ee]rrs -> Errs errs
save one process for make clean
1996-03-07 23:39:46 +00:00
Satoshi Asami 6c342b58d5 Delete all references to the variable ${KEYWORD} that never quite flew.
(Sorry Jordan, but your other idea (${CATEGORIES}) was a major hit.)

Also remove the keyword field in the INDEX line and replace it with
two columns: build-time dependencies and run-time dependencies.  They
are both list of package names (minus the ".tgz").
1996-03-06 08:14:26 +00:00
Satoshi Asami 00ce5fe5f4 Replace absolute pathnames with variables, so that
(1) people can have weird paths and it will still work, and

(2) if you really need to use /usr/local/bin/cp instead of /bin/cp,
    you can do that by changing only one line.

Submitted by:	wosch
1996-03-06 08:08:16 +00:00
Jordan K. Hubbard 2178a48a11 Add a check for when the user tries to FTP over a symlink in ${DISTDIR}. 1996-02-16 11:19:00 +00:00
Mike Pritchard e2e7e7042b Make sure that the --no-split flag gets passed to makeinfo.
Fixes PR # 1003 (gdb info files don't work).
1996-02-08 18:27:07 +00:00
Adam David 08b0d4223c correct semantic error in the English usage:
distributed patches --> distribution patches
1996-02-08 00:44:33 +00:00
Satoshi Asami a8344ffc23 Mention "make reinstall" in the message that gets printed out when
/var/db/pkg/${PKGNAME} exists.  ("make install" will do nothing
because this is not a critical error and the installation is
treated as successful.)

Closes PR 870.
1996-02-07 09:54:23 +00:00
Andrey A. Chernov 42a43db4bb Add NCFTP tailer arguments: ${NCFTPTAIL} variable
Since it is empty in normal case, it not affect anything
It is useful for ncftp -c ugly_name > nice_name
				    ^^^^^^^^^^^ ${NCFTPTAIL}
1996-02-06 21:25:23 +00:00
John Polstra a659df8a06 Back out my previous change, which caused c++rt0.o to be linked into
every shared library, until I can diagnose the problems it is causing
for certain programs such as awk and groff.
1996-01-21 17:26:25 +00:00
John Polstra 19851e4b7f Always link /usr/lib/c++rt0.o into a shared library. CPLUSPLUSLIB is no
longer necessary, and can be removed from Makefiles.
1996-01-17 00:03:08 +00:00
Bruce Evans a5db65d39f Added `-Wstrict-prototypes -Wmissing-prototypes' to CWARNFLAGS so that
prototypes don't go missing again.  Also added -Winline so that some
doubtful (non-)inlines get fixed.

bsd.kmod.mk:
Also added `-Wreturn-type -Wimplicit -Wnested-externs' to catch up
with the kernel.
1995-12-16 01:57:25 +00:00
Bruce Evans 429544bb76 Added `9' to ${SECTIONS}. 1995-12-14 18:13:14 +00:00
Jordan K. Hubbard 320a586809 Add support for ALL_HOOK feature. Lets you replace the `all' target
with something of your own devising.
1995-12-07 14:11:29 +00:00
Bruce Evans 96bfa14287 Added a preprocessor for soelem. If if USE_SOELIMPP is defined, then
1. ${ROFF} is run in ${.OBJDIR}.
2. the preprocessor prefixes ${SRCDIR}/ to relative pathnames in `.so'
   statements.
This is useful when running ${ROFF} in the source directory isn't
convenient.

Added dependencies on ${EXTRA} and ${OBJS}.  These are usually for files
that are sourced indirectly.  ${OBJS} is for files that are built.
4.4lite has decentalized incomplete dependencies on ${EXTRA} and ${DPADD}.
These were broken by are centralized handling of the roff targets.
1995-11-29 16:05:08 +00:00
Satoshi Asami a72b1b79b2 Make the {FETCH,BUILD,RUN}_DEPEND targets work with non-executable files
too.  Basically, if the name starts with a "/", it's tested with "test -e";
otherwise, it's tested with "witch -s".

Reviewed by:	the ports list (well at least nobody complained)
1995-11-26 12:35:49 +00:00
Satoshi Asami df4f0253cd Use NO_MTREE, not !USE_X11 && !USE_IMAKE, to determine package args.
NO_MTREE should work as advertised (for both direct installation and
pkg_add) now.
1995-11-17 16:49:40 +00:00
Bruce Evans 4ff3de8e80 Added `#include "ioconf.h"' to <machine/conf.h> and cleaned up the
misplaced extern declarations (mostly prototypes of interrupt handlers)
that this exposed.  The prototypes should be moved back to the driver
sources when the functions are staticalized.

Added idempotency guards to <machine/conf.h>.  "ioconf.h" can't be
included when building LKMs so define a wart in bsd.kmod.mk to help
guard against including it.
1995-11-04 17:08:13 +00:00
Bruce Evans eb89687138 Fix maninstall target for the NOMANCOMPRESS case. The previous revision
failed when there was an obj directory.  Use .PATH.n for installing too
so that make can find the source files.  This allows the source files to
be in several directories (the old method using cd only works well for
a single directory).  The dependencies are on the source files even for
the compressed case, although it would be more flexible to depend on the
files being installed, so that `make install' doesn't attempt to build
things

Force COPY to -c for the NOMANCOMPRESS case.  Then the files to be installed
are always sources, so they must not be moved.
1995-10-21 18:18:46 +00:00
Bruce Evans a9076ea0bc Add `.sh' suffix and rule.
Enable `.c' rule.  (Null suffix rules were disabled because of bugs in old
versions of make.)

Add ${LDFLAGS} to all rules that involve linking.
1995-10-21 12:46:02 +00:00
Satoshi Asami 030fc19811 Back out the two latest changes. The -current branch is now equal to
the -stable branch except the change between 1.182 -> 1.183.
1995-10-17 20:58:08 +00:00
Andrey A. Chernov d087a6170b Add NO_FETCH handling in the similar way as other NO_* targets does 1995-10-16 14:27:20 +00:00
Andrey A. Chernov 94e0871d90 Fix NO_EXTRACT case: build missing WRKDIR
Previous variant always fails on touch work/.extract_cookie
(or next following touches) because work directory not exists.
1995-10-16 14:18:22 +00:00
Poul-Henning Kamp e9dcb6be2d An even better idea: The default will be that on _${KMOD} (_nfs_mod...) will
be exported.  This breaks the compilation of some lkms, the owners of which
is kindly requested to consider what should be exported.
1995-10-15 16:56:56 +00:00
Poul-Henning Kamp aa9134f375 Automatically DTRT for VFS_LKM 1995-10-15 16:46:00 +00:00
John Fieber 4a00ac792d Change the default PRINTER from ps to ascii. 1995-10-15 16:14:42 +00:00
Poul-Henning Kamp a304bf73a0 Make a rule for cleaning the namelist of lkms.
TXT & DATA symbols not explicitly mentioned will be made local.
1995-10-15 14:32:26 +00:00