From owner-freebsd-hackers@FreeBSD.ORG Mon May 28 16:29:03 2007 Return-Path: X-Original-To: freebsd-hackers@freebsd.org Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5A87116A400 for ; Mon, 28 May 2007 16:29:03 +0000 (UTC) (envelope-from naylor.b.david@gmail.com) Received: from wr-out-0506.google.com (wr-out-0506.google.com [64.233.184.237]) by mx1.freebsd.org (Postfix) with ESMTP id EB18713C45A for ; Mon, 28 May 2007 16:29:02 +0000 (UTC) (envelope-from naylor.b.david@gmail.com) Received: by wr-out-0506.google.com with SMTP id 70so479149wra for ; Mon, 28 May 2007 09:29:01 -0700 (PDT) DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:from:to:subject:date:user-agent:references:in-reply-to:mime-version:content-type:content-transfer-encoding:message-id:sender; b=bDr0mdNW1xWo18bmdImqx6uAk4/lS8kwWQikKx0dLCwo4I2R/K1EYVgjAV9U5Ws2JDBRQsrBkSOeAoJiyaPFdzHh+OkFHNMQwgmLl5E/sDXfLShrMg3Aox64nHvAILMdOLL61AKTTU9BV4ILp1joymcQztkq0Pyjr8uN0QIl8ew= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:from:to:subject:date:user-agent:references:in-reply-to:mime-version:content-type:content-transfer-encoding:message-id:sender; b=NkPI1J9vQxdyRYzCPGF9cXsvR63G9r199A8CkJwBfXvYj102gPu9IbdVb1O0QVkcEMyrQcGuYX17b0ImG8jM1WfD8pUUvEtxK6CRfuDalgBJv4sfkYHYWsGOAZ9RkFeboV4MyIu5WJ8kfC/NwOco8RWM/UWEEWho7NcKTiexvNA= Received: by 10.90.28.13 with SMTP id b13mr638475agb.1180369741720; Mon, 28 May 2007 09:29:01 -0700 (PDT) Received: from ?0.0.0.0? ( [196.37.90.163]) by mx.google.com with ESMTP id c1sm7161084nzd.2007.05.28.09.28.56; Mon, 28 May 2007 09:29:00 -0700 (PDT) From: David Naylor To: freebsd-hackers@freebsd.org Date: Mon, 28 May 2007 18:28:43 +0200 User-Agent: KMail/1.9.5 References: <4659EF80.70100@math.missouri.edu> <20070527223048.GA37505@icarus.home.lan> <465A33D4.1040706@math.missouri.edu> In-Reply-To: <465A33D4.1040706@math.missouri.edu> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="nextPart4943566.SuABLBdVN4"; protocol="application/pgp-signature"; micalg=pgp-sha1 Content-Transfer-Encoding: 7bit Message-Id: <200705281828.48026.blackdragon@highveldmail.co.za> Sender: David Naylor X-Mailman-Approved-At: Mon, 28 May 2007 16:52:06 +0000 Subject: Re: Looking for speed increases in "make index" and pkg_version for ports X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 28 May 2007 16:29:03 -0000 --nextPart4943566.SuABLBdVN4 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On Monday 28 May 2007 03:43, you wrote: > Maybe I should look at the inner workings of cmake and gmake. Maybe > they have some good ideas. However having looked through the source > code of make, and also looking at the cvs logs, it does seem to be well > written. The only possibility I see of making it go a lot faster is a > complete redesign, e.g. my just in time idea for processing variables. > > Stephen Just in time (jit), if I remember correctly, is a term used by java=20 interpreters which compile the byte code into machine code!!! Perhaps this= =20 could be developed for makefile's, especially bsd.*.mk. =20 This, I think, could be done in two ways: 1) Develop the bsd.*.mk files in C and link it in with make, or 2) Use the makefiles as source to compile into machine code (passibly via=20 C->ASM). The machine code could be created on demand, or cached and only=20 updated if the source makefile changes. =20 I am not sure if this could work or even if it will have any significant sp= eed=20 increase. However if method 2 does work it has the potential to radically= =20 increase the speed of ports _while_ maintaining the flexability. =20 All that will be needed is an API for the machine code and a compiler??? David --nextPart4943566.SuABLBdVN4 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) iD8DBQBGWwNAyqzxLKpyZI8RAuhFAJ9UVnPXYyC69baLKYQlDXCvqz0dVwCfXDPp qXVLSnKIsL2BpOm/aUmgHQ4= =1gFI -----END PGP SIGNATURE----- --nextPart4943566.SuABLBdVN4--