make(1) and SUBDIR assignments

Jens Schweikhardt schweikh at
Sun Jan 25 07:18:06 PST 2004

hello, world\n

I'm trying to selectively install binaries in the source tree, i.e. to
only install bin/dd and bin/df this is what I hoped would work:

root at hal9000:/usr/src # make buildworld      # succeeds
root at hal9000:/usr/src # cd bin
root at hal9000:/usr/src/bin # make install SUBDIR='dd df'

But it fails:

===> dd
"/usr/share/mk/", line 60: Inconsistent operator for dd
"/usr/share/mk/", line 66: warning: duplicate script for target "dd" ignored
make: fatal errors encountered -- cannot continue
*** Error code 1

Stop in /share/HEAD/src/bin.

(-CURRENT sources and /usr/share/mk/* as of today). Is this

1) a bug somewhere (though nothings seems to be wrong with
2) me being confused about how SUBDIR is intended to be used
3) something else

Yes, I know I can workaround by
cd /usr/src/bin/dd; make install
cd /usr/src/bin/df; make install

But why do all the src/*/Makefiles assign the list of subdirs to SUBDIR
and DTRT, but I can't from the outside?


Jens Schweikhardt
SIGSIG -- signature too long (core dumped)

More information about the freebsd-current mailing list