Opened 19 years ago

Closed 18 years ago

#3951 closed enhancement (fixed)

DP upgrade should track library dependencies for rebuild

Reported by: kyle-opendarwinbugzilla@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: base Version: 1.0
Keywords: Cc: olegb@…, ronaldoussoren@…
Port:

Description

Subversion has a depends_lib on libdb4, however, after db4 is upgraded, subversion no longer works because it linked against the specific version of db4 that was installed. Thus: after an upgrade from db4 4.2 to db4 4.3, subversion will not load.

Change History (14)

comment:1 Changed 19 years ago by kyle-opendarwinbugzilla@…

Specifically, it seems, subversion now depends on db4 4.1.25:

[kyle@tunican powerpc]$ sudo port install subversion Password: ---> Fetching subversion ---> Attempting to fetch subversion-1.2.1.tar.bz2 from http://subversion.tigris.org/tarballs/ ---> Verifying checksum(s) for subversion ---> Extracting subversion ---> Applying patches to subversion ---> Configuring subversion Error: Target com.apple.configure returned: configure failure: shell command "cd "/opt/local/var/db/dports/build/file._opt_local_var_db_dports_sources_rsync.rsync.opendarwin.org_dpupdate_dports_devel_subversion/work/subversion-1.2.1" && ./configure --prefix=/opt/local --with-berkeley-db=/opt/local/include/db4:/opt/local/lib --with-neon=/opt/local --with-apr=/opt/local --with-apr-util=/opt/local --without-apxs --mandir=\${prefix}/share/man" returned error 1 Command output: checking whether to build static libraries... yes configure: creating libtool appending configuration tag "CXX" to libtool checking for ld used by g++... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... no checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes checking for g++ option to produce PIC... -fno-common checking if g++ PIC flag -fno-common works... yes checking if g++ supports -c -o file.o... yes checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... darwin8.1.0 dyld checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes appending configuration tag "F77" to libtool checking whether libtool accepts --tag=XXX... yes checking whether libtool needs -no-undefined... no configure: checking neon library checking neon library version... 0.24.7 checking for static Apache module support... no checking for Apache module support via DSO through APXS... no ================================================================== WARNING: skipping the build of mod_dav_svn

--with-apxs or --with-apache must be used

================================================================== checking for socket in -lsocket... no configure: WARNING: APR-UTIL may or may not be using the specified

Berkeley DB at `/opt/local/include/db4:/opt/local/lib'.

Using the Berkeley DB

supplied by APR-UTIL.

checking for availability of Berkeley DB... no configure: error: Berkeley DB 4.1.25 wasn't found.

comment:2 Changed 19 years ago by kyle-opendarwinbugzilla@…

Summary: svn depends on specific db4 versionsvn depends on specific db4 version because of apr-util

The temporary solution is to uninstall subversion and apr-util, delete the package file, and then reinstall both of them.

comment:3 Changed 19 years ago by danielluke (Daniel J. Luke)

Owner: changed from darwinports-bugs@… to dluke@…

After you remove the db4 libs and upgrade to a new version, you will need to remove apr-util and re-build it to link against the new ones.

If you do this, do you still have problems?

comment:4 Changed 19 years ago by danielluke (Daniel J. Luke)

Status: newassigned

comment:5 Changed 19 years ago by danielluke (Daniel J. Luke)

Darwinports doesn't really have a way to express version interdependencies.

Suggestions for alternate ways of resolving this are welcome.

comment:6 Changed 19 years ago by kyle-opendarwinbugzilla@…

(In reply to comment #3)

After you remove the db4 libs and upgrade to a new version, you will need to

remove apr-util and re-build

it to link against the new ones.

If you do this, do you still have problems?

Nope - it installs and builds just fine. The question remains, however, whether or not I have to jump through all these hoops the next time db4 gets updated.

comment:7 Changed 19 years ago by danielluke (Daniel J. Luke)

You probably do. Unless/until the darwinports infrastructure is updated to handle this sort of thing better. I could work-around this case by creating new ports for each db4 revision and forcing the subversion and apr-util ports to depend on those specific ports (and bumping the revision every time they change, thus forcing a rebuild) but that's an ugly non-solution.

I'm open to any ideas you (or anyone else) may have.

comment:8 Changed 19 years ago by danielluke (Daniel J. Luke)

Owner: changed from dluke@… to darwinports-bugs@…
severity: normalenhancement
Status: assignednew
Summary: svn depends on specific db4 version because of apr-utilDP upgrade should track library dependencies for rebuild

comment:9 Changed 19 years ago by pguyot (Paul Guyot)

Component: dportswww

comment:10 Changed 19 years ago by pguyot (Paul Guyot)

Component: wwwbase

comment:11 Changed 19 years ago by pguyot (Paul Guyot)

Cc: ronaldoussoren@… added

* Bug 4066 has been marked as a duplicate of this bug. *

comment:12 Changed 18 years ago by jmpp@…

dependson: 5063

comment:13 Changed 18 years ago by olegb@…

Cc: olegb@… added

comment:14 Changed 18 years ago by olegb@…

Resolution: fixed
Status: newclosed

rebuilding is possible in HEAD - closing.

Note: See TracTickets for help on using tickets.