Hi there, I've taken a close look at possible clashes in parallel installation of libftdi 0.x and 1.x.
Here's the current situation of libftdi 0.18 on Fedora 15: ------------------------------------------------------------ /etc/udev/rules.d/99-libftdi.rules /usr/lib64/libftdi.so.1 /usr/lib64/libftdi.so.1.18.0 /usr/share/doc/libftdi-0.18/AUTHOS /usr/share/doc/libftdi-0.18/COPYING.LIB /usr/share/doc/libftdi-0.18/xxx /usr/bin/libftdi-config /usr/include/ftdi.h /usr/lib64/libftdi.so /usr/lib64/pkgconfig/libftdi.pc /usr/share/doc/libftdi-devel-0.18 /usr/share/doc/libftdi-devel-0.18/html /usr/share/doc/libftdi-devel-0.18/html/xxx /usr/share/man/man3/Ftdi.3.gz /usr/share/man/man3/Ftdi_Context.3.gz ... /usr/share/man/man3/ftdi_device_list.3.gz /usr/share/man/man3/ftdi_eeprom.3.gz /usr/share/man/man3/libftdi.3.gz /usr/share/man/man3/usb_dev_handle.3.gz ------------------------------------------------------------ A parallel installation of libftdi 1.x gives the following trouble: ------------------------------------------------------------ - .so library name clash -> soversion already bumped to 2.x - libftdi-config name clash - ftdi.h name clash - pkgconfig filename clash: libftdi.pc - man pages name clashes ------------------------------------------------------------ I propose the following changes for libftdi 1.x ------------------------------------------------------------ - libftdi-config -> libftdi-1.0-config - ftdi.h -> /usr/include/ftdi-1.0.h - libftdi.pc -> libftdi-1.0.pc (pkgconfig file). Also "libftdipp-1.0.pc" - we can't do much about possible man page clashes. You can't prefix them in doxygen, just redirect the output to a non-default directory - Rename "libftdi.spec" to "libftdi-1.0.spec" ------------------------------------------------------------ Now the big question: Should we also change the library name to "libftdi-1.0"? IMHO it's a good idea since broken linker flags might point to the previous libftdi 0.1 and result in very bogus error messages. The "-X.0" suffix is used by several projects like libxml2 or glib2. It will stay at "-1.0" if we increase the official version f.e. to 1.5. I'm not fixed on the "-X.0", I just want -any- suffix to be in there. We could also go for "libftdi1" instead of "libftdi-1.0". Distributions could also offer a "libftdi1-compat" package which provides symbolic links from the libftdi 0.x file locations to 1.x if libftdi-devel from 0.x is not installed in parallel. The APIs should be mostly compatible. Opinions? Better ideas? Thomas -- libftdi - see http://www.intra2net.com/en/developer/libftdi for details. To unsubscribe send a mail to [email protected]
