NetBSD-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: What is BSD make?

Aleksey Cheusov <> writes:

>> Your object directory handling is _wrong_, since it doesn't support
>> applying _different_ object directory selection for different parts
>> of tree.
> Setting object directory inside projects's Makefile is just wrong way
> to do development. This makes Makefiles full of %^&*^%%
> OBJDIR should be set outside projects's Makefile, e.g.
> in your mk.conf based on PROG or somewhere in
> or in user's (developer's) environment.
> Anywhere but not in project's Makefile.
> Just separate project's "core" from developer's "preferences".

Noone sets it in project makefiles.
Setting environment variables is rare too.

>> For instance, not all my colleagues like using completely
> Your colleagues are offtopic. Lots of my colleagues use windows and
> don't know anything about make at all. So what?
>> separate object tree, some of them like to have "obj" subdirectories
>> in those parts of tree, which they don't modify, but they don't create
>> them in "hot" area.
> 0 dictd_bsd_make>export MAKEOBJDIR=/home/cheusov/prjs/dictd_bsd_make/obj

Do you read me at all?

_Unset_ MAKEOBJDIR.  See how it breaks, if you create "obj" subdirectory
in one of project subdirectories, and not in another.

Setting MAKEOBJDIR is impossible, if you have files with same names
across the project. Build stomps on itself, when you build the whole
project. Setting MAKEOBJDIRPREFIX is very inconvenient, when you have
a bunch of programs rather than a single one. In regular development
almost noone uses it in such case.


Home | Main Index | Thread Index | Old Index