Re: GNOME 1.4.1 beta2



On Wed, 5 Sep 2001, Daniel Veillard wrote:

>   This should not afect libxml1 since it uses $prefix/include/gnome-xml
> while libxml2 uses $prefix/include/libxml

Assuming you don't want to change the directory again when you release
libxml 3 (assuming it will happen at some point in the future), you should
probably move the headers.

>
>   Now I may get convinced to try to "fix" libxml2 if I get instructions
> about it and a clear picture on how it really solve the problem. Let's
> say I'm nearly convinced this is needed but I want to read written
> description of the suggested change to implement it.

It is fairly simple.  Instead of installing the headers in
$(includedir)/libxml, install them in a directory including the version
number.  A good choice would be something like
$(includedir)/libxml-2.0/libxml.

Now modify your pkg-config data file so that it has
-I${includefir}/libxml-2.0 in the Cflags line (you shouldn't need
-I${includedir} anymore).  This way, people can still do "#include
<libxml/parser.h>" and not have to worry about other major versions of
libxml being installed under the same prefix.

If you still have a *-config script, a similar modification should be
made.

Libxml-2.x already has a different library name, so that should install
fine.

Now when you next make an incompatible release of libxml, just change the
version number in the directory where the headers are installed, change
the library name and update the .pc file (you should change the name of
the .pc file as well).

>
>   In that case I would release libxml2-2.4.4 before GNOME 1.4.1 beta2
> (you're shipping libxml2 right ?).

You may as well make the same modifications to the 1.x branch of libxml
while you are at it (putting headers in
$(includedir)/libxml-1.0/gnome-xml).  For the 1.x platform, it is a little
more painful to change these things, as we aren't using pkg-config, so the
cflags are encoded in the *-config scripts of all dependent packages.  For
this reason, everyone who is going to make the change should do it now
(for gnome 1.4.1) to limit the pain for people upgrading their systems.

If you change the libxml1 include dir, it would be a good idea to change
the "$(includedir)/gnome-xml/libxml -> ." symlink to be
"$(includedir)/libxml-1.0/libxml -> gnome-xml" so that there isn't a
symlink loop.

James.

-- 
Email: james daa com au
WWW:   http://www.daa.com.au/~james/






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]