[MacPorts] #48051: Installing a port +universal needlessly reinstalls recursive dependencies +universal
#48051: Installing a port +universal needlessly reinstalls recursive dependencies +universal ----------------------+-------------------------------- Reporter: larryv@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: base | Version: 2.3.99 Keywords: | Port: ----------------------+-------------------------------- 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. {{{ #!html <pre class="wiki" style="height: 15em"> % 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. </pre> }}} 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. {{{ #!html <pre class="wiki" style="height: 15em"> % 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. </pre> }}} -- Ticket URL: <https://trac.macports.org/ticket/48051> MacPorts <https://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts