ports/147242: portupgrade incorrectly remove old port when new one fails to compile

Ollivier Robert roberto at FreeBSD.org
Mon May 31 10:30:06 UTC 2010


>Number:         147242
>Category:       ports
>Synopsis:       portupgrade incorrectly remove old port when new one fails to compile
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon May 31 10:30:05 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Ollivier Robert
>Release:        9.0-CURRENT
>Organization:
>Environment:
FreeBSD vcs.fr.freebsd.org 9.0-CURRENT FreeBSD 9.0-CURRENT #4 r207793: Sat May  8 21:35:13 CEST 2010     root at vcs.fr.freebsd.org:/tank/src/head/sys/i386/compile/WORKHORSE  i386
>Description:
I'm trying to upgrade the llvm-devel port.  During the patch phase, one outdated patch fails.  portupgrade then decides to backup the old package (as if compilation had been successful) and removes it leading to the situation where the old version has been removed and the new one fails to compile (and fail to install obviously). 

portupgrade-devel-2.4.6

Full transcript
-----
=> SHA256 Checksum OK for llvm-2.8.r105218.tar.bz2.
===>   llvm-devel-2.8.r105218_1 depends on file: /usr/local/bin/perl5.8.9 - found
===>  Patching for llvm-devel-2.8.r105218_1
===>   llvm-devel-2.8.r105218_1 depends on file: /usr/local/bin/perl5.8.9 - found
===>  Applying FreeBSD patches for llvm-devel-2.8.r105218_1
Ignoring previously applied (or reversed) patch.
1 out of 1 hunks ignored--saving rejects to tools/clang/include/clang/Makefile.rej
=> Patch patch-tools_clang_include_clang_Makefile failed to apply cleanly.
=> Patch(es) patch-tools_clang_include_clang_Analysis_Analyses_PrintfFormatString.h applied cleanly.
*** Error code 1

Stop in /usr/ports/devel/llvm-devel.
*** Error code 1

Stop in /usr/ports/devel/llvm-devel.
--->  Backing up the old version
tar: include/clang/Basic/Release/DiagnosticASTKinds.inc.tmp: Cannot stat: No such file or directory
tar: include/clang/Basic/Release/DiagnosticAnalysisKinds.inc.tmp: Cannot stat: No such file or directory
tar: include/clang/Basic/Release/DiagnosticCommonKinds.inc.tmp: Cannot stat: No such file or directory
tar: include/clang/Basic/Release/DiagnosticDriverKinds.inc.tmp: Cannot stat: No such file or directory
tar: include/clang/Basic/Release/DiagnosticFrontendKinds.inc.tmp: Cannot stat: No such file or directory
tar: include/clang/Basic/Release/DiagnosticGroups.inc.tmp: Cannot stat: No such file or directory
tar: include/clang/Basic/Release/DiagnosticLexKinds.inc.tmp: Cannot stat: No such file or directory
tar: include/clang/Basic/Release/DiagnosticParseKinds.inc.tmp: Cannot stat: No such file or directory
tar: include/clang/Basic/Release/DiagnosticSemaKinds.inc.tmp: Cannot stat: No such file or directory
tar: include/clang/Driver/Release/CC1Options.inc.tmp: Cannot stat: No such file or directory
tar: include/clang/Driver/Release/Options.inc.tmp: Cannot stat: No such file or directory
tar: Error exit delayed from previous errors.
pkg_create: make_dist: tar command failed with code 256
--->  Uninstalling the old version
--->  Deinstalling 'llvm-devel-2.7.r102327'
pkg_delete: file '/usr/local/include/clang/Basic/Release/DiagnosticASTKinds.inc.tmp' doesn't exist
pkg_delete: file '/usr/local/include/clang/Basic/Release/DiagnosticAnalysisKinds.inc.tmp' doesn't exist
pkg_delete: file '/usr/local/include/clang/Basic/Release/DiagnosticCommonKinds.inc.tmp' doesn't exist
pkg_delete: unable to completely remove directory '/usr/local/include/llvm'
pkg_delete: file '/usr/local/include/clang/Driver/Release' doesn't exist
pkg_delete: unable to completely remove directory '/usr/local/include/clang/Driver/Release'
pkg_delete: unable to completely remove directory '/usr/local/include/clang/Driver'
pkg_delete: file '/usr/local/include/clang/Basic/Release' doesn't exist
pkg_delete: unable to completely remove directory '/usr/local/include/clang/Basic/Release'
pkg_delete: unable to completely remove directory '/usr/local/include/clang/Basic'
pkg_delete: unable to completely remove directory '/usr/local/include/clang/AST'
pkg_delete: unable to completely remove directory '/usr/local/include/clang'
pkg_delete: couldn't entirely delete package (perhaps the packing list is
incorrectly specified?)
[Updating the pkgdb <format:bdb_btree> in /var/db/pkg ... - 187 packages found (-1 +0) (...) done]
--->  Installing the new version via the port
===>  Patching for llvm-devel-2.8.r105218_1
===>   llvm-devel-2.8.r105218_1 depends on file: /usr/local/bin/perl5.8.9 - found
===>  Applying FreeBSD patches for llvm-devel-2.8.r105218_1
Ignoring previously applied (or reversed) patch.
2 out of 2 hunks ignored--saving rejects to tools/clang/include/clang/Analysis/Analyses/PrintfFormatString.h.rej
=> Patch patch-tools_clang_include_clang_Analysis_Analyses_PrintfFormatString.h failed to apply cleanly.
*** Error code 1

Stop in /usr/ports/devel/llvm-devel.
*** Error code 1

Stop in /usr/ports/devel/llvm-devel.
*** Error code 1

Stop in /usr/ports/devel/llvm-devel.
===>  Cleaning for llvm-devel-2.8.r105218_1
--->  Cleaning out obsolete shared libraries
418 [11:56] root at vcs:~# clang
zsh: command not found: clang
419 [11:56] root at vcs:~# clang -v
zsh: command not found: clang
420 [11:56] root at vcs:~#
-----

>How-To-Repeat:
See above.

I used:
cd /usr/ports/devel/llvm-devel
make BOOTSTRAP=yes makesum
portupgrade llvm-devel

>Fix:


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list