Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 10 Nov 2014 10:49:58 +0000
From:      Arthur Chance <freebsd@qeng-ho.org>
To:        Rick Miller <vmiller@hostileadmin.com>
Cc:        FreeBSD Questions <freebsd-questions@freebsd.org>
Subject:   Re: MK_KERNEL_SYMBOLS can't be set by a user
Message-ID:  <54609856.2030204@qeng-ho.org>
In-Reply-To: <CAHzLAVF-JU9mKFhXNAOzQ4bqJ8PGLvdh_aXk6Nzy9sMq2Znuew@mail.gmail.com>
References:  <CAHzLAVGQyf2ukKScXKbJej27=Q%2BR81QxiUGR6cfcqiWuSc8CQA@mail.gmail.com> <545DF617.2040205@qeng-ho.org> <CAHzLAVF-JU9mKFhXNAOzQ4bqJ8PGLvdh_aXk6Nzy9sMq2Znuew@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 09/11/2014 20:56, Rick Miller wrote:
> On Sat, Nov 8, 2014 at 5:53 AM, Arthur Chance <freebsd@qeng-ho.org> wrote:
>
>> On 07/11/2014 19:57, Rick Miller wrote:
>>
>>> Hi all,
>>>
>>> In order to port openstack image support into an internal releng/10.0
>>> branch the following files were copied from HEAD to the internal branch:
>>>
>>> release/release.conf
>>> release/release.sh
>>> release/Makefile
>>> release/amd64/mk-vmimage.sh
>>>
>>> Some modifications were made to release.conf such as CHROOTDIR, SRCBRANCH,
>>> NODOC, and NOPORTS...nothing major.  release.sh errors in the system
>>> target
>>> with the following:
>>>
>>> touch packagesystem
>>> rm -rf ftp
>>> mkdir -p ftp
>>> cp *.txz MANIFEST ftp
>>> mkdir -p release
>>> cd /usr/src/release/.. && make TARGET_ARCH=amd64 TARGET=amd64
>>> installkernel
>>> installworld distribution  DESTDIR=/usr/obj/usr/src/release/release
>>> MK_RESCUE=no MK_KERNEL_SYMBOLS=no  MK_PROFILE=no MK_SENDMAIL=no
>>> MK_TESTS=no
>>> MK_LIB32=no  MK_DEBUG_FILES=no
>>> make[3]: "/usr/src/share/mk/bsd.own.mk" line 457: MK_KERNEL_SYMBOLS can't
>>> be set by a user.
>>> *** Error code 1
>>>
>>> Stop.
>>> make[2]: stopped in /usr/src
>>> *** Error code 1
>>>
>>> Stop.
>>> make[1]: stopped in /usr/src/release
>>> *** Error code 1
>>>
>>> Stop.
>>> make: stopped in /usr/src/release
>>>
>>> What scenarios would result in this sort of failure?
>>>
>>>
>> As the error message says, users can't/mustn't set MK_* symbols. You're
>> supposed to set WITH_* or WITHOUT_* symbols in /etc/src.conf and the
>> makefiles convert those to MK_* form.
>>
>> See man src.conf for details.
>>
>
> Thanks...this was helpful in resolving the error though not through
> src.conf.  The Makefile implemented these options using the form MK_* as
> opposed to WITHOUT_*.  Changing Makefile accordingly resolved the error.

/usr/src Makefiles  use MK_ internally, but users are not supposed to 
touch them. That's why /usr/src/share/mk/bsd.own.mk has a lot of code to 
convert WITH_/WITHOUT_ variables to MK_ form, applying suitable defaults 
for each architecture.

/usr/src/release/Makefile seems to be a special case, and sits over the 
normal /usr/src/... Makefiles, hence it's use of WITHOUT_ forms.

> Review of the same Makefile in the releng/10.0 and releng/10.1 branches
> shows they use the form WITHOUT_*.  Does this signal that FreeBSD 11.x will
> implement MK_* instead or does this change to WITHOUT_* for the releng/
> branches?

I've no idea about -CURRENT, I never use anything riskier than -STABLE. 
You'd be better off asking about this in freebsd-current@




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?54609856.2030204>