[Proj] Proj 4.9.1RC3 Released
Charles Karney
charles.karney at sri.com
Sat Feb 21 16:10:18 PST 2015
On 02/21/2015 04:31 PM, Howard Butler wrote:
>
>> On Feb 21, 2015, at 1:59 PM, Charles Karney <charles.karney at sri.com> wrote:
>>
>> This patch adds 3 files in the cmake directory. The names need to be
>> added to EXTRA_DIST in cmake/Makefile.am, of course. The files are
>>
>> CMakeLists.txt project-config.cmake.in project-config-version.cmake.in
>
> Was there a specific reason this patch puts back the project VERSION target properties that I removed in r2969 [1]?
>
> https://trac.osgeo.org/proj/changeset/2629/trunk/proj
>
> We didn't want this due to it creating SOVERSION and file version names that are misaligned with what the libtool stuff does.
>
> Howard
>
I'm explicitly trying to mimic the behavior of libtool here using the 2
versions that cmake offers. Here's what the so libraries look like:
autoconf
lrwxrwxrwx. libproj.so -> libproj.so.9.0.0
lrwxrwxrwx. libproj.so.9 -> libproj.so.9.0.0
-rwxr-xr-x. libproj.so.9.0.0
cmake (before my patch)
lrwxrwxrwx. libproj.so -> libproj.so.9.0.0
-rwxr-xr-x. libproj.so.9.0.0
cmake (with my patch)
lrwxrwxrwx. libproj.so -> libproj.so.9
lrwxrwxrwx. libproj.so.9 -> libproj.so.9.0.0
-rwxr-xr-x. libproj.so.9.0.0
There's some benefit in trying to keep the shared libraries consistent
between builds so that an executable can reliably find the necessary
shared libraries at runtime.
How do I know what numbers to put for the versions in CMakeLists.txt? I
run the autoconf build and look at the resulting versions on the
installed libraries.
Incidentally, if I build an application linking against proj using
cmake, the shared library it looks for (after the patch) is
libproj.so.9. This means that a later API-compatible version with bug
fixes can be installed as
lrwxrwxrwx. libproj.so -> libproj.so.9
lrwxrwxrwx. libproj.so.9 -> libproj.so.9.0.1
-rwxr-xr-x. libproj.so.9.0.0
-rwxr-xr-x. libproj.so.9.0.1
and the application automatically will switch to the new version.
However this isn't a big deal, and I can back out of this change if you
like.
--Charles
More information about the Proj
mailing list