Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Aug 1995 23:44:52 -0700 (PDT)
From:      "Rodney W. Grimes" <rgrimes@gndrsh.aac.dev.com>
To:        gary@palmer.demon.co.uk (Gary Palmer)
Cc:        jhs@freebsd.org, ports@freebsd.org
Subject:   Re: bsd.ports.mk checksum
Message-ID:  <199508220644.XAA06375@gndrsh.aac.dev.com>
In-Reply-To: <6794.809068775@palmer.demon.co.uk> from "Gary Palmer" at Aug 22, 95 06:19:35 am

next in thread | previous in thread | raw e-mail | index | archive | help
...
> 
> I would have to say it is the minority view. The ports mechanism is
> NOT designed to have the sources left lying around, in EXTRACTED
> form. It CANNOT handle this... (think about it - if it goes to the
> next version, there will still be a .extract_done or whatever lying
> around, and the system won't dare change anything, so you'll still
> have the old sources extracted).

If it can't handle this, then the Makefile and/or .mk file is missing
a dependency that would quickly fix the problem:
.extract_done: Makefile

Makefiles are almost always modified for any new version of the port
due to source distribution changing.

> The ports system is decidedly compile, install and clean-up in one go,
> or be burnt. Making it otherwise would require taking bsd.port.mk to
> such a level of complexity that it probably would fail more often than
> it would work.

It is missing a few dependencios for all the .magic cookies.  .magic
cookies with missing dependecies are a pain.  I really hate it when
I say ``make install'' and it don't do squat, I do a lot of NFS mounting,
this .install_done cookie thing has no idea if this system has had the install
run on it :-(.

> Yes, I agree that the checksum routine should not be run at every
> step, but I think that your reasons are mis-founded.
> 
> And throughout this discussion, you have YET to suggest a fix to this
> situation! Where's the patch to fix this problem?

Here is mine for the .extract_done not causing an extract if the
Makefile has changed because this is a new version of the port:
[This is on a RELENG_2_1_0 branch, may need hand applying to -current]

Index: bsd.port.mk
===================================================================
RCS file: /home/ncvs/src/share/mk/bsd.port.mk,v
retrieving revision 1.165
diff -c -r1.165 bsd.port.mk
*** 1.165	1995/06/06 10:56:34
--- bsd.port.mk	1995/08/22 06:42:55
***************
*** 625,631 ****
  .if !target(extract)
  extract: checksum ${EXTRACT_COOKIE}
  
! ${EXTRACT_COOKIE}:
  	@${ECHO_MSG} "===>  Extracting for ${PKGNAME}"
  .if target(pre-extract)
  	@${MAKE} ${.MAKEFLAGS} pre-extract
--- 625,631 ----
  .if !target(extract)
  extract: checksum ${EXTRACT_COOKIE}
  
! ${EXTRACT_COOKIE}: Makefile
  	@${ECHO_MSG} "===>  Extracting for ${PKGNAME}"
  .if target(pre-extract)
  	@${MAKE} ${.MAKEFLAGS} pre-extract


-- 
Rod Grimes                                      rgrimes@gndrsh.aac.dev.com
Accurate Automation Company                 Reliable computers for FreeBSD



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