There are a couple of things you can do if your make release
fails while trying to make the docs.

You could use "on demand" dialing for ppp so that it connects only
when it needs to (and hangs up after some period of inactivity) so
you're not connected for so long.  Making these ports is the only
part of a make release that requires fetching files.

You could also have the make release continue more or less where it
left off.  You do *not* want to start it over by typing "make release" 
in /usr/src/release, as this will delete what's already been done.
But you can chroot to the directory where the release is being built
and run the file "mk" in that directory.  This is a shell script 
that is created when you run "make release" in /usr/src/release, and
once the chroot directive is reached in the Makefile in /usr/src/release,
only what's in the chroot directory structure is relevant.  Running
"mk" from this directory should allow things to continue where they
left off, because this script incorporates the variables you decided
upon when you edited the Makefile in /usr/src/release and runs
the :doRELEASE target in Makefile in $CHROOTDIR/usr/src/release,
which records ("touch release.1", for example) what's been done.

An alternative is to define a target in /usr/src/release/Makefile
called (e.g.) release.0, and have it simply chroot to the directory
where you're building the release and run mk there.  You can then
define in mk any target you want to build in the Makefile in
$CHROOTDIR/usr/src/release, and then put this target in the 
Makefile.  This means you can continue where you left off by
typing "make release.0" in /usr/src/release.

By this time the ports distfiles will already have been copied to
$CHROOTDIR/usr/ports/distfiles, and anything in the /usr/ports/distfiles
directory or wherever you tell it to get the distfiles (/usr/ports/
distfiles.release in your case) will not be found.  If you need to
add a distfile, you need to put it in $CHROOTDIR/usr/ports/distfiles.  

A possible strategy before beginning the make release is to move the
existing /usr/ports/distfiles to a hold location, do "make install"
in /usr/ports/textproc/docproj, and hope that you in this way get all
the distfiles you need for the release.  You might have to deinstall
first so that it does go through the whole build process and gets all
the dependencies.  If you do this, you want to make sure your version
of the ports tree in /usr/ports is the same as the version you want
to build in "make release."  I personally think these little ports
like tidy are troublesome because the version numbers change so often;
so probably the best approach is to have an open connection during
the build of doc.1 so it can get anything you haven't yet gotten.

Annelise



On Sun, 7 Nov 1999, Marc Schneiders wrote:

> I have studied the Makefile. 
> I have searched the archives of the lists. 
> I have put the files necessary for the ports build for docproj during
> the make in a separate directory (/usr/ports/distfiles.release), 
> with no extra files there. 
> I have set this in the Makefile. Nevertheless this is what happened:
> 
> touch release.2
> Making docs...
> ===>  Extracting for docproj-1.1     
> [...]
> [...]
> [...]
> ===>   Registering installation for sgmlformat-1.7
> ===>   Returning to build of docproj-1.1
> ===>   docproj-1.1 depends on executable: sgmlnorm - found
> ===>   docproj-1.1 depends on executable: jade - found
> ===>   docproj-1.1 depends on executable: tidy - not found
> ===>    Verifying install for tidy in /usr/ports/www/tidy
> ===>  Extracting for tidy-0.9.99.1
> >> Checksum OK for tidy27sep99.tgz.  
> 
> Here it just stopped (and had been waiting for 9 hours...). No error
> message, nothing. Machine was responding OK. No kernel messages, no
> messages. Nothing peculiar in top etc. So I tried something weird (in
> my eyes anyway) and kill -HUPped the PID. It continued. Great, well
> for a moment.
> 
> ===>  Patching for tidy-0.9.99.1
> ===>  Applying FreeBSD patches for tidy-0.9.99.1
> ===>  Configuring for tidy-0.9.99.1
> ===>  Building for tidy-0.9.99.1
> cc -O -pipe -D__USE_MISC -c attrs.c
> cc -O -pipe -D__USE_MISC -c istack.c
> cc -O -pipe -D__USE_MISC -c parser.c
> cc -O -pipe -D__USE_MISC -c tags.c
> cc -O -pipe -D__USE_MISC -c entities.c
> cc -O -pipe -D__USE_MISC -c lexer.c
> cc -O -pipe -D__USE_MISC -c pprint.c
> cc -O -pipe -D__USE_MISC -c clean.c
> cc -O -pipe -D__USE_MISC -c localize.c
> cc -O -pipe -D__USE_MISC -c config.c
> cc -O -pipe -D__USE_MISC -c tidy.c
> cc -O -pipe -D__USE_MISC -o tidy  attrs.o         istack.o
> parser.o        tags.o  entities.o      lexer.o         pprint.o
> clean.o  localize.o      config.o     tidy.o -lc                                     
>   
> ===>  Installing for tidy-0.9.99.1
> install -c -s -o root -g wheel -m 555
> /usr/ports/www/tidy/work/tidy27sep99/tidy /usr/local/bin/tidy
> ===>   Installing documentation for tidy-0.9.99.1
> ===>   Generating temporary packing list
> ===>   Registering installation for tidy-0.9.99.1
> ===>   Returning to build of docproj-1.1
> ===>   docproj-1.1 depends on executable: lynx - not found
> ===>    Verifying install for lynx in /usr/ports/www/lynx
> ===>  Extracting for lynx-2.8.2rel.1
> >> Checksum OK for lynx2.8.2rel.1.tar.bz2.
> ===>   lynx-2.8.2rel.1 depends on executable: bzip2 - not found
> ===>    Verifying install for bzip2 in /usr/ports/archivers/bzip2
> >> bzip2-0.9.5d.tar.gz doesn't seem to exist on this system.
> >> Attempting to fetch from
> ftp://sourceware.cygnus.com/pub/bzip2/v095/.
> fetch: sourceware.cygnus.com: Host name lookup failure
> >> Attempting to fetch from
> http://www.kernel.org/pub/software/utils/compress/bzip2/.
> fetch: `www.kernel.org': cannot resolve: Host name lookup failure
> >> Attempting to fetch from
> ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/.
> fetch: ftp.FreeBSD.org: Host name lookup failure
> >> Couldn't fetch it - please try to retrieve this
> >> port manually into /usr/ports/distfiles/ and try again.
> *** Error code 1
>                                                               
> bzip2-0.9.5d.tar.gz *is* in the directory
> /usr/ports/distfiles.release, mentioned earlier.
> 
> Now what can I do? Should this file (and others?, but which?) be in
> the 'normal' distfiles directory and not in the one set in the
> Makefile?
> 
> I can see only one way out, which is to spend about $30 on phone
> charges and stay online for the make release, after deleting *all* of
> the distfiles on my system.
> 
> Maybe there is someone out there who knows a cheaper and better way?
> 
> TIA!
> 
> Marc
> 
> Marc Schneiders
> 
> [EMAIL PROTECTED]
> [EMAIL PROTECTED]
> 
> propro                  1:40pm  up  11 days,   7:21,  load average: 2.23 2.13 2.04
> 
> 
> 
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-current" in the body of the message
> 



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to