From owner-freebsd-questions@freebsd.org Fri May 15 05:47:23 2020 Return-Path: Delivered-To: freebsd-questions@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7CE592EAE86 for ; Fri, 15 May 2020 05:47:23 +0000 (UTC) (envelope-from listac@nebelschwaden.de) Received: from mail.worldserver.net (mail.worldserver.net [217.13.200.26]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "*.worldserver.net", Issuer "EuropeanSSL Server CA 2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 49Ncqs2tckz4PDv for ; Fri, 15 May 2020 05:47:20 +0000 (UTC) (envelope-from listac@nebelschwaden.de) Received: from postpony.nebelschwaden.de (v22018114346177759.hotsrv.de [194.55.14.20]) (Authenticated sender: postmaster@nebelschwaden.de) by mail.worldserver.net (Postfix) with ESMTPA id 58D10255DC for ; Fri, 15 May 2020 07:47:17 +0200 (CEST) Received: from [172.16.37.5] (kaperfahrt.nebelschwaden.de [172.16.37.5]) by postpony.nebelschwaden.de (Postfix) with ESMTP id D0075D88FC for ; Fri, 15 May 2020 07:47:16 +0200 (CEST) Reply-To: listac@nebelschwaden.de Subject: Re: Moving sources (base/ports) from /usr To: freebsd-questions@freebsd.org References: <20200508210444.7945f4ba@kaperfahrt.nebelschwaden.de> <20200513201932.8dd2cc135c50d54dc8daff0c@sohara.org> From: Ede Wolf Message-ID: Date: Fri, 15 May 2020 07:47:16 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0 MIME-Version: 1.0 In-Reply-To: <20200513201932.8dd2cc135c50d54dc8daff0c@sohara.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 49Ncqs2tckz4PDv X-Spamd-Bar: - Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=none (mx1.freebsd.org: domain of listac@nebelschwaden.de has no SPF policy when checking 217.13.200.26) smtp.mailfrom=listac@nebelschwaden.de X-Spamd-Result: default: False [-1.84 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; HAS_REPLYTO(0.00)[listac@nebelschwaden.de]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; IP_SCORE(-0.74)[asn: 15657(-3.70), country: DE(-0.02)]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-questions@freebsd.org]; TO_DN_NONE(0.00)[]; AUTH_NA(1.00)[]; RCPT_COUNT_ONE(0.00)[1]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; RCVD_COUNT_THREE(0.00)[3]; RCVD_TLS_LAST(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[26.200.13.217.list.dnswl.org : 127.0.5.0]; NEURAL_HAM_MEDIUM(-0.99)[-0.992,0]; R_SPF_NA(0.00)[]; DMARC_NA(0.00)[nebelschwaden.de]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:15657, ipnet:217.13.192.0/20, country:DE]; MID_RHS_MATCH_FROM(0.00)[]; REPLYTO_ADDR_EQ_FROM(0.00)[] X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 May 2020 05:47:23 -0000 > SRCDIR you can leave alone, just move /usr/src anywhere you like > and so long as you change into that directory to build all should be good > because the Makefile sets everything up based on CURDIR. Basically you are right. For makebuild[world|kernel] that is correct, it is just that setting SOURCEDIR saves a question during mergemaster: # mergemaster -Ui *** /usr/src was not found. Found Makefile.inc1 in the current directory. Would you like to set SOURCEDIR to /clutter/src? [no and exit] Since mergemaster is most of the time interactive anyway, you really do not lose very much, if unset. But if one decides to define it, it has to be in the shell environment (export SOURCEDIR...), as src-env.conf or make.conf do not seem to work, unless I've missed something. Verdict: So far for base only setting MAKEOBJDIRPREFIX?= is required. Nice. Way easier than anticipated. Side note: The use of "?=" seems a little counter intuitive, as one would suspect, that any predefined value of MAKEOBJDIRPREFIX will point to /usr/obj and thus render our setting useless, but in reality it does somehow work. Having completely removed /usr/obj and /usr/src beforehand, no /usr/obj is being created (until installworld, that is) and the build still finishes cleanly. It also does work with just "=", this choice just generates a whole bunch of warning of the kind: make[1]: "/clutter/src/share/mk/src.sys.env.mk" line 50: warning: /etc/src-env.conf: Ignoring MAKEOBJDIRPREFIX entry in sub-make. Use '?=' to avoid this warning. Some information on this (mostly way above my level of understanding): https://www.mail-archive.com/svn-src-head@freebsd.org/msg95545.html https://lists.freebsd.org/pipermail/freebsd-current/2015-December/058823.html And I figured, build(7) is a little outdated, as the recommended WITH_UNIFIED_OBJDIR has been removed with 12, there just is an WITHOUT_UNIFIED_OBJDIR now. See "20171101" in src/UPDATING On to ports now. Thanks again to all