summaryrefslogtreecommitdiff
path: root/os/macosx
AgeCommit message (Collapse)Author
2007-01-02(svn r7759) -Merge: makefile rewrite. This merge features:rubidium
- A proper ./configure, so everything needs to be configured only once, not for every make. - Usage of makedepend when available. This greatly reduces the time needed for generating the dependencies. - A generator for all project files. There is a single file with sources, which is used to generate Makefiles and the project files for MSVC. - Proper support for OSX universal binaries. - Object files for non-MSVC compiles are also placed in separate directories, making is faster to switch between debug and release compiles and it does not touch the directory with the source files. - Functionality to make a bundle of all needed files for for example a nightly or distribution of a binary with all needed GRFs and language files. Note: as this merge moves almost all files, it is recommended to make a backup of your working copy before updating your working copy.
2006-12-29(svn r7626) -Fix r7600: [OSX] building release dmg files no longer includes ↵bjarni
console.txt, since we don't have that file anymore (this made dmg building fail) -Cleanup: [OSX] removed the link files since they aren't needed and broken anyway
2006-12-28(svn r7588) -Change: [OSX] removed the flag JAGUAR since it didn't work anywaybjarni
Also removed all the Makefile code regarding this flag since it's no longer needed Removed documentation about special limitations regarding running the game on OSX 10.2 OpenTTD now officially needs OSX 10.3.9 to work correctly (the trunk needed that for months)
2006-12-27(svn r7577) -Fix (r7565): Missed out some OSX files (Bjarni)Darkvater
2006-09-08(svn r6432) -Fix r4987: [OSX] added CCFLAGS to OSX targets as wellbjarni
2006-09-03(svn r6357) -Cleanup: [OSX] corrected some info for the bundle (info window ↵bjarni
in finder)
2006-08-28(svn r6204) -Cleanup: replace non-indentation with spaces; like '}<TAB>else ↵rubidium
{' -> '} else {', tabs between code and comment, etc.
2006-08-19(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:truelight
- New optional landscape generator (TerraGenesis Perlin) - Load heightmaps (either BMP or PNG) - Progress dialog while generating worlds (no longer a 'hanging' screen) - New dialogs for NewGame, Create Scenario and Play Heightmap - Easier to configure your landscape - More things to configure (tree-placer, ..) - Speedup of world generation - New console command 'restart': restart the map EXACTLY as it was when you first started it (needs a game made after or with this commit) - New console command 'getseed': get the seed of your map and share it with others (of course only works with generated maps) - Many new, world generation related, things - Many internal cleanups and rewrites Many tnx to those people who helped making this: Belugas, DaleStan, glx, KUDr, RichK67, Rubidium, and TrueLight (alfabetic) Many tnx to those who helped testing: Arnau, Bjarni, and tokai (alfabetic) And to all other people who helped testing and sending comments / bugs Stats: 673 lines changed, 3534 new lines, 79 new strings
2006-08-04(svn r5759) -Fix: [OSX] fixed issue where the bundle was not build if the ↵bjarni
data dir contained subdirs (now copies the subdirs as well) -Fix: [OSX] allow subdirs in scenario when using make release (copies the subdirs as well) -Fix: [OSX] removed an outdated line in make release that prevented the creation of the dmg file
2006-07-01(svn r5438) -Code cleanup [OSX] removed UNIVERSAL_BINARY as a phony target ↵bjarni
since the target is long gone. Also corrected BUILD_OSX_BUNDLE as phony target
2006-05-27(svn r4997) -Fix: [OSX] reverted the OSX part of rev 4994 as it caused dyld ↵bjarni
(lib) crashes now OSX strips after linking again
2006-05-27(svn r4994) -Fix: changed the stripping parts a bit. OSX is no longer an ↵truelight
exeption
2006-05-27(svn r4991) -Fix: don't compile UNITTEST by default, it isn't neededtruelight
-Fix: do not use hardcoded names for things like 'strip', keep it configurable!!
2006-05-27(svn r4990) -Fix: use CXX to link MacOSX OpenTTD, not CCtruelight
2006-05-27(svn r4989) -Fix: make the OSX Makefile stuff to work with the compile-farmtruelight
2006-05-27(svn r4987) Feature: Merged YAPF into trunk. Thanks to devs for continuous ↵KUDr
support and users for testing.
2006-03-29(svn r4149) -Codechange: [OSX] rewrite of how universal binaries are compiledbjarni
Now OSX stores object files in .OSX and instead of making FAT object files, there are one for each architecture Each architecture got their own targets to make a non-FAT binary and in the end, lipo will merge them into one binary It's now possible to select which architectures you want to support by defining OTTD_PPC, OTTD_PPC970 (G5) and/or OTTD_i386 All combos are supported. UNIVERSAL_BINARY and TRIPLE_BINARY can still be used even though it's possible to gain the same result by using the new flags Making a universal build when you already got part of it compiled (say the PPC part), it will reuse it and only compile the i386 part to save time Note: in some cases when you switch flags, you risk that openttd is not updated. Delete it and try again. The Makefile can't solve this except if it forces linking each time This fixes: FS#87 universal binary building borked in 0.4.7 Now universal binaries work on OSX 10.3.9 again Building universal binaries no longer needs to store flags in Makefile.config as the new design makes it possible to figure everything out automatically
2006-03-24(svn r4084) -Documentation: [OSX] changed OSX specific docsbjarni
-added an explanation to why there is a special Jaguar download (people appears to download it even when they should download the other one) -removed the long outdated README_if_game_crashed_on_OSX.txt
2006-03-24(svn r4076) Back out r4074. It doesn't work and leads to make endlessly ↵tron
calling itself. NOTE: Delete Makefile.config to recover.
2006-03-23(svn r4074) -Feature: [Makefile] the makefile can now detect if iconv is ↵bjarni
present in the system if detected, WITH_ICONV will be defined in the C code WITH_ICONV is also added to Makefile.config OSX do not use this flag setting in Makefile.config, as it is set at compile time based on target OS version the actual C code is not changed as the current iconv code is hardcoded for OSX and would break if any other OS got iconv This detection system is by request of Darkvater
2006-03-23(svn r4061) -Codechange: [OSX] removed some long dead flags for universal ↵bjarni
binary building and removed an absolute path for hdiutil (I don't thin anybody will have it at a non-default place, but still)
2006-03-23(svn r4060) -Codechange: [OSX] made the release target (in ↵bjarni
os/macosx/Makefile) easier to use since it gives the release disk image the right name automatically it now uses REV instead of RELEASE, which means RELEASE is not needed to be set manaully anymore it also automatically adds "-jaguar" when making a build aimed at OSX 10.2 (codenamed jaguar)
2006-03-22(svn r4019) -Fix: [OSX] stopped using iconv for 10.2.8, since it was added ↵bjarni
in 10.3 this have the sideeffect that 10.2.8 will still have the "failure to save with certain chars in the filename bug", but at least it can compile again
2006-03-15(svn r3884) renamed TRIPPLE_BINARY to TRIPLE_BINARYbjarni
2006-03-15(svn r3882) -Codechange: [OSX] changed the way universal and tripple ↵bjarni
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
2006-03-03(svn r3745) Fix two buffer overflows, one case of undefined behavior (the ↵tron
destination buffer of sprintf() may not alias with one of its arguments) and some other minor stuff introduced in r3740
2006-03-02(svn r3740) -Feature: [OSX] added OS version, CPU type and newGRF settings ↵bjarni
to assert window and a message to tell people to add that to a bug report It also adds a new error window, which can be used just like assert, but it is also active when asserts are turned off This is useful for places where it's really important to check even if assert is turned off. It's not used in the code yet
2006-02-27(svn r3682) -Fix: didn't write $ correct in G5_detector in r3673, which ↵bjarni
caused problems for tortoisesvn
2006-02-27(svn r3679) -Fix: [OSX] fixed warning introduced in r3670 about permission ↵bjarni
denied in G5_detector.c when compiling without having Makefile.config
2006-02-26(svn r3676) -Change: [OSX] changed info about package to how to install the gamebjarni
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 ;)
2006-02-25(svn r3675) -Fix: [OSX] made the default gcc names for building universal ↵bjarni
binaries into the newest gcc for each target instead of hardcoding it for 4.0.0
2006-02-25(svn r3674) -Feature: [OSX] Added support for tripple binaries (binaries ↵bjarni
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
2006-02-25(svn r3673) -Codechange: [OSX] changed the makefile to autodetect if it ↵bjarni
compiles on G5 and then adds flags to optimise for G5 This will not interfere with crosscompiling or universal binaries
2006-02-12(svn r3596) -Codechange: [OSX] changed to use Apple's macros instead of OTTD ↵bjarni
macros for endian conversion This increases the execution speed a lot since GCC can't detect the OTTD macro as an endian conversion while Apple's code uses the instruction to convert endian instead of a series of instructions to produce the same result Since we don't have that many endian conversions in the game, overall performance should not increase noteworthy
2006-02-01(svn r3512) Yet more whitespace fixes (mostly by Rubidium)peter1138
2006-01-12(svn r3395) Add Id tag (and svn property) to macosx files.peter1138
2006-01-07(svn r3383) -Code cleanup: [OSX] removed SDL support from FAT binaries as it ↵bjarni
caused problems for non-SDL builds FAT binaries now need to rely on COCOA drivers. SDL didn't work properly anyway
2006-01-07(svn r3382) -Feature: [OSX] added the flag JAGUAR to crosscompile for OSX ↵bjarni
10.2.8 on 10.4
2006-01-06(svn r3375) -Add: [ FS#29 ] show an error dialog for OSX cocoa driver (egladil)truelight
2005-12-10(svn r3286) -Fix: [OSX] 10.2 works again and universal binaries got 10.2 as ↵bjarni
target by default
2005-12-10(svn r3281) -Feature: [OSX] added native cocoa sound and video drivers (egladil)bjarni
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
2005-12-09(svn r3276) reverted the last two commits. OSX 10.2 kept finding new stuff ↵bjarni
to prevent it from running OpenTTD, so now it's not supported anymore
2005-12-09(svn r3275) -Fix: [OSX] removed libpng support and error dialogs from jaguar ↵bjarni
crosscompiles to fix crash
2005-12-09(svn r3274) -Fix: [OSX] added JAGUAR flag to crosscompile for OSX 10.2 ↵bjarni
(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
2005-12-09(svn r3273) -Fix: [OSX] PPC part of universal binaries now target 10.3 ↵bjarni
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)
2005-12-06(svn r3267) -Codechange: [OSX] universal binary makefile code cleanupbjarni
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
2005-12-06(svn r3262) -Fix: [OSX] universal binaries can now include the dynamic SDL ↵bjarni
lib into the bundle
2005-12-04(svn r3259) -Fix: [OSX] fixed that universal binaries did not make a bundlebjarni
2005-12-04(svn r3258) -Feature: [OSX] added support for universal binariesbjarni
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
2005-12-03(svn r3257) -Codechange: [OSX] removed the dynamic lib in bundle option ↵bjarni
(introduced in rev 3230) it caused way more problems than it solved