This is the mail archive of the cygwin-apps mailing list for the Cygwin project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Jul 19 20:54, Alexey Sokolov wrote: > 19.07.2015 20:10, Achim Gratz ÐÐÑÐÑ: > > Alexey Sokolov writes: > >>> Is "1" some special number which should be used? > > > > Just some number that gets bumped whenever the ABI changes > > (i.e. applications that link against the library would need to be > > recompiled). > > > > Well, in that case 1.6 works fine. When 1.7.0 will be released, the > filename will be changed to cygznc-1.7.dll. No, hang on. The reason for the version-independent number is to allow keeping the number the same for multiple versions of the package, and only bump it when an ABI breakage occurs. Consider this scenario with different versioning schemes: znc 1.6 --> cygznc1.dll or cygznc-1.6.dll znc 1.7 introduces new function znc_foo. Adding functions is no ABI breakage. --> cygznc1.dll or cygznc-1.6.dll znc 1.8 removes function znc_bar. ABI breakage; existing modules using this functions wouldn't load anymore. --> cygznc2.dll or cygznc-1.8.dll znc 1.9 adds function znc_foobar and a new structure. No ABI breakage. --> cygznc2.dll or cygznc-1.8.dll znc 2.0 changes parameters to function znc_baz. ABI breakage since existing modules using this function may crash. --> cygznc3.dll or cygznc-2.0.dll The first scheme is what most autoconf-based build systems use. However, openssl, for instance, uses the second scheme. Both is ok, but in both schemes the ABI version number attached to the DLL name does not necessarily reflect the actual version number of the base package. Did I explain it sufficiently? > > You ahould ask Yaakov, but I seem to remember that the preferred way to > > name new libraries is now without the hyphen. > > Hm, ok... > Yaakov, what's the plan? Dunno about Yaakov, but what counts in the first place is to keep track of the ABI change and only bump the ABI version attached to the DLL name if a new version of the base package breaks it. The ABI version itself is mostly maintained by the project's build system. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat
Attachment:
pgp86ZoueFHJF.pgp
Description: PGP signature
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |