Subject: bulk compiling pkgsrc
To: None <current-users@NetBSD.ORG>
From: Charlie ROOT <root@rfhs8012.fh-regensburg.de>
List: current-users
Date: 05/11/1998 14:23:24
  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.
  Send mail to mime@docserver.cac.washington.edu for more info.

--0-2072926387-894889380=:23328
Content-Type: TEXT/PLAIN; charset=US-ASCII


For anyone compiling pkgsrc, here's some code and hints that may help you
to do the job a bit easier.


Installation:
=============
Put the code in the first attachment (bsd.pkg-hf.mk) at the end of your
pkgsrc/mk/bsd.pkg.mk, patch pkgsrc/mk/bsd.pkg.subdir.mk with the diff in
the second patch, and add "DEPENDS_TARGET=hf-install" to your /etc/mk.conf
file. 


What these hf-stuff does
========================
The code in bsd.pkg-hf.mk defines two new commands, hf-install and
hf-package, that replace the "normal" install and package commands from
bsd.pkg.mk. The new ones will use precompiled binary pkgs for installation
(instead of recompiling) whenever possible. "Whenever possible" means if
such a binary pkg is available at all (somewhere below
/usr/pkgsrc/packages), AND it's up to date, i.e. was created after the
pkg's files under /usr/pkgsrc were touched last. It will also try to cut
down diskspace usage by doing a "make clean" after the binary package is
created.


(General) pkgsrc compile pre-requirements
=========================================
The following is valid even without the above files:
 - Build & install lesstif before the rest. You need to do this only if
   you don't have a Real Motif. Add "HAVE_MOTIF=YES" to /etc/mk.conf
 - Probably set BATCH=YES in /etc/mk.conf
 - set PAPERSIZE to either A4, Letter or Letterdj (/etc/mk.conf, again)
 - set USA_RESIDENT and USE_RSAREF2 accordingly.
 - Make sure you have X running and DISPLAY pointing to a valid, working
   display (beware of stale ssh redirects in screen!); some pkgs like
   gimp, dotfiles and timidity want X. 
 - If you want to keep obj files "somewhere else, add (mk.conf):
   WRKOBJDIR=              /usr/tmp
 - If you intend to build on several architectures, consider putting the
   following in your /etc/mk.conf:
   PACKAGES=${PKGSRCDIR}/packages/${MACHINE_ARCH}
   OBJMACHINE=YES


Usage:
======
cd /usr/pkgsrc ; make hf-package 


Warning
=======
This code works for me, I hope it will be useful for you, too.


 - Hubert

--
hubertf@netbsd.org

--0-2072926387-894889380=:23328
Content-Type: TEXT/PLAIN; charset=US-ASCII; name="bsd.pkg-hf.mk"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.NEB.3.95.980511142300.23328B@rfhpc8132.fh-regensburg.de>
Content-Description: 

DQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCiMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIw0KIyMNCiMjIEJsYWNrIG1hZ2ljIGFoZWFk
Li4uDQojIw0KIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQojIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCiMgY2hlY2sgaWYgdGhlIFJF
RiBmaWxlIGlzIHVwdG9kYXRlLCBpLmUuIGlzIG5ld2VyIHRoYW4gYW55IG9m
DQojIHRoZSBwa2cgZmlsZXM7IHByaW50cyAiMSIgaWYgdXB0byBkYXRlLCAi
MCIgaWYgbm90Lg0KaGYtY2hlY2stdXB0b2RhdGU6DQoJQHVwdG9kYXRlPTEg
OyBcDQoJaWYgWyAtZiAke1JFRn0gXTsgdGhlbiBcDQoJCW5uZXdmaWxlcz1g
ZmluZCAuIC10eXBlIGYgLW5ld2VyICR7UkVGfSAtcHJpbnQgIHwgZ3JlcCAt
diAke1dSS0RJUn0gfCB3YyAtbGAgOyBcDQoJCWlmIFsgJCRubmV3ZmlsZXMg
LWd0IDAgXTsgdGhlbiBcDQoJCQkke0VDSE9fTVNHfSA+JjIgIj4+IHBrZyBt
b2RpZmllZCBzaW5jZSBsYXN0ICdtYWtlIHBhY2thZ2UnLCByZS1wYWNrYWdp
bmcuLi4iIDsgXA0KCQkJdXB0b2RhdGU9MCA7IFwNCgkJZWxzZSBcDQoJCQkk
e0VDSE9fTVNHfSA+JjIgIj4+ICR7UkVGfSBpcyB1cCB0byBkYXRlLiIgOyBc
DQoJCWZpIDsgXA0KCWVsc2UgXA0KCQkke0VDSE9fTVNHfSA+JjIgIj4+IHBr
ZyBub3QgYnVpbGQgeWV0LCBwYWNrYWdpbmcuLi4iIDsgXA0KCQl1cHRvZGF0
ZT0wIDsgXA0KCWZpIDsgXA0KCSR7RUNIT19NU0d9ICQkdXB0b2RhdGUNCg0K
IyByZWJ1aWxkIGJpbnBrZyBpZiBhbnkgb2YgdGhlIHBrZyBmaWxlcyBpcyBu
ZXdlciB0aGFuIHRoZSBiaW5hcnkgYXJjaGl2ZQ0KIyBzZXQgRE8gdG8gIjoi
IHRvIG5vdCBhY3R1YWxseSBkbyBhbnl0aGluZyAoZGVidWdnaW5nLCAuLi4p
DQpoZi1wYWNrYWdlOg0KCUB1cHRvZGF0ZT1gJHtNQUtFfSBoZi1jaGVjay11
cHRvZGF0ZSBSRUY9JHtQS0dGSUxFfWAgOyBcDQoJaWYgcGtnX2luZm8gLWUg
JHtQS0dOQU1FfSA7IHRoZW4gXA0KCQlpbnN0YWxsZWQ9MTsgXA0KCWVsc2Ug
XA0KCQlpbnN0YWxsZWQ9MDsgXA0KCWZpIDsgXA0KCWlmIFsgJCR1cHRvZGF0
ZSA9IDEgLWEgJCRpbnN0YWxsZWQgPSAwIF07IHRoZW4gXA0KCQkke0VDSE9f
TVNHfSAiPj4gaGYtaW5zdGFsbCBpbiBwcm9ncmVzcyAuLi4iIDsgXA0KCQkk
e0VDSE9fTVNHfSAke01BS0V9IGhmLWluc3RhbGwgOyBcDQoJCSR7RE99ICAg
ICAgICR7TUFLRX0gaGYtaW5zdGFsbCA7IFwNCgllbGlmIFsgJCR1cHRvZGF0
ZSA9IDAgLWEgJCRpbnN0YWxsZWQgPSAwIF07IHRoZW4gXA0KCQkke0VDSE9f
TVNHfSAiPj4gZnVsbCByZWJ1aWxkICBpbiBwcm9ncmVzcyAuLi4iIDsgXA0K
CQkke0VDSE9fTVNHfSAke01BS0V9IC1rIGRlaW5zdGFsbCA7IFwNCgkJJHtE
T30gICAgICAgJHtNQUtFfSAtayBkZWluc3RhbGwgOyBcDQoJCSR7RUNIT19N
U0d9ICR7TUFLRX0gLWsgY2xlYW4gOyBcDQoJCSR7RE99ICAgICAgICR7TUFL
RX0gLWsgY2xlYW4gOyBcDQoJCSR7RUNIT19NU0d9ICR7TUFLRX0gaW5zdGFs
bCA7IFwNCgkJJHtET30gICAgICAgJHtNQUtFfSBpbnN0YWxsIDsgXA0KCQkk
e0VDSE9fTVNHfSAke01BS0V9IHBhY2thZ2UgOyBcDQoJCSR7RE99ICAgICAg
ICR7TUFLRX0gcGFja2FnZSA7IFwNCgkJJHtFQ0hPX01TR30gJHtNQUtFfSAt
ayBjbGVhbiA7IFwNCgkJJHtET30gICAgICAgJHtNQUtFfSAtayBjbGVhbiA7
IFwNCglmaQ0KDQojIGluc3RhbGwgcGtnIC0gaWYgcG9zc2libGUgZnJvbSBi
aW5hcnkgcGtnIChpLmUuIGF2YWlsYWJsZSAmIHVwdG8gZGF0ZSkNCiMgZWxz
ZSByZXZlcnQgdG8gdGhlIG9sZCByZWNvbXBpbGluZy4NCmhmLWluc3RhbGw6
DQoJQGlmIFsgYCR7TUFLRX0gaGYtY2hlY2stdXB0b2RhdGUgUkVGPSR7UEtH
RklMRX1gID0gMSBdOyB0aGVuIFwNCgkJaWYgISBwa2dfaW5mbyAtZSAke1BL
R05BTUV9IDsgdGhlbiBcDQoJCQkke0RPfSAke01BS0V9IGRlcGVuZHMgOyBc
DQoJCQkke0RPfSBwa2dfYWRkIC12ICR7UEtHRklMRX0gOyBcDQoJCWZpIDsg
XA0KCWVsc2UgXA0KCQkke0VDSE9fTVNHfSAke01BS0V9IGhmLXBhY2thZ2Ug
OyBcDQoJCSR7RE99ICAgICAgICR7TUFLRX0gaGYtcGFja2FnZSA7IFwNCgkJ
JHtFQ0hPX01TR30gJHtNQUtFfSAtayBjbGVhbiA7IFwNCgkJJHtET30gICAg
ICAgJHtNQUtFfSAtayBjbGVhbiA7IFwNCglmaQ0K
--0-2072926387-894889380=:23328
Content-Type: TEXT/PLAIN; charset=US-ASCII; name="bsd.pkg-hf.subdir.mk.diff"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.NEB.3.95.980511142300.23328C@rfhpc8132.fh-regensburg.de>
Content-Description: 

SW5kZXg6IG1rL2JzZC5wa2cuc3ViZGlyLm1rDQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09DQpSQ1MgZmlsZTogL2N2c3Jvb3QvcGtnc3JjL21rL2JzZC5wa2cu
c3ViZGlyLm1rLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4xMQ0KZGlmZiAt
cjEuMTEgYnNkLnBrZy5zdWJkaXIubWsNCjg1Yzg1LDg2DQo8IAkJIG1pcnJv
ci1kaXN0ZmlsZXMgZGVpbnN0YWxsDQotLS0NCj4gCQkgbWlycm9yLWRpc3Rm
aWxlcyBkZWluc3RhbGwgaGYtY2hlY2twa2cgaGYtcGFja2FnZSBcDQo+IAkJ
IGhmLWluc3RhbGwNCg==
--0-2072926387-894889380=:23328--