Opened 9 years ago
Closed 9 years ago
#49683 closed defect (fixed)
libphonenumber-cpp @7.2.1: upgrade fails
Reported by: | ryandesign (Ryan Carsten Schmidt) | Owned by: | dbevans (David B. Evans) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.3.4 |
Keywords: | Cc: | ||
Port: | libphonenumber-cpp |
Description
Upgrading libphonenumber-cpp @7.0.9 to 7.2.1 fails:
$ port -v installed libphonenumber-cpp The following ports are currently installed: libphonenumber-cpp @7.0.9_0+universal (active) platform='darwin 14' archs='i386 x86_64' $ sudo port upgrade libphonenumber-cpp build.jobs=1 ---> Computing dependencies for libphonenumber-cpp ---> Fetching distfiles for libphonenumber-cpp ---> Verifying checksums for libphonenumber-cpp ---> Extracting libphonenumber-cpp ---> Applying patches to libphonenumber-cpp ---> Configuring libphonenumber-cpp ---> Building libphonenumber-cpp Error: Failed to build libphonenumber-cpp: command execution failed Error: See /opt/local/var/macports/logs/_Users_rschmidt_macports_dports_devel_libphonenumber-cpp/libphonenumber-cpp/main.log for details. Error: Follow http://guide.macports.org/#project.tickets to report a bug. $
The main.log is attached.
It works fine if I deactivate libphonenumber-cpp @7.0.9 first:
$ sudo port -f deactivate libphonenumber-cpp ---> Unable to deactivate libphonenumber-cpp @7.0.9_0+universal, the following ports depend on it: ---> evolution-data-server @3.18.0_0+phonenumber Warning: Deactivate forced. Proceeding despite dependencies. ---> Deactivating libphonenumber-cpp @7.0.9_0+universal $ sudo port clean libphonenumber-cpp ---> Cleaning libphonenumber-cpp $ sudo port upgrade libphonenumber-cpp build.jobs=1 ---> Computing dependencies for libphonenumber-cpp ---> Fetching distfiles for libphonenumber-cpp ---> Verifying checksums for libphonenumber-cpp ---> Extracting libphonenumber-cpp ---> Applying patches to libphonenumber-cpp ---> Configuring libphonenumber-cpp ---> Building libphonenumber-cpp ---> Staging libphonenumber-cpp into destroot ---> Installing libphonenumber-cpp @7.2.1_0+universal ---> Cleaning libphonenumber-cpp ---> Computing dependencies for libphonenumber-cpp ---> Activating libphonenumber-cpp @7.2.1_0+universal ---> Cleaning libphonenumber-cpp $
This suggests that the order of -I
flags is incorrect, placing -I/opt/local/include
before the flags for the source directories when it should be after.
If the order of -I
flags can't be fixed, another fix might be to use
configure.cppflags-replace -I${prefix}/include -isystem${prefix}/include
See #40656.
If that doesn't work, the last resort would be to use the conflicts_build 1.0 portgroup and declare conflicts_build ${name}
.
Attachments (1)
Change History (5)
Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)
comment:1 Changed 9 years ago by dbevans (David B. Evans)
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:2 follow-up: 3 Changed 9 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Resolution: | fixed |
---|---|
Status: | closed → reopened |
That's not a fix. That's a hack workaround. Reopening to track actually fixing this.
comment:3 Changed 9 years ago by dbevans (David B. Evans)
Replying to jeremyhu@…:
That's not a fix. That's a hack workaround. Reopening to track actually fixing this.
Yes, but what do you really think?
comment:4 Changed 9 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
r144670 actually fixes the bug.
Thanks for spotting this.
In this case (and others such as podofo) that use cmake, it is unclear to me how to massage the cmake configuration to force a particular include order and -isystem${prefix}/include has no effect. I suspect it is being overridden by the cmake portgroup. So, for now, I have used conflicts_build as the choice of last resort. Fortunately, in this case, the port builds correctly on the buildbots and the binary is distributable so I expect that most users will just install the binary on upgrade and not run into this issue.
Fix committed in r142677.