Commit Graph

16 Commits (a1758406976f06bb07c5cb5f95ef2c205c6ad1c2)

Author SHA1 Message Date
bjarni a19cdf6040 (svn r3884) renamed TRIPPLE_BINARY to TRIPLE_BINARY 19 years ago
bjarni bb47ecddf4 (svn r3882) -Codechange: [OSX] changed the way universal and tripple binaries are build
Instead of compiling a binary for each arch and then join them in the end, each .o file is now compiled as a fat file
	This means that the makefile will not call itself to make a binary for each target and we don't have to make clean between each build
	it also means that if one file changed, we don't have to recompile all files
	Another benefit is since it's handled at .o level and though LDFLAGS, no special code is needed if we decide to compile more binaries (like a lot of stuff used to happen at post linking)
	We also needs much less flags to set up, so it should be even easier to get to work out of the box now
	The tradeoff in doing so is that now the binary needs at least OSX 10.3.9 to execute
	To deal with this issue, the JAGUAR flag can be used to compile for older OSes. We will release a binary for old OSes at next release to see if anybody even downloads it (not that many people use OSX 10.2 anymore)
	GPMI will not work on 10.2 anyway so we will cut support for it some day anyway
19 years ago
bjarni 5412b2db93 (svn r3676) -Change: [OSX] changed info about package to how to install the game
the package is long gone and people don't read a doc about a missing package when they don't expect to find one
	the doc is called install even though it's not a real install and have nothing to do with make install. People just read it the first time they see it when it's called install ;)
19 years ago
bjarni d09e66eef6 (svn r3674) -Feature: [OSX] Added support for tripple binaries (binaries optimised for G3, G5 and i686)
G4 have no problems using G3 code while G5 can, but really benefit from getting their own optimised code (Apple: G5 is not just a fast G4)
	Also changed FAT_BINARY to UNIVERSAL_BINARY since Apple removed most (all?) references to fat binaries on their homepage two days after I added FAT_BINARY
19 years ago
bjarni 1cfabfbb09 (svn r3383) -Code cleanup: [OSX] removed SDL support from FAT binaries as it caused problems for non-SDL builds
FAT binaries now need to rely on COCOA drivers. SDL didn't work properly anyway
19 years ago
bjarni 6a6e145010 (svn r3281) -Feature: [OSX] added native cocoa sound and video drivers (egladil)
you can still use SDL drivers if you like and you have to run "make upgradeconf" to start using the cocoa drivers (or manually write WITH_COCOA:=1)
	since SDL breaks the cocoa drivers, you can't compile with both SDL and cocoa support
	Using cocoa drivers makes it easier to make universal binaries and it solves:
	-FS#18 [OSX] SDL is weird in universal binaries
	-FS#2  [OSX] lazy pointer crash on exit
	-FS#10 [OSX] linking error when linking statically to SDL 1.2.8 (needless to explain this, but it means it should be able to compile statically with the default settings now)
	-[ 1215073 ] Switching to large size out of fullscreen crashes
	Using SDL drivers will still have those issues though
19 years ago
bjarni 26a5e120e8 (svn r3276) reverted the last two commits. OSX 10.2 kept finding new stuff to prevent it from running OpenTTD, so now it's not supported anymore 19 years ago
bjarni 111e5ef0fd (svn r3274) -Fix: [OSX] added JAGUAR flag to crosscompile for OSX 10.2 (codenamed jaguar)
JAGUAR and FAT_BINARY can't be used at the same time
	JAGUAR will disable network support due to missing libs in 10.2
19 years ago
bjarni 578883266f (svn r3273) -Fix: [OSX] PPC part of universal binaries now target 10.3 instead of 10.4
10.2 support appears to be broken right now
	Changed BUILD_UNIVERSAL_BINARY into FAT_BINARY (I got tired of typing)
19 years ago
bjarni 4bc7265b03 (svn r3267) -Codechange: [OSX] universal binary makefile code cleanup
now PPC code is always compiled before x86 code
	strgen and lng files are only compiled once, which results in shorter building time
	the makefile now assigns default values to undefined values so much less needs to be set up
	the code is now easier to maintain
19 years ago
bjarni 1a93bcb5bb (svn r3262) -Fix: [OSX] universal binaries can now include the dynamic SDL lib into the bundle 19 years ago
bjarni 2946f3c1f9 (svn r3259) -Fix: [OSX] fixed that universal binaries did not make a bundle 19 years ago
bjarni 961b71f434 (svn r3258) -Feature: [OSX] added support for universal binaries
it needs both PPC and x86 libs to compile
	due to this fact, compilation with libPNG or SDL is not tested (dedicated servers only)
	only PPC part is tested as I don't have x86 OSX
19 years ago
bjarni 8277a0651e (svn r3257) -Codechange: [OSX] removed the dynamic lib in bundle option (introduced in rev 3230)
it caused way more problems than it solved
19 years ago
bjarni b860d1194d (svn r3256) -Fix: [OSX] fixed issue where building the bundle could take place before linking if -j 2 was used 19 years ago
bjarni 08b990886d (svn r3230) -Feature: [OSX] OSX builds can now change where it searches for dynamic libs and can move libs into the bundle
This is not a fix for the issues with static linking, more like a workaround. Static linking still got issues
	Apple recommends to use dynamic linking anyway, so I guess this doesn't matter much
19 years ago