bin/163997: mergemaster(8): harcoded source tree path in 'mergemaster -p'

Коньков Евгений kes-kes at
Wed Jan 11 00:40:40 UTC 2012

Здравствуйте, Doug.

Вы писали 11 января 2012 г., 2:12:56:

DB> On 01/10/2012 16:07, Коньков Евгений wrote:
>> in other world: assume ./ as srouce directory instead of /usr/src

DB> That's not going to happen. The solution is to use the -m option.

DB> Various reasons why, the most important of which is that there is no way
DB> to know for sure if . is the source directory you want to use.
Why you are shure that the srouce directory I want to use is /usr/src?

see the Makefile:
# For individuals wanting to upgrade their sources (even if only a
# delta of a few days):
#  1.  `cd /usr/src'       (or to the directory containing your source tree).

NOTICE: (or to the directory containing your source tree)
It says that I can use any directory I want with no limit
and below is description of commands (standard commands? I think they are) I must to use:

1. cd /usr/src.svn/head10
2. make buildworld
6. mergemaster -p

may be:
---#  6. `mergemaster -p`
+++#  6. `mergemaster -p'    (use -m /path/to/sources in case of sources are not in /usr/src directory)

DB> It's really important for you to understand that if you do non-standard
DB> things you need to be prepared to deal with the consequences of that.
DB> There are a LOT of places with various assumptions about how your file
DB> systems are laid out.
So you must get options from Makefile to get them all. When dowing 'make
installworld' it donot do any assumtions about where files must be
placed it EXACTLY know where they are must be placed.

You can call `./make mergemaster` and use exact output instead of

Patch Makefile such a way 'make mergemaster' will output
SOURCETREE=/path/to/sources   (e.g. current directory)

It will be handy in contrary to remember unnecessary things.

or THE BEST choice:

#  6.  `make mergeprepare'
#  7.  `make installworld'
#  8.  `make delete-old'
#  9.  `make mergecomplete'            (you may wish to use -i, along with -U or -F).

In this case Makefile will instruct 'mergemaster' all thing it need =)

Good luck,

С уважением,
 Коньков                          mailto:kes-kes at

More information about the freebsd-bugs mailing list