[arch-dev-public] Berkeley DB change proposal
Hi all, I'm about to make a slight change to evolution-data-server: build with system DB. Advantages: instead of having 4 copies of DB linked into a running evolution-data-server process (takes 4x600KB of memory), have only 1 copy of it running, which takes 1x600KB, saves 1800KB memory for having your gnome clock applet reading information from your evolution calendar Downside: Building with system-db breaks all datafiles, because they would need to get upgraded Workaround: Install a copy of DB 4.1.25, which is shipped internally in evolution, build with that Current workaround: - build a copy of DB 4.1.25 - install it in ${startdir}/src/build-db41 - make EDS configure script detect it there - make LDFLAGS+="-R/opt/gnome/lib/evolution-data-server-1.2" - install EDS as usual - install the libdb-4.1.so file in the location provided in LDFLAGS Very very very hacky, and we'll end up with quite some libdb-4.1.so files in the future if this goes on. Given the trouble we have with major upgrades of DB all the time, I would suggest a different approach to the DB package. Currently, DB contains some utilities, a versioned library and some generic include files. IMHO we should change that and put each DB package in a versioned pkgname: db4.1: /usr/bin/db4.1_* /usr/lib/libdb-4.1.so /usr/lib/libdb-4.1.a /usr/include/db4.1/*.h db4.5: /usr/bin/db4.5_* /usr/lib/libdb-4.5.* /usr/include/db4.5/*.h db: /usr/bin/db_* as symlinks to most recent DB package /usr/lib/libdb.* as symlinks to most recent DB package /usr/include/*.h as symlinks to most recent DB package This would: - throw away all bug reports we get on DB upgrades, old DB pkg stays installed, all new pkgs get compiled against the new DB version - make it very easy to compile packages with specific DB versions - Allow users to actually do something with on-disk DB files when it belongs to an older version. _______________________________________________ arch-dev mailing list arch-dev@archlinux.org http://www.archlinux.org/mailman/listinfo/arch-dev
participants (1)
-
Jan de Groot