Opened 13 years ago

Closed 12 years ago

Last modified 11 years ago

#446 closed enhancement (fixed)

Add SOVERSION support to CMake configuration

Reported by: mloskot Owned by: mloskot
Priority: major Milestone: 3.3.9
Component: Build/Install (cmake) Version: main
Severity: Significant Keywords: soversion, cmake
Cc: history

Description

This task is about implementing complete support for SOVERSION on Unix platforms in CMake configuration.

This task is also related to #385

Change History (14)

comment:1 by strk, 13 years ago

Milestone: GEOS Future

comment:2 by mloskot, 12 years ago

Status: newassigned

comment:3 by mloskot, 12 years ago

Resolution: fixed
Status: assignedclosed

r3683 - Set SOVERSION property on C API shared library using CAPI_INTERFACE_* values

comment:4 by strk, 12 years ago

Cc: history added
Milestone: GEOS Future3.4.0

any chance to see this backported to the 3.3 branch ?

comment:5 by strk, 12 years ago

as a reminder: we need to add a note in the NEWS file for this, either in 3.3 branch (if we backport) or in trunk.

comment:6 by strk, 12 years ago

Resolution: fixed
Status: closedreopened

btw, is that SOVERSION really correct ? The SONAME of the CAPI library should be "libgeos_c.so.1", this is from first release of it up to current trunk.

I didn't test but reading the code in r3683 it sounds suspicius (interface current/age/revision would be very high numbers...)

in reply to:  6 comment:7 by mloskot, 12 years ago

Replying to strk:

btw, is that SOVERSION really correct?

I simply set it with -version-info from Makefile.am:27:

-version-info @CAPI_INTERFACE_CURRENT@:@CAPI_INTERFACE_REVISION@:@CAPI_INTERFACE_AGE@ \

What is the raw value of SOVERSION?

comment:8 by strk, 12 years ago

readelf -a libgeos_c.so | grep SONAME

raw value is computed by libtool based on system (-version-info is a libtool switch). On Linux it'll be (current-age), which in this case is 1

comment:9 by mloskot, 12 years ago

r3692 - Fixed incorrect SOVERSION value. The SOVERSION is now set with CAPI_VERSION_CURRENT - CAPI_VERSION_AGE

Does it look OK and can I port it to branches/3.3?

comment:10 by strk, 12 years ago

Looks good to me, feel free to backport (and update the NEWS file accordingly)

comment:11 by mloskot, 12 years ago

r3696 - NEWS file updated

comment:12 by mloskot, 12 years ago

Resolution: fixed
Status: reopenedclosed

r9698 - Merged recent fixes from trunk. Updated version numbers according to configure.in.

in reply to:  12 comment:13 by mloskot, 12 years ago

Replying to mloskot:

r9698 - Merged recent fixes from trunk. Updated version numbers according to configure.in.

Correct changeset is r3698

comment:14 by robe, 11 years ago

Milestone: 3.4.03.3.9
Note: See TracTickets for help on using tickets.