Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

make macOS autofoo builds min/current version match Xcode builds #2934

Closed
SDLBugzilla opened this issue Feb 11, 2021 · 0 comments
Closed

make macOS autofoo builds min/current version match Xcode builds #2934

SDLBugzilla opened this issue Feb 11, 2021 · 0 comments
Labels
wontfix This will not be worked on

Comments

@SDLBugzilla
Copy link
Collaborator

SDLBugzilla commented Feb 11, 2021

This bug report was migrated from our old Bugzilla tracker.

These attachments are available in the static archive:

Reported in version: HG 2.0
Reported for operating system, platform: Mac OS X (All), All

Comments on the original bug report:

On 2018-07-01 07:52:53 +0000, Ozkan Sezer wrote:

Created attachment 3264
ltmain.sh patch for macOS minversion

Xcode project files set min version to 1.0. The following hack
makes the autofoo builds match that by hand-editing ltmain.sh.
I don't know a better way for this. OK to push?

(patch also attached, because bugzilla will possibly mangle it.)

diff --git a/build-scripts/ltmain.sh b/build-scripts/ltmain.sh
--- a/build-scripts/ltmain.sh
+++ b/build-scripts/ltmain.sh
@@ -7404,8 +7404,11 @@
 	  # Darwin ld doesn't like 0 for these options...
 	  func_arith $current + 1
 	  minor_current=$func_arith_result
-	  xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
-	  verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
+	  #xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
+	  #verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
+	  # make minversion match the Xcode project files, i.e. 1.0
+	  xlcverstring="${wl}-compatibility_version 1.0 ${wl}-current_version ${wl}$minor_current.$revision"
+	  verstring="-compatibility_version 1.0 -current_version $minor_current.$revision"
 	  ;;
 
 	freebsd-aout)

On 2018-07-05 20:02:12 +0000, Ozkan Sezer wrote:

I pushed the change to SDL-1.2 and to default branches.
If there is a better way of doing this, then I'd revert
and so that the better solution would be applied.

https://hg.libsdl.org/SDL/rev/aad2440e3d61
https://hg.libsdl.org/SDL/rev/1a1133e9c7d4

On 2018-11-13 00:32:31 +0000, Sam Lantinga wrote:

This caused bug 4367, and caused problems for Valve as well.

On 2018-11-13 00:36:28 +0000, Sam Lantinga wrote:

This change was backed out in SDL 2.0:
https://hg.libsdl.org/SDL/rev/d274fa9731b1

In SDL 2.1 we can make the compatibility version match the autotools version, by adjusting the Xcode project.

On 2018-11-13 05:08:39 +0000, Ozkan Sezer wrote:

Well, we are back in the versioning mess we had been again :)
Should we revert this from SDL-1.2 too? What about bug 2915?

On 2018-11-13 16:00:03 +0000, Sam Lantinga wrote:

(In reply to Ozkan Sezer from comment # 4)

Well, we are back in the versioning mess we had been again :)
Should we revert this from SDL-1.2 too? What about bug 2915?

I'm less concerned about SDL 1.2 since we don't have a planned release and there are fewer people who are affected either way. You're welcome to backport it for consistency.

We do have inconsistent versions now between build systems, and that's okay. People typically don't switch build systems in their projects, and if they do, they'll be rebuilding everything so library dependencies will match up. We can fix this in SDL 2.1.

On 2018-11-14 17:00:34 +0000, Ozkan Sezer wrote:

(In reply to Sam Lantinga from comment # 5)

I'm less concerned about SDL 1.2 since we don't have a planned release and
there are fewer people who are affected either way. You're welcome to
backport it for consistency.

Reverted the change in SDL-1.2 for consistency.

On 2018-11-14 17:36:37 +0000, Joshua Root wrote:

(In reply to Sam Lantinga from comment # 3)

In SDL 2.1 we can make the compatibility version match the autotools
version, by adjusting the Xcode project.

Increasing the compatibility version now won't cause any problems. In fact it's really not correct to have left it at 1.0.0 this whole time, since new APIs have certainly been added.

@SDLBugzilla SDLBugzilla added bug wontfix This will not be worked on labels Feb 11, 2021
slouken added a commit that referenced this issue Sep 5, 2022
…otools

Autotools sets both versions to the same value, so Xcode and CMake need to match for the libraries to be compatible between the different builds.

See these for details:
libsdl-org/sdl12-compat#207
#2934
https://stackoverflow.com/questions/67055770/usage-of-current-version-and-compatibility-version-on-macos
PJB3005 pushed a commit to PJB3005/SDL that referenced this issue Oct 5, 2022
…otools

Autotools sets both versions to the same value, so Xcode and CMake need to match for the libraries to be compatible between the different builds.

See these for details:
libsdl-org/sdl12-compat#207
libsdl-org#2934
https://stackoverflow.com/questions/67055770/usage-of-current-version-and-compatibility-version-on-macos
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

1 participant