Commit Graph

48 Commits

Author SHA1 Message Date
lukem e226e0f887 It's "its" for possessive, not "it's". 2007-12-11 14:06:04 +00:00
dsl d23b6980be Comment where make's internal copy of .OBJDIR gets changed 2006-11-26 20:09:57 +00:00
lukem cd017885ef Ensure that ${TOOL_STAT} is executable before trying to run it;
it may not be available when performing "make obj" in tools/
when using BSDSRCDIR & BSDOBJDIR (instead of MAKEOBJDIR{,PREFIX}).
2003-12-04 12:15:20 +00:00
lukem 03ac03264c support MAKEVERBOSE for objdir creation messages 2003-11-06 22:47:22 +00:00
lukem 5e2ad4afcc Be consistent how "multiple include protection" is implemented. I.e,
.if !defined(_BSD_foo_MK_)
	_BSD_foo_MK_=1

	# ...

	.endif	# !defined(_BSD_foo_MK_)
2003-07-28 02:38:33 +00:00
lukem 24da731a9c Pull in <bsd.sys.mk> as well, for the TOOL_ variables in the
USETOOLS=never case.
Found & fixed by Anders Hjalmarsson in PR misc/22283.
2003-07-28 00:57:25 +00:00
lukem 0f7d7b4fad Use ltarg=`stat -qf '%Y' $l` to read a symlink's target (and rely upon
a non-zero exit value to indicate a missing file or non-symlink),
instead of   test -h $l && ltarg=`ls -ld $l | awk '{print $NF}'`
since the former is quicker and more concise.
2003-07-20 15:02:10 +00:00
lukem 87610a53a9 whitespace cleanup 2003-07-18 04:04:03 +00:00
thorpej 43c6552a49 Add a BUILDID variable, which further qualifies object directories. 2002-03-14 18:26:32 +00:00
wiz d245a498c0 Remove spurious '.' in line 42, as reported by Naoto Shimazaki on
current-users on Thu, 29 Nov 2001 09:17:16.
2001-11-29 11:57:21 +00:00
tv 43453698f5 Use :U successfully this time. In an expression such as ${FOO:D:Ubar}, you
end up with empty string if FOO is defined, and `bar' if it is undefined.
2001-11-28 20:12:47 +00:00
jmc 2e1248a6d9 If using MAKEOBJDIRPREFIX use the same checks as the symlink logic does below.
i.e. if the root of the object tree doesn't exist then complain and exit.

This makes both sections consistant to each other (MAKEOBJDIR specifies an
exact directory so there's no root per se to check so nothing can really be
done there).
2001-11-27 05:42:24 +00:00
tv d00721de07 :U can't be used to test for existence, as the variable may contain an
arbitrary value; change back to .if !defined().  Problem noted by
bernd@arresum.inka.de in PR toolchain/14629.
2001-11-20 17:12:22 +00:00
tv 6c2c072164 Turn off host-specific objdirs by default. Set MKHOSTOBJ=yes to enable. 2001-11-14 22:29:23 +00:00
tv 777bc9f06a Use ${__curdir} consistently. 2001-11-12 18:49:12 +00:00
tv c2c66c6e5c Also handle the USR_OBJMACHINE case for OBJHOSTMACHINE. 2001-11-11 23:22:19 +00:00
tv 2e00400b7f Affix the ${HOST_OSTYPE} info to the end of the objdir name if OBJMACHINE
is set (and MAKEOBJDIR[PREFIX] is not in use).  This permits multiple hosts
to compile hostprogs (not just src/tools) for a given target without
colliding with each other.

Currently restricted only to new toolchain builds, as this requires a new
make(1) in order to function properly.
2001-11-11 23:19:14 +00:00
tv e7e8f27d5f Fix variable concatenation in previous. 2001-11-11 23:07:26 +00:00
tv fcc9c62259 Make the BSDSRCDIR/BSDOBJDIR symlink based objdir system work for the top
source directory.  This will use BSDOBJDIR of OBJMACHINE is unset, and will
create a directory '.MACHINE' inside BSDOBJDIR if OBJMACHINE is set.

MAKEOBJDIR and MAKEOBJDIRPREFIX based objdirs already cope with the top
level directory just fine.
2001-11-11 22:39:23 +00:00
tv 7d2258875d Use __curdir throughout, so MAKEOBJDIR builds see resolved paths in the
"foo -> bar" messages written to stdout.
2001-10-31 01:46:42 +00:00
tv 8bd89a86e7 Protect against multiple inclusion, and evaluate ${.CURDIR} early (to assist
the top-level toolchain bootstrap).
2001-08-14 09:30:48 +00:00
mrg 97b5460add fail `make obj' if $BSDOBJDIR doesn't exist. fixes PR#12937. 2001-06-10 13:32:21 +00:00
cgd 2bfc706b3b "test !", rather than "! test". The former is more portable. 2001-03-11 07:32:31 +00:00
cgd 4aa53dcd31 test -h, not test -L. 2000-07-07 04:35:35 +00:00
itohy 62efa4eac6 s/MAKOBJDIR/MAKEOBJDIR/
Pointed out by Katsuomi Hamajima.
2000-02-18 06:09:11 +00:00
sjg 5c4b588d66 Fixed handling of MAKEOBJDIR so that it matches make(1)'s expectations.
Added handling of MAKEOBJDIRPREFIX.
In both cases we simply need to mkdir the appropriate path if it does not
exists.
2000-02-08 12:38:16 +00:00
sommerfeld 26d13bd6c3 When building obj symlinks, if there's already a link pointing at the right target,
do nothing rather than deleting and recreating an identical link.
1999-12-04 02:44:07 +00:00
sommerfeld e09aca5470 Use (if defined) instead of obj.foo or obj
when building object directories
1999-08-21 00:41:41 +00:00
kim 04d4cbe3af Oops, PWD is really something else in most environments.
Call this variable PAWD instead.
1999-06-10 20:48:28 +00:00
tls 4d8eb5755d Fix a typo which caused "make obj" to try to *execute* the direcroty it was in. 1999-06-10 20:34:26 +00:00
kim 674c377f8f Allow "make obj" to work nicely with amd by setting
PWD=/usr/bin/pawd in /etc/mk.conf and using the amd
mount point path for BSDSRCDIR.
1999-06-08 18:28:38 +00:00
lukem 13814c4ffb pull in bsd.own.mk for MKOBJ 1999-02-12 04:13:26 +00:00
lukem 497d11782a * Add support for MKDOC MKLINKLIB MKLINT MKMAN MKNLS MKOBJ MKPIC MKPICINSTALL
MKPROFILE MKSHARE, which default to `yes' unless an equivalent NOxxx
  variable is defined.
* Add MKCATPAGES, which if "no" prevents catpages from being built or installed

Users should use "MKxxx=no" instead of "NOxxx=" in /etc/mk.conf, because
this allows easy override on the make(1) command line (e.g 'make MKSHARE=yes'
to override MKSHARE=no in /etc/mk.conf).
1999-02-12 01:10:06 +00:00
tv e340b4da07 Rename show-objdir to print-objdir to be consistent with existing
convention.
1998-08-27 20:33:45 +00:00
tv 22f41e92ef Add pseudo-target "show-objdir", which will print the value of ${.OBJDIR}
and nothing else.  Intended target: cleaning up the ugly "echo | make"
constructs to find files from another directory's objdir.
1998-08-27 16:54:59 +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 b2a77a6aa4 Don't use _SUBDIRUSE outside of bsd.subdir.mk. 1997-05-07 17:06:16 +00:00
mycroft 5acae7b6ea Add a pile of missing .PHONYs. 1997-05-06 20:54:31 +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
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
pk cb632f2035 Use shell internal substring matching, like bsd.man.mk. 1996-02-21 10:02:00 +00:00
mycroft 03a9334875 Explicitly remove obj link before creating it. 1995-06-10 20:46:35 +00:00
cgd 61d2ae79f4 RCSID frobbing, and minor sanity adjustments. 1994-06-30 05:31:04 +00:00
cgd b233f19e46 don't be careless with _SUBDIRUSE 1994-06-30 05:21:28 +00:00
cgd 47b2efdc10 define BSDOBJDIR and BSDSRCDIR to have make think of the src and obj
trees as rooted someplace other than /usr/src and /usr/obj.
1993-11-07 09:45:04 +00:00
cgd 5104915994 add support to make obj.${MACHINE} dirs, if the user so requests.
note that not all makefiles in the tree will work with them, yet.
1993-10-23 02:32:55 +00:00
cgd 670644d93b 'obj' was missing in echo which informed of symlink creation 1993-10-21 05:27:40 +00:00
mycroft 0c9bbcf68c Create target directories with `install -d', and move `obj' targets into one
file.
1993-08-15 19:26:05 +00:00