Bug 194440 - devel/pear breaks most upgrade paths, and violates ${STAGE}
Summary: devel/pear breaks most upgrade paths, and violates ${STAGE}
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Many People
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-10-18 01:49 UTC by Chris Hutchinson
Modified: 2015-01-03 15:58 UTC (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Hutchinson 2014-10-18 01:49:25 UTC
using portmaster(8) to attempt to upgrade lang/php, and friends, will
ultimately fail when attempting to (re)install pear. There is no
switch, or other ENV available to _force_ reinstall of devel/pear.
After several attempts, a look into devel/pear/Makefile reveals:

do-install:
...

# pear violates stage when staging as root, hide this
.if defined(PACKAGE_BUILDING)
	@${RM} -rf ${PEARDIR}
.endif

This totally hoses any attempt to do any recursive upgrades that bump
into pear. What needs to be done to fix this, and why was it allowed
to remain this way?

Thank you for all your time, and consideration.

--Chris

P.S. This is on RELENG_9 && pear-1.9.4_3
Comment 1 Bugzilla Automation freebsd_committer freebsd_triage 2014-10-18 01:49:25 UTC
Auto-assigned to maintainer miwi@FreeBSD.org
Comment 2 Chris Hutchinson 2014-10-18 02:34:02 UTC
It now isn't possible to buils, or install devel/pear:

# cd /usr/ports/pear
# make

===>   pear-1.9.4_3 depends on file: /usr/local/sbin/pkg - found
=> pear-1.9.4.tar.bz2 doesn't seem to exist in /usr/ports/distfiles/.
=> Attempting to fetch http://miwibox.org/distfiles/pear-1.9.4.tar.bz2
fetch: http://miwibox.org/distfiles/pear-1.9.4.tar.bz2: Connection refused
=> Attempting to fetch http://distcache.FreeBSD.org/ports-distfiles/pear-1.9.4.tar.bz2
pear-1.9.4.tar.bz2                            100% of  315 kB  513 kBps 00m00s
===> Fetching all distfiles required by pear-1.9.4_3 for building
===>  Extracting for pear-1.9.4_3
=> SHA256 Checksum OK for pear-1.9.4.tar.bz2.
===>  Patching for pear-1.9.4_3
===>  Applying FreeBSD patches for pear-1.9.4_3
===>   pear-1.9.4_3 depends on file: /usr/local/include/php/main/php.h - found
===>   pear-1.9.4_3 depends on file: /usr/local/lib/php/20121212/xml.so - found
===>  Configuring for pear-1.9.4_3
===>  Staging for pear-1.9.4_3
===>   pear-1.9.4_3 depends on file: /usr/local/include/php/main/php.h - found
===>   pear-1.9.4_3 depends on file: /usr/local/lib/php/20121212/xml.so - found
===>   Generating temporary packing list
*** [do-install] Error code 1

Stop in /usr/ports/devel/pear.

# 

--Chris
Comment 3 Antoine Brodin freebsd_committer freebsd_triage 2014-11-10 20:50:24 UTC
It works for me.
AFAIK portmaster doesn't (and shouldn't) set PACKAGE_BUILDING so the line you mention shouldn't affect the installation.
Comment 4 Antoine Brodin freebsd_committer freebsd_triage 2015-01-03 15:58:25 UTC
Close, feedback timeout