Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 Sep 2001 20:54:35 +0300
From:      Ruslan Ermilov <ru@FreeBSD.org>
To:        Nate Williams <nate@yogotech.com>
Cc:        Mark Murray <markm@FreeBSD.org>, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/gnu/usr.bin/perl Makefile Makefile.inc src/gnu/usr.bin/perl/utils Makefile.inc
Message-ID:  <20010920205435.B66160@sunbay.com>
In-Reply-To: <20010920203159.A66160@sunbay.com>; from ru@FreeBSD.org on Thu, Sep 20, 2001 at 08:31:59PM %2B0300
References:  <200109201224.f8KCOB466566@freefall.freebsd.org> <200109201222.f8KCMfT66048@freefall.freebsd.org> <20010920201254.D61491@sunbay.com> <15274.9510.659169.501864@nomad.yogotech.com> <20010920203159.A66160@sunbay.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Sep 20, 2001 at 08:31:59PM +0300, Ruslan Ermilov wrote:
> > It should work, but it won't use the dependencies created in the .depend
> > file.  For any 'from-scratch' builds, this should be fine.
> > 
> Yes, but that's the exact problem that was tried to be solved AFAICS.
> Otherwise, why Mark wrote ``make depend all'' and not ``make all''?
> Of course, ``make obj && make all'' should work.  Only in rare cases
> ``make depend'' is required for fresh builds, when the depend target
> is abused (or {before|after}depend).
> 
> > 'make depend' shouldn't be a requirement for building files.
> > 
> Right, but we are talking of a different case here.  When some sources
> are updated, the dependancies should be rebuilt first with ``make depend'',
> and only then ``make all'' should be executed.
> 
Ah, the problem is completely different.  What Mark tried to achieve is
to make building of Perl possible outside of the ``make buildworld''.
We need miniperl to build Perl.  I'll see if I can come up with a more
elegant solution tomorrow.

Mark, the idea!  Why not just make a `build-tool' target in
perl/Makefile build miniperl, and adjust perl/Makefile.inc
as follows:

.if exists(../../miniperl/miniperl)
MINIPERL?=	../../miniperl/miniperl
.elif exists(../miniperl/miniperl)
MINIPERL?=	../miniperl/miniperl
.else
MINIPERL?=	miniperl
.endif

The last case for `buildworld'.

Then anyone who wants to build the Perl outside ``buildworld''
would run ``make build-tool'' first, then ``make all''.

(I'm not sure if we need ${.OBJDIR} is assignments or not.
Depends on whether some Makefiles execute ``cd'' or not.)


Cheers,
-- 
Ruslan Ermilov		Oracle Developer/DBA,
ru@sunbay.com		Sunbay Software AG,
ru@FreeBSD.org		FreeBSD committer,
+380.652.512.251	Simferopol, Ukraine

http://www.FreeBSD.org	The Power To Serve
http://www.oracle.com	Enabling The Information Age

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




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