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

fatbuild.sh doesn't work with Mac OS X 10.4 build tools #525

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

fatbuild.sh doesn't work with Mac OS X 10.4 build tools #525

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

Comments

@SDLBugzilla
Copy link
Collaborator

This bug report was migrated from our old Bugzilla tracker.

These attachments are available in the static archive:

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

Comments on the original bug report:

On 2009-10-28 20:18:03 +0000, Tony J. White wrote:

Created attachment 433
svn 5180 patch for fatbuild.sh

An update betweein 1.2.11 and 1.2.12 broke building of the universal binary on
10.4 systems. A recent update (after 1.2.14) fixed a similar issue with
building on 10.6 systems, this patch expands what was done there so that it
works with 10.4 as well.

I also removed a line in the script that creates a recursive symbolic link on
my system. It looks like it might do this on all systems?

Patch attached against SVN 5180.

On 2009-10-28 20:25:09 +0000, Tony J. White wrote:

Created attachment 434
whups, updated

On 2009-11-29 18:55:10 +0000, Sidney wrote:

Created attachment 452
New patch correcting some problems with the previous patch

That last patch had a number of problems in Snow Leopard. This patch seems to work on my Snow Leopard machine and I hope doesn't break anything new.

What it fixes:

  1. Snow Leopard drops support for 10.3.9. There is no 10.3.9 SDK to use for the PPC build. The code assumed that PPC build should use the 10.3.9 SDK.
  2. The previous patch set GCCUSERPATH to ...i686-apple-darwin... even in the PPC section, instead of using powerpc-apple-darwin
  3. In the powerpc section GCCUSERPATH was never set to ...darwin10...
    Even though the PPC doesn't run Darwin10 (10.6), on a Snow leopard machine the directory is named powerpc-apple-darwin10
  4. In Snow Leopard the 10.4 SDK is an optional component of the Xcode install, by default not installed. So it is necessary to check for the 10.4 SDK not being there, making 10.5 the minimum target version if it isn't.
  5. On my system, the build process for ppc produces a directory named .dSYM which contains some files with the same name as files that are being build. That resulted in an error

lipo: ./ppc/build/.libs/libSDL-1.2.0.dylib and ./ppc/build/.libs/libSDL-1.2.0.dylib.dSYM/Contents/Resources/DWARF/libSDL-1.2.0.dylib have the same architectures (ppc) and can't be in the same fat output file

I fixed it by adding -maxdepth 4 to go along with the -mindepth 3 in the find loop that gathers up the dylib files to lipo.
6. If you build just static libraries, that same section of code that lipos the gathered dylibs errors out when there are no dylib files to lipo. I added an if around it to fix that.

I have only tested this in Snow Leopard. I'm sure it needs a shaking out in Tiger and Leopard.

However, I thought I read that SDL 1.2.14 abandons compatibility with anything earlier than 10.4. Is that true, and if it is, couldn't all the pre-10.4 stuff in this script be stripped out?

On 2009-11-30 00:38:42 +0000, Sidney wrote:

Created attachment 453
Replacement fatbuild.sh (full script, not a patch file)

That last patch I uploaded was a disaster. Even though it built SDL apparently ok, when I tried to build the various libSDL_* against it as universal binaries I got strange error messages that referenced /DeveloperSDKs/MacOSX10.4u.sdk/usr/lib/gcc/i686-apple-darwin10/ even though it was linking the PowerPC objects.

I don't understand why the separate phases have to contain all those complications that make up most of the script, when building for a single platform just works by running configure with mostly default options.

The attached file is a replacement fatbuild.sh that takes that simpler approach, and seems to work for me under Snow Leopard. It only allows building under Mac OS 10.4 or later because it is my understanding that as of SDL 1.2.14 older versions od Mac OS are no longer supported. Please correct me if I am wrong about that.

On 2011-08-21 06:53:32 +0000, Ryan C. Gordon wrote:

Resolving this bug (Sam removed the PowerPC support from fatbuild.sh, unrelated to this bug report, for the same effect).

--ryan.

@SDLBugzilla SDLBugzilla added bug wontfix This will not be worked on labels Feb 10, 2021
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