Commit Graph

406 Commits

Author SHA1 Message Date
agc
0ee4409cbe Don't assume we're on NetBSD when setting LOCALBASE i.e.
test the OSNAME first.

Change the name of the mtree file to match NetBSD's.
1997-08-20 16:02:48 +00:00
agc
5d9fc2b5dd Document the import of FreeBSD's <bsd.port.mk> and <bsd.port.subdir.mk>,
as used in their `ports' system.
1997-08-20 10:53:04 +00:00
agc
3709f02cd5 Change a path for NetBSD. Our PORTSDIR is /usr/pkg/src 1997-08-20 10:51:40 +00:00
agc
4a7d7317e2 Change paths for NetBSD. We have our PORTSDIR at /usr/pkg/src,
and our PREFIX is /usr/pkg.
1997-08-20 10:50:26 +00:00
agc
a1ac59e36e Initial import of FreeBSD's ports makefiles. 1997-08-20 10:21:05 +00:00
christos
cd59f75df4 Enable extra warnings if WARNS is set 1997-07-01 21:42:55 +00:00
phil
69edc948f4 Some man pages need tbl to make their man page. This adds support for
tbl in building man pages.  If the variable USETBL is defined, the
rules for making the man pages include tbl before nroff.

This supports at least 3 man pages in the tree.
(Related to PR 3144.)
1997-06-30 19:26:21 +00:00
christos
14b5e8dbc9 PR/3801: NAKAJIMA Yoshihiro: some documents are installed as executable 1997-06-28 01:22:59 +00:00
pk
19d4236655 Put `-DPIC' back in CPICFLAGS (a.out section); at least one C source
file (sparc/include/profile.h) relies on this.
1997-06-04 08:38:45 +00:00
cgd
521240796e declare ${DESTDIR}${INCSDIR}/$I .PHONY if UPDATE isn't defined, so that
headers will be installed properly in the !UPDATE case.  From Christos.
1997-06-03 16:00:30 +00:00
cjs
7a66732d34 Back out BUILDDIR and NOINSTALL changes. 1997-05-31 21:21:13 +00:00
cjs
54084592c2 Set or unset OBJDIR before we determine BUILDDIR. 1997-05-30 21:46:02 +00:00
cjs
ab09e2a45e Fix quoting yet again; reformat. 1997-05-30 15:11:03 +00:00
cjs
a71bce3f88 Don't add MACHINE to BUILDDIR if it's already added to BSDOBJDIR. 1997-05-30 05:50:16 +00:00
cjs
c6a0de99f8 Add NOINSTALL option for libraries that are used only during the build
of a program, and not installed into the final system.
1997-05-30 01:54:42 +00:00
cjs
1cb525c1e0 Quote it properly this time. 1997-05-29 19:53:32 +00:00
cjs
2707a099a6 Forgot to quote a variable. 1997-05-29 19:35:23 +00:00
cjs
68d423f17b If BUILDDIR is the same as DESTDIR, we aren't really using an object
file tree, so undef OBJDIR and install includes, etc. the old way.
Also, don't use OBJDIR at all if we're not under BSDSRCDIR.
1997-05-29 19:06:26 +00:00
veego
933397a44f Fix pr#3679 a little different.
Remove the '-nostdlib' flag for ELF systems and keep it for a.out systems.
1997-05-29 15:37:11 +00:00
mikel
5817cfa122 fix typo 1997-05-29 06:26:35 +00:00
cjs
bda4c93e92 Append ${MACHINE} to ${BUILDDIR} if USR_OBJMACHINE is not set. 1997-05-28 23:52:37 +00:00
veego
2fbf728651 Add '-nostdlib -L${BUILDDIR}/usr/lib' for ${LDADD} so it links a shared
library with the correct shared library.
1997-05-28 11:16:19 +00:00
mycroft
d5e3cfc07a Add a missing / in SHLIB_LD*FILE. 1997-05-27 18:51:12 +00:00
cjs
058d54e069 Always look in usr/lib for crtbegin/crtend; LIBDIR is the destination
directory of the library we're currently compiling.
1997-05-27 18:21:16 +00:00
cjs
b73b99ed41 Put include information in CPPFLAGS only (not in CFLAGS or MKDEPFLAGS).
Add note that CPPFLAGS is (or should be) passed to all programs that
pass input through cpp.
1997-05-27 18:09:00 +00:00
cjs
2fc3406301 Re-add other folks' changes that I accidently reverted when I did my
build system changes commit.
1997-05-27 17:45:57 +00:00
cjs
f66891a189 Make sure mkdep gets correct include directories. 1997-05-27 17:01:56 +00:00
pk
9e91a31967 Remove bogon. 1997-05-26 20:53:28 +00:00
cjs
b3b931acf8 Patch for yesterday's batch of `new build system' commits that I forgot
to commit.
1997-05-26 16:36:41 +00:00
cjs
5fd7ce7066 These updates to the build allow building against include files
and libs in the object tree, if you use a separate object tree,
while maintaining backward compatability with other build methods.
See the notes in src/share/mk/bsd.README for full details. Note
that the `make includes' target now only installs the include files
in the build directory (if you use one--otherwise they go in DESTDIR
just like before); `make install' will install include files in
DESTDIR.
1997-05-26 03:55:19 +00:00
jonathan
346af6eeff More table-driven changes: split CPICFLAGS into separate flags, to
support the two different incompatible rules for build .so files from
.S source on both NetBSD and binutils toolchains:

	 ${CPP} | ${AS} for syscalls
	 ${CC}   	for non-syscalls
for which the different toolchains's ${AS}  requires diffferent flags.
1997-05-24 01:42:36 +00:00
kleink
4c60ea6dc2 Add libposix. 1997-05-18 20:21:53 +00:00
christos
67c5f6f8ee Add a realinstall target so that we recurse to subdirectories making install,
before the our afterinstall target fires.
1997-05-17 16:59:28 +00:00
mycroft
a9b9dbd457 Do LINKS and SYMLINKS after FILES and INCS. 1997-05-17 16:43:31 +00:00
mycroft
e30142d40d Remove unneeded .SUFFIXES lines, and move .s and .S closer to .o to give the
right preferences.
1997-05-17 02:01:07 +00:00
mycroft
fb74da89f9 Add another .PHONY. 1997-05-10 14:19:02 +00:00
mycroft
e5ae95698c Always rebuild links, since dependencies don't DTRT. 1997-05-10 10:55:19 +00:00
mycroft
bb84c33ebb Add some .NOTMAINs. 1997-05-10 10:54:27 +00:00
mycroft
3ae4ef8d4c Fix typo in previous. 1997-05-09 13:40:34 +00:00
mycroft
4e5d05c9cc Automatically add the .c files corresponding to .l and .y files to DPSRCS.
Automatically add DPSRCS to CLEANFILES.
1997-05-09 13:25:46 +00:00
mycroft
83a6d8a106 Get the install dependencies in the right order, for the first time. 1997-05-09 09:18:23 +00:00
mycroft
fde14a0e77 Remove cruft. 1997-05-09 07:56:00 +00:00
mycroft
a6b93bb66a Don't empty the suffix list. 1997-05-09 06:19:55 +00:00
mycroft
ca03cbbd4d Oops; rearrange dependencies to get things built early enough. 1997-05-09 05:43:41 +00:00
mycroft
f0a00ea4d3 Make sure INCS and SRCS are built if necessary. 1997-05-09 05:17:29 +00:00
gwr
386c8864bc Set the .NOPATH flag for ${OBJS} (from Christos). 1997-05-08 21:21:25 +00:00
gwr
1f53401903 Set the .NOPATH flag for the .depend target. 1997-05-08 21:18:59 +00:00
mycroft
8350f2906b Fix the MACHINE and MACHINE_ARCH links. 1997-05-07 19:34:16 +00:00
mycroft
2189b1da42 Make $S default to /sys. 1997-05-07 19:25:16 +00:00
mycroft
413d34c758 Add some dummy targets. 1997-05-07 19:09:47 +00:00
mycroft
b81d43c325 Fix typo. 1997-05-07 17:17:20 +00:00
mycroft
b2a77a6aa4 Don't use _SUBDIRUSE outside of bsd.subdir.mk. 1997-05-07 17:06:16 +00:00
mycroft
b89441bd06 Always define cleanman. 1997-05-07 16:45:40 +00:00
mycroft
78f9e94dd2 Always define cleandepend. Don't use a .depend target if SRCS is empty. 1997-05-07 16:44:04 +00:00
mycroft
b475e889d8 Introduce a separate cleandoc target. 1997-05-07 16:35:44 +00:00
mycroft
bb8827f7d1 Various simplifications. 1997-05-07 15:53:28 +00:00
mycroft
1bd348b5f9 Shuffle some .PHONYs around, to work better with `-t'. 1997-05-07 08:42:18 +00:00
mycroft
6a00bc76f3 Set the .MAKE attribute for all recursive targets. 1997-05-06 23:53:40 +00:00
mycroft
2da111c521 Make most of the install targets .PRECIOUS. 1997-05-06 21:29:33 +00:00
mycroft
5acae7b6ea Add a pile of missing .PHONYs. 1997-05-06 20:54:31 +00:00
christos
b69d8d5561 Update for incremental make changes. 1997-04-19 22:24:30 +00:00
christos
b339c21257 Add ${LIBNTP} 1997-04-18 14:30:24 +00:00
thorpej
a585fb7042 Add several HOST_* variables. These identical to their non-HOST_
counterparts, and are used to compile programs that are needed to
compile other programs (see src/bin/sh for an example use).  These
facilitate cross-compiling.

Define an NM variable - the program to use for nm(1)
1997-04-17 06:43:32 +00:00
thorpej
985170db35 - Properly depend on crtbegin.o and crtend.o for platforms that use
them (currently Alpha and PowerPC)
- STRIP -> STRIPFLAG
1997-04-17 06:40:32 +00:00
thorpej
9377c557b2 Rename STRIP -> STRIPFLAG - this is a flag passed to install(1) to
indicate whether or not the program should be stripped.  This rename
allows the user to set STRIP as an alternative to /usr/bin/strip,
helping cross-compiling.
1997-04-17 06:34:15 +00:00
thorpej
2e6057dd39 Pass the program to use for nm(1) to lorder(1), helps cross-compiling. 1997-04-17 06:32:23 +00:00
christos
c9ba10ae4a Annotate missing directories as [skipped: missing] (from Christoph Badura) 1997-04-16 14:09:16 +00:00
christos
9a7df3e0e4 Skip missing subdirectories to enable builds in partial source trees.
Directories being skipped are mentioned as '===> dir [skipped]'
1997-04-15 21:32:40 +00:00
christos
a2a43b1836 Make the obj' target .PHONY', so that does not get affected by .PATH/VPATH
This is not hurting things right now, and it will help things when path
searching for target nodes is enabled for make.
1997-04-15 21:29:09 +00:00
perry
138bcc102f fix 3497 from Manuel Bouyer -- install source man pages with proper suffix. 1997-04-15 16:57:46 +00:00
mikel
43ba9b9b69 don't allow override of all: target 1997-04-03 06:53:18 +00:00
thorpej
043fb41aec Set NOPIC and NOPROFILE on PowerPC. 1997-03-29 21:17:22 +00:00
mikel
76cfd073e9 merge lite-2 changes (mostly SCCSids) 1997-03-29 08:02:45 +00:00
christos
f897bfdce7 Don't make bogus dependencies with symlinks sources. 1997-03-28 15:07:28 +00:00
christos
22d479a4a8 Don't generate an include target if we don't have INCS set, because SUBDIRS
can make one too. This will break on Makefiles that have both INCS and SUBDIRS,
so then we'll need to change includes: to includes::, but we don't have any
yet.
1997-03-27 17:39:31 +00:00
christos
6c7d983258 Add bsd.files.mk 1997-03-27 17:35:58 +00:00
christos
cef52070f9 Put the FILES generated rules in a separate .mk file since both bsd.prog.mk
and bsd.lib.mk use them.
1997-03-27 17:33:34 +00:00
mycroft
5fa188a26f Make the SCRIPTS case mimic the FILES case more closely, so we can override
the destination direectory, etc.
1997-03-27 11:05:32 +00:00
mycroft
0d6b2973f3 Remove knowledge of HIDEGAME from here. 1997-03-27 09:10:09 +00:00
christos
790c4693cc Add the bsd.links.mk and bsd.inc.mk 1997-03-25 18:20:55 +00:00
christos
7600672517 put the 'r' back in archive. 1997-03-24 23:19:12 +00:00
christos
25f6ec749f make rules update:
- add UPDATE and BUILD features
- add new FILES, INCS, SCRIPTS variables
- allow man pages source installation
1997-03-24 21:54:12 +00:00
cgd
d46cdace76 add SHLIB_LDSTARTFILE and SHLIB_LDENDFILE variables for a.out shared lib
architectures, for consistency.  (For a.out shared libs, they're empty.)
Make the shared library target depend on them.
1997-03-23 00:52:20 +00:00
perry
1d624f4f7e Fix SYMLINKS not to include DESTDIR in the link itself 1997-03-22 22:33:53 +00:00
cgd
30f6cf581e changes to allow "make -j N" to more easily parallelize many subdirs 1997-03-21 00:53:02 +00:00
jonathan
d012191d6d Use table-driven rules for linking shared libraries on a.out or ELF systems. 1997-03-15 11:35:04 +00:00
cgd
b7e0994151 pull crtbeginS.o and crtendS.o in from DESTDIR 1997-03-14 00:52:50 +00:00
perry
de40e6afd4 add SYMLINKS, by analogy to LINKS. Vetted by Christos. 1997-03-13 02:45:58 +00:00
gwr
ef90c20081 Allow mkdep to exist as a different name (fixes PR#3302) 1997-03-07 23:10:18 +00:00
cgd
1d8b2c2fdd turn Alpha's ELF_TOOLCHAIN checks to ECOFF_TOOLCHAIN checks 1997-02-23 20:53:56 +00:00
cgd
3fbd378aa4 fix botch in the last checkin. 1997-02-18 18:38:39 +00:00
cgd
f8c02ac2a7 clean up Alpha (ELF) shared library build and install rules. The latter
are now more like what's "normal" for ELF.
1997-02-17 19:24:47 +00:00
jonathan
eec1518cf0 Change bsd.own.mk to build shared libs on mips CPUs by default. 1997-02-10 21:08:58 +00:00
mikel
ffba261ec0 add support for COPTS, as in bsd.prog.mk 1997-01-28 03:38:40 +00:00
cgd
1d20ab5d2e if 'clean' is not already defined, rather than simply defining it with
a bunch of rules, define a clean{kmod,lib,prog} target with the rules,
and have both clean and cleandir depend on that.  That eliminates a bug
where 'cleandir' in a directory which included e.g. bsd.prog.mk but which
also had subdirs would 'make clean' all the subdirs and then 'make cleandir'
all ofthe subdirs.  It also allows Makefiles to add more dependencies
to 'clean' after inclusion of the make template.

If 'clean' is already defined, the behaviour is the same as it used to be.
1997-01-22 01:34:11 +00:00
perry
57e986e85a add NODOC -- if set, prevents installation of doc files
contributed by Brian de Alwis <bsdealwi@undergrad.math.uwaterloo.ca>
closes pr-2290 (per thorpej)
1997-01-17 01:15:55 +00:00
mark
ed0c7a8de5 The arm32 architecture also needs to set NOPIC. 1997-01-13 00:54:23 +00:00
christos
398a0a033b Don't use @echo "${command}" to echo commands, because if ${command} contains
double quotes we generate shell syntax errors. Use @echo ${command:Q} instead
which properly quotes shell metacharacters.
1996-12-29 19:14:32 +00:00
cgd
414b38f4b2 add an afterdepend target (a la the one in bsd.lib.mk) that processes
the .depend file to add <filename>.ln for each <filename>.o as an
object file which has the given dependencies (in addition to
<filename>.po and <filename>.so, which were already there).
1996-12-20 16:39:03 +00:00
cgd
6cd7e38583 change the afterdepend target so that its sed script adds <filename>.ln
for each <filename>.o as an object file which has the given dependencies
(in addition to <filename>.po and <filename>.so, which were already there).
1996-12-20 16:36:56 +00:00
cgd
2dbbba03f0 remove outdated XXX comment (mine) 1996-12-19 07:51:59 +00:00
cgd
cbff9abf27 undo (or actually, do differently) that last: On the Alpha, build shared
libraries with LD, but add /usr/lib/crtbegin.o and /usr/lib/crtend.o
before and after the rest of the stuff being linked.  This is a losing
situation all-around: for correct 'DESTDIR' builds, it should be including
them from ${DESTDIR}/usr/lib.  However, since those objects should be
included for all shared libraries, including them from ${DESTDIR} won't work,
because they won't be installed by normal builds by the time they need to
be used.
1996-12-17 23:14:23 +00:00
cgd
47b997f2e0 build Alpha shared libraries with ${CC} rather than ${LD}, because cc
understands how to do the c run-time startup magic necessary for shared
libraries and ld doesn't.
1996-12-17 21:05:40 +00:00
mikel
6d303ec98e add missing LIBPCAP definition. 1996-12-13 08:02:52 +00:00
jtc
43a3714539 Define GPROF when assembling *.S files 1996-11-30 02:18:54 +00:00
mrg
b081de7226 add libz and libwrap 1996-11-26 17:37:39 +00:00
mikel
4620721b06 Remove extra ".o"s; fixes PR misc/2883. 1996-11-05 05:40:28 +00:00
explorer
9b140c8554 Update to make the sys/lkm tree compile on i386 and most likely others 1996-10-22 19:41:47 +00:00
thorpej
150c33e60b Use ${INSTALL}. 1996-10-18 05:55:26 +00:00
thorpej
416caa144c Use ${INSTALL} rather than "install".
From Simon J. Gerraty <sjg@zen.void.oz.au>, PR #1458.
1996-10-18 02:34:42 +00:00
thorpej
f2bb1e120e Define an INSTALL make variable, and default it to "install". Suggested
by Simon J. Gerraty <sjg@zen.void.oz.au>, PR #1458.
1996-10-18 02:33:38 +00:00
cgd
a23bd4576c if ${MACHINE_ARCH} is "alpha" build shared libs with the 'normal' GNU
linker's command line args, rather than the NetBSD linker's command
line args.  This is a hack, and should go away in favor of something
more general when that something is developed.  In the mean time, it
might be appropriate for the various mips ports to do the same thing.
1996-10-13 20:39:36 +00:00
cgd
7dc2d2b3fe define NOPIC on the alpha only if ELF_TOOLCHAIN is not defined.
(This is a hack.)
1996-10-13 20:33:59 +00:00
thorpej
b479977348 Add "-traditional-cpp" to the COMPILE.S command, so that assembler
syntax (specifically, use of # to indicate an immediate value) isn't
misinterpreted as a CPP directive.
1996-09-30 23:37:22 +00:00
abrown
795306043d Add missing quote (") in @echo line of .S.o rule, to prevent sh from
getting confused in certain cases.
1996-09-23 20:23:05 +00:00
jtc
a66b1cae00 Fix from Aaron Brown that fixes some typos 1996-09-23 18:15:48 +00:00
jtc
3d592bf5cd Use ${COMPILE.S}' instead of ${CPP} ..... | ${AS} ....' to compile
assembly language source.
1996-09-20 19:51:50 +00:00
cgd
ea52c85b3a use -pg rather than -p when compiling profiled objects. 1996-09-05 19:12:33 +00:00
explorer
c3d35c35af Do the symlinks added by mrg correctly 1996-08-27 23:31:47 +00:00
explorer
497b575ce6 Fix a missing dollar sign, and move paths and modes
to bsd.own.mk for KMOD* vars
1996-08-27 22:15:52 +00:00
mrg
8cc0c9583c make lkm's work. still need to worry about options defines... 1996-08-23 06:14:36 +00:00
explorer
85656a00df Add a file needed for the lkm stuff I committed 1996-08-22 20:33:02 +00:00
scottr
4aca2bf529 If DESTDIR is defined, look for includes in ${DESTDIR}/usr/include,
instead.
1996-05-15 19:46:51 +00:00
thorpej
c238d2b94e Add the ability to override defaults in bsd.own.mk more easily, by
looking for "${MAKECONF}", or failing that, "/etc/mk.conf" and including
the first one it finds, if it exists.  From Chris Demetriou <cgd@netbsd.org>,
PR #1970.
1996-04-13 02:08:08 +00:00
thorpej
5eb08a6790 Get the current working directory from "/bin/pwd" rather than "pwd".
Changes to the shell make the behavior of "make obj" inconsistent
with previous behavior, depending on the login shell used by the user.
See PR #2200 for details.  PR remains open while further analysis is
done.  This at least restores the previous semantics for us csh(1) users.
1996-04-10 21:08:05 +00:00
mycroft
a86feda616 Remove broken hack that attempted to do the same as the previous. 1996-04-10 05:47:19 +00:00
mycroft
198877f9dc Fix COMPILE.s so the output file is named correctly. 1996-04-10 05:44:49 +00:00
jtc
4a437cf6dd Sort LIBFOO definitions and add LIBY; Reported by Mike Long <mike.long@analog.com> in PR #2301. 1996-04-08 21:19:26 +00:00
jtc
f9ff89048b Added new standard target "includes" (used to install header files) to
bsd.subdir.mk.  Added some documentation to bsd.README.
1996-04-04 02:05:03 +00:00
jtc
f1938eb0d0 Removed special handling of CPPFLAGS if DESTDIR is set. Third party
makefiles may use DESTDIR for something completely different.
1996-02-29 19:06:57 +00:00
jtc
4e24a7f97e Default .s.o and .S.o left output in wrong file 1996-02-28 23:45:16 +00:00
pk
cb632f2035 Use shell internal substring matching, like bsd.man.mk. 1996-02-21 10:02:00 +00:00
jtc
24af95d976 Use ksh-style substring parameter expansion expressions instead of
calling expr when constructing manpage directory and file names.
Much, much faster.
1996-02-10 07:49:33 +00:00
cgd
93542f4a98 clean up bits that state which man page section numbers are allowed (section
9 now exists).  Document that variables in bsd.own.mk that were not previously
documented.
1996-01-22 22:46:06 +00:00
mycroft
fceadcfbd1 Use the `-q' option to tsort(1). From der Mouse, PR 1204. 1996-01-17 20:39:26 +00:00
thorpej
5ba712a21d Allow override of nroff program, requested by Masanobu Saitoh
<msaitoh@spa.is.uec.ac.jp> in PR #1741.
1996-01-15 01:56:09 +00:00
cgd
4297bc2d3a don't include the .c.a rule on the alpha. see p.r. 1488 for an
example of how make breaks when it's present.  In particular, it causes
build of the compiler toolchain to fail if present, which keeps
a complete system from building, on the alpha.
1995-12-18 02:53:20 +00:00
cgd
8c917568da add "CFLAGS += -Werror" to bsd.sys.mk, and update various bits of
documentation to explain bsd.sys.mk's purpose more clearly.
1995-12-13 01:25:05 +00:00
perry
3baad3ca17 Add support for Section 9 (kernel internals) manpages 1995-11-25 19:53:33 +00:00
cgd
4b84367c40 NetBSD/Alpha now supports profiling 1995-11-03 23:33:33 +00:00
christos
70174eb6fe Added include file <bsd.sys.mk> that contains lex and yacc "parallel aware"
rules. These rules are not turned on by default; they are enabled by setting
the PARALLEL variable.
1995-10-22 00:45:53 +00:00
cgd
079c0ee400 install -s now works properly on the alpha, so don't redefine STRIP
(to kill the -s).
1995-10-12 06:22:18 +00:00
cgd
9544e255ed correct an alpha-specific comment 1995-10-02 20:30:28 +00:00
pk
ba51c14e09 Use CPPFLAGS in .S rules. 1995-09-30 12:21:33 +00:00
cgd
2357fc71b1 alpha no longer needs NOMAN= 1995-09-27 13:34:11 +00:00
christos
6e591491c3 - make sure the afterdepend rule fires `after' .depend gets created.
[fixed for parallel make]
- make depend prettier printing.
1995-09-27 01:15:09 +00:00
jtc
7065a25cef Fix .cc.o .C.o rule; PR #1522 1995-09-26 23:48:24 +00:00
christos
03d121f492 - Actually commit the bsd.lib.mk changes mentioned above... 1995-09-25 00:53:09 +00:00
christos
e3a69c3c19 - In preparation for parallel makes fix the library rules so that they
don't use a.out as intermediate output.
- Note in the README file that we cannot fix the xstr stuff.
  We still need to fix lex and yacc.
- Allow overriding of the variables in sys.mk
1995-09-24 23:49:06 +00:00
cgd
d136b73088 show the directory depth, by printing out the hierarchy name.
Suggested by Ty Sarna, implemented by me.  Useful, because it tells you
how deep you are, and allows you to paste the pathname in to 'cd' to the
directory.
1995-07-24 04:22:29 +00:00