HomeFreeBSD

freebsd-update: handle file -> directory on upgrade

Description

freebsd-update: handle file -> directory on upgrade

Upgrading from FreeBSD 13.2 to 14.0 failed with

install: ///usr/include/c++/v1/__string exists but is not a directory

because __string changed from a file to a directory with an LLVM
upgrade.

Now, remove the existing file when the type conflicts. Note that this
is only an interim fix to facilitate upgrades from 13.2 for 14.0 BETA
testing. This change does not handle the directory -> file case and
further work is needed.

PR: 273661
Reviewed by: dim, gordon
Approved by: so
Security: FreeBSD-EN-23:12.freebsd-update
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D41893

(cherry picked from commit f6d37c9ca13f8ab0ef32cf5344daecb8122d1e85)
(cherry picked from commit 274281864fc03c62443677751bf3036fbbf9d778)

Details

Provenance
emasteAuthored on Sep 27 2023, 1:36 PM
gordonCommitted on Oct 3 2023, 9:10 PM
Reviewer
dim
Differential Revision
D41893: freebsd-update: handle file->directory change on upgrade
Parents
rG193b7e3d0af5: freebsd-update: Fix merging already-updated files
Branches
Unknown
Tags
Unknown