Opened 9 years ago
Last modified 5 years ago
#48051 new defect
Installing a port +universal needlessly reinstalls recursive dependencies +universal
Reported by: | larryv (Lawrence Velázquez) | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | base | Version: | 2.3.99 |
Keywords: | Cc: | ryandesign (Ryan Carsten Schmidt), mojca (Mojca Miklavec), fhgwright (Fred Wright) | |
Port: |
Description
I have zlib
installed. It only has an extract dependency on xz
, which I also have installed.
% port -v deps zlib Full Name: zlib @1.2.8_0 Extract Dependencies: bin:xz:xz % port -v installed xz zlib The following ports are currently installed: xz @5.2.1_0 (active) platform='darwin 15' archs='x86_64' zlib @1.2.8_0 (active) platform='darwin 15' archs='x86_64'
If I try to install zlib +universal
, I don’t expect xz
to be reinstalled because it’s just an extract dependency. Indeed, this doesn’t happen.
% sudo port -N install zlib +universal ---> Computing dependencies for zlib ---> Fetching distfiles for zlib ---> Verifying checksums for zlib ---> Extracting zlib ---> Applying patches to zlib ---> Configuring zlib ---> Building zlib ---> Staging zlib into destroot ---> Installing zlib @1.2.8_0+universal ---> Deactivating zlib @1.2.8_0 ---> Cleaning zlib ---> Activating zlib @1.2.8_0+universal ---> Cleaning zlib ---> Updating database of binaries ---> Scanning binaries for linking errors ---> No broken files found.
Cool. I don’t actually need a universal zlib
, so I reactivate the old one and uninstall the universal one.
Now I want to install openssl +universal
. It has a library dependency on zlib
.
% port -v deps openssl Full Name: openssl @1.0.2c_0 Library Dependencies: port:zlib % port -v installed openssl xz zlib The following ports are currently installed: xz @5.2.1_0 (active) platform='darwin 15' archs='x86_64' zlib @1.2.8_0 (active) platform='darwin 15' archs='x86_64'
So I expect zlib
to be rebuilt universal before openssl
is built. Like before, I don’t expect xz
to be reinstalled because it’s just an extract dependency. This time, I am sorely disappointed.
% sudo port -kN install openssl +universal ---> Fetching distfiles for gperf ---> Verifying checksums for gperf ---> Extracting gperf ---> Applying patches to gperf ---> Configuring gperf ---> Building gperf ---> Staging gperf into destroot ---> Installing gperf @3.0.4_2+universal ---> Activating gperf @3.0.4_2+universal ---> Computing dependencies for libiconv ---> Fetching distfiles for libiconv ---> Verifying checksums for libiconv ---> Extracting libiconv ---> Applying patches to libiconv ---> Configuring libiconv ---> Building libiconv ---> Staging libiconv into destroot ---> Installing libiconv @1.14_0+universal ---> Deactivating libiconv @1.14_0 ---> Cleaning libiconv ---> Activating libiconv @1.14_0+universal ---> Fetching distfiles for expat ---> Verifying checksums for expat ---> Extracting expat ---> Applying patches to expat ---> Configuring expat ---> Building expat ---> Staging expat into destroot ---> Installing expat @2.1.0_0+universal ---> Deactivating expat @2.1.0_0 ---> Cleaning expat ---> Activating expat @2.1.0_0+universal ---> Fetching distfiles for ncurses ---> Verifying checksums for ncurses ---> Extracting ncurses ---> Applying patches to ncurses ---> Configuring ncurses ---> Building ncurses ---> Staging ncurses into destroot ---> Installing ncurses @5.9_2+universal ---> Deactivating ncurses @5.9_2 ---> Cleaning ncurses ---> Activating ncurses @5.9_2+universal ---> Computing dependencies for gettext ---> Fetching distfiles for gettext ---> Verifying checksums for gettext ---> Extracting gettext ---> Configuring gettext ---> Building gettext ---> Staging gettext into destroot ---> Installing gettext @0.19.4_0+universal ---> Computing dependencies for gettext ---> Deactivating gettext @0.19.4_0 ---> Cleaning gettext ---> Activating gettext @0.19.4_0+universal ---> Computing dependencies for xz ---> Fetching distfiles for xz ---> Verifying checksums for xz ---> Extracting xz ---> Configuring xz ---> Building xz ---> Staging xz into destroot ---> Installing xz @5.2.1_0+universal ---> Computing dependencies for xz ---> Deactivating xz @5.2.1_0 ---> Cleaning xz ---> Activating xz @5.2.1_0+universal ---> Computing dependencies for zlib ---> Fetching distfiles for zlib ---> Verifying checksums for zlib ---> Extracting zlib ---> Applying patches to zlib ---> Configuring zlib ---> Building zlib ---> Staging zlib into destroot ---> Installing zlib @1.2.8_0+universal ---> Deactivating zlib @1.2.8_0 ---> Cleaning zlib ---> Activating zlib @1.2.8_0+universal ---> Computing dependencies for openssl ---> Fetching distfiles for openssl ---> Verifying checksums for openssl ---> Extracting openssl ---> Applying patches to openssl ---> Configuring openssl ---> Building openssl ---> Staging openssl into destroot ---> Installing openssl @1.0.2c_0+universal ---> Activating openssl @1.0.2c_0+universal ---> Updating database of binaries ---> Scanning binaries for linking errors ---> No broken files found.
Change History (3)
comment:1 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… added |
---|
comment:3 Changed 5 years ago by fhgwright (Fred Wright)
Cc: | fhgwright added |
---|
Note: See
TracTickets for help on using
tickets.
Cc Me!