[xmlsec] versioning and library naming policies
aleksey at aleksey.com
Tue Apr 1 11:41:29 PST 2003
I think I come up with a plan that should satisfy everyone (but I don't like
it much myself, see comments bellow). Let me know if it will not work for
you or you have any other ideas. All the changes bellow apply to Unixes
If you don't care about Unix then nothing changes for you.
0) Package name.
From now on the package name changes from "xmlsec" to "xmlsec-0.0",
"xmlsec-0.1" and so on.
1) Include files.
The include files are move from "$(prefix)/include" to
"$(prefix)/include/xmlsec-0.1", ... folders. The "xmlsec-config" script
is updated and
will return correct new include folders. If you hard coded the xmlsec
folder in your Makefile the you'll have to change it manually.
2) Library files.
2.1) Library files are moved from "$(prefix)/lib" to
"$(prefix)/lib/xmlsec-0.1", ... folders. The "xmlsec-config" script is
updated to return
correct paths. Also all the libraries are build using "-R" and "-rpath"
options. If you use libtool for building your application then you
should get correct
linking options and "$(prefix)/lib/xmlsec-N.M" folder will be added to
search path for your application. If you don't use libtool then you'll
have to add
"-Wl, -rpath -WL, $(prefix)/lib/xmlsec-N.M" to your makefiles.
2.2) Library names have changed from "libxmlsec.so*" to
"libxmlsec-0.1.so*", .... The static library names have *not* changed.
3) xmlsec-config script
xmlsec-config script have updated to return new paths, etc. From now on
there will be
two scripts: xmlsec-config and xmlsec0-config (xmlsec1-config, ...) If
you want to link
against particular xmlsec version, use the "numbered" version.
4) man pages
Same as xmlsec-config script: two man pages "xmlsec.1" and "xmlsec0.1"
I don't like conflicts in items 3) and 4) by I don't have a good
solution. I also don't like
that because of 2.1) you'll need to either use "-rpath" option for
building your app
but I don't see any other good solution that provides a way to have
for static libraries. Everything works just fine if we say that multiple
(xmlsec runtime) is allowed on the box but only *one* xmlsec-devel
And I wonder if anybody thinks that we go with this. This perfectly
solves all the problems
with items 2.1), 3) and 4).
Comments, suggestions, ideas?
With best regards,
More information about the xmlsec