order of operations in port upgrade

Rainer Müller raimue at macports.org
Wed Oct 5 15:48:21 PDT 2016


On 2016-10-06 00:14, Brandon Allbery wrote:
> On Wed, Oct 5, 2016 at 5:41 PM, Rainer Müller <raimue at macports.org
> <mailto:raimue at macports.org>> wrote:
> 
>     On 2016-10-05 11:09, René J.V. Bertin wrote:
>     > Quick question: a normal (non-forced) upgrade currently does
>     >
>     > 1) install (create new tarball image)
>     > 2) deactivate old
>     > 3) activate new
>     > 4) clean ${workpath} (unless -k)
> 
>     Cannot reproduce. The clean target will already be run after step 1) and
>     remove the work directory.
> 
> 
> 1 is the destroot phase of a "port upgrade", not a separate command 

Yes, the clean target is run after executing the install target (without
activate) during the upgrade procedure.

It can clearly be seen in the output. For testing, just increase the
revision in a port and run an upgrade:

$ sudo port upgrade less
--->  Computing dependencies for less
...
--->  Building less
--->  Staging less into destroot
--->  Installing less @481_999+pcre
--->  Cleaning less
--->  Computing dependencies for less
--->  Deactivating less @481_0+pcre
--->  Cleaning less
--->  Activating less @481_999+pcre
--->  Cleaning less
...

You will see additional cleaning after deactivate/activate. This is for
the Portfile stored in the registry and is unrelated to the work
directory used for building and destroot.

Rainer


More information about the macports-dev mailing list