Commit Graph

240 Commits

Author SHA1 Message Date
bjarni
a8a2b93df5 (svn r3382) -Feature: [OSX] added the flag JAGUAR to crosscompile for OSX 10.2.8 on 10.4 2006-01-07 12:53:57 +00:00
tron
c6ea133746 (svn r3348) Dependency checking didn't include all compile parameters, which lead to wrong results 2005-12-27 22:55:24 +00:00
tron
0e12ad7d99 (svn r3340) Fix dependency calculation: dependencies didn't get recalculated if a header file changed
Also really automagically create the dependency directories by deriving the directory names from $(DEPS)
2005-12-25 09:19:16 +00:00
Darkvater
97521e3fdd (svn r3326) - Fix: [ 1226832 ] Build fails if SDL is built without pthread support (dst) 2005-12-21 01:19:03 +00:00
tron
d5aa95b87e (svn r3313) Remove GPMI related changes from trunk
Revisions in detail: 2542, 3226 (partial), 3229, 3231, 3232, 3238, 3242-3245, 3251, 3253, 3260, 3263, 3265, 3266, 3269, 3277, 3278, 3279, 3283 (partial), 3304, 3305, 3306
2005-12-18 12:10:46 +00:00
tron
ae624ee690 (svn r3296) Warn about testing an undefined macro with #if - should most probably be #ifdef 2005-12-14 06:16:34 +00:00
tron
0d1c598833 (svn r3287) Turn the winres.o: openttd.rc special case into a normal %.o: %.rc rule 2005-12-11 07:36:49 +00:00
bjarni
50a1e16943 (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
2005-12-10 11:16:45 +00:00
tron
c0218be57a (svn r3280) Merge the seperate (C|CXX|OBJC)_SOURCES variables into a single variable SRCS
Now adding a new file to compile is just adding a line like SRCS += $(FIILE), regardless of type
2005-12-10 07:29:31 +00:00
bjarni
3923eab424 (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 2005-12-09 13:17:31 +00:00
bjarni
073aae307e (svn r3275) -Fix: [OSX] removed libpng support and error dialogs from jaguar crosscompiles to fix crash 2005-12-09 13:07:21 +00:00
bjarni
98ef748715 (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
2005-12-09 12:15:52 +00:00
bjarni
79b76e2397 (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)
2005-12-09 11:08:24 +00:00
bjarni
967abb24e4 (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
2005-12-06 22:09:28 +00:00
bjarni
20e20000f2 (svn r3264) -Codechange: [OSX] OSX targets will now always use the preprocessor to determine endianess
this means that ENDIAN_FORCE is obsolite since it's always overwritten with PREPROCESSOR
	Since the preprocessor should never be able to pick wrong, it's easier this way
	specially when compiling universal binaries as they got both endianess
2005-12-06 14:35:10 +00:00
bjarni
c2153e7419 (svn r3262) -Fix: [OSX] universal binaries can now include the dynamic SDL lib into the bundle 2005-12-06 09:27:42 +00:00
bjarni
cfc4753ba6 (svn r3259) -Fix: [OSX] fixed that universal binaries did not make a bundle 2005-12-04 22:43:40 +00:00
bjarni
e273fe2f33 (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
2005-12-04 17:36:19 +00:00
bjarni
4550c2361d (svn r3257) -Codechange: [OSX] removed the dynamic lib in bundle option (introduced in rev 3230)
it caused way more problems than it solved
2005-12-03 13:43:54 +00:00
truelight
062d654df1 (svn r3231) Fix: update the GPMI implementation to the latest GPMI-API version 2005-11-23 13:45:12 +00:00
bjarni
97b3afe9ae (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
2005-11-23 12:21:54 +00:00
bjarni
8b4d7f97da (svn r3214) -Feature: openttd.cfg can now set how many autosaves to keep before starting to overwrite old ones
max_autosave_num in the config files sets the number of autosaves to keep (default 16)
	MAX_NUM_AUTOSAVES in Makefile.config sets the default value. 16 is used if no value is given
	this behaviour can still be overwritten by keep_all_autosave (openttd.config setting)
	Note: this is a requested behaviour for PDA ports, since they got limited storage space
2005-11-17 19:43:37 +00:00
peter1138
12009af1c5 (svn r3167) - NewGRF: Start moving custom station code to separate files.
Rewrite handling of station classes.
          Allow for more than 8 station tile layouts.
          Start of code to unload custom stations.
2005-11-12 00:19:34 +00:00
truelight
35b8ada5f8 (svn r3113) -Fix: The Makefile had 64bit code which was obsolete, not to say wrong.
This removes all the 64bit stuff from the Makefile. Everything should 
  work just fine. Also removed the warning on amd64, 64bit OpenTTD is 
  stable. Tnx to dst for commenting and testing on this subject.
2005-10-31 18:29:21 +00:00
bjarni
85002131fe (svn r3088) -Fix: [OSX] fixed issue where OSX could not dynamic link to quicktime [ 1334917 ] 2005-10-25 19:41:32 +00:00
bjarni
a949e6d3d0 (svn r3031) forgot 1 file and two lines in rev 3029 (mac midi stuff) 2005-10-11 16:40:56 +00:00
bjarni
4eb7a0ac6b (svn r3029) -Change: [OSX] removed the buggy java midi player, which was rendered obsolite by r3022 2005-10-10 15:22:47 +00:00
bjarni
354320527a (svn r3026) -Fix: [OSX] fixed bug that prevented dedicated servers from compiling (introduced in r3022) 2005-10-07 16:48:53 +00:00
bjarni
488db23ed8 (svn r3023) -Fix [BeOS] fixed compilation on BeOS R5 (MYOB) 2005-10-06 18:28:27 +00:00
bjarni
cebca8e61b (svn r3022) -feature: [OSX] OSX now uses quicktime to play midi files
this eliminates the long pauses between songs and the "leaving process hehind" bug (moebius_)
2005-10-06 17:57:18 +00:00
truelight
6145b99c22 (svn r2921) -Codechange: moved all AI-code to 1 central place (ai/ai.c)
-Fix: removed the ability for the oldAI to cheat (this will criple him somewhat)
-Add: base-code for many improvements to come in the AI-system
-Add: added base-code for multiplayer AIs (DOES NOT WORK YET!)
2005-09-07 15:10:11 +00:00
truelight
620f36acb6 (svn r2907) -Codechange: splitted the AIs to their own directory. AINew becomes 'trolly', AIOld becomes 'default', both in their own dir in the 'ai' dir. More AIs to come. 2005-09-02 19:10:45 +00:00
Darkvater
bb05a9a504 (svn r2904) Stupid editors, and renaming files with the same name just different casing is not really possible, so here comes another commit 2005-09-01 21:19:07 +00:00
Darkvater
d37cb0eb78 (svn r2903) Fix case mismatch for ottdmidi java file (moebius) 2005-09-01 21:10:05 +00:00
tron
1e862e9da8 (svn r2895) Remove unused variables and bring a comment closer to reality 2005-08-27 13:06:59 +00:00
tron
c7a6af38fe (svn r2882) Some fixes for MorphOS (by tokai)
- Don't track dependencies on system headers
- Add an include path
- Silence a warning regarding a bad signal prototype
- Remove executable flag from pictures
- Add proper OTTD icon
2005-08-21 10:44:57 +00:00
tron
a7d6b41c6a (svn r2866) Move all functions and tables which aren't directly involved in managing the sprite heap to a new file gfxinit.c.
This doesn't ease the global variable mess, but makes the distinction between sprite heap and gfx loading routines easier.
2005-08-14 18:10:18 +00:00
tron
2aebbaeecd (svn r2853) Add missing dependencies and flags to the dependency targets and make the info target more informative 2005-08-11 13:04:50 +00:00
tron
8d3afd666b (svn r2843) OSX doesn't like OBJC, so give it back its beloved CC, because it's the only ObjectiveC consumer 2005-08-08 20:23:56 +00:00
tron
69eb13c504 (svn r2841) Pimp the Makefile: Determining the header dependencies is now a separate step.
This should fix the dependency related problems and reduce the number of recompiled files when table/strings.h changes
2005-08-08 15:10:37 +00:00
tron
080c62526d (svn r2826) Remove another write-only variable, thanks glx 2005-08-06 22:12:45 +00:00
truelight
01f9cec6df (svn r2825) -Fix: GCC that put deps in the wrong dirs can now compile OTTD again 2005-08-06 21:50:26 +00:00
truelight
36d717d77a (svn r2824) -Fix: OSX can now also produce dedicated servers 2005-08-06 21:45:48 +00:00
truelight
48d8f9da3f (svn r2823) -Fix: MorphOS doesn't have pthread either! 2005-08-06 20:53:02 +00:00
truelight
479b98980c (svn r2822) -Fix: don't compile pthread for win32 dedicated servers 2005-08-06 20:34:41 +00:00
tron
b62887b973 (svn r2815) Store the currency information in one central place instead of scattering it in several unrelated files 2005-08-06 14:59:54 +00:00
tron
f315c95fa1 (svn r2809) Implement more generic threading functions, which allow more than one thread 2005-08-05 09:15:41 +00:00
tron
3c916a2dfe (svn r2760) Remove stale comments, long unused stuff and simplify some checks 2005-07-30 16:29:23 +00:00
ludde
b8c9194b7c (svn r2756) Renamed railtypes into _railtypes
Renamed railtypes.c into railtypes.h, all other tables are in .h files. (It should be in the tables dir but I couldn't figure out how to get it there without deleting it first).
Added const and extern.
2005-07-29 22:13:04 +00:00
celestar
f287f2ff8d (svn r2753) -Codechange: Introduced a new struct "RailtypeInfo" to store rail type specific information. Begun populating it with a bunch of sprites, more to come later. This should result in cleaner, more compact code which allows easy introduction of new railtypes. 2005-07-29 21:36:02 +00:00
tron
81be08bc21 (svn r2712) Overhaul DirectMusic MIDI backend:
- Merge the .c and .cpp part into one file
- Properly deinitialize at the end
- Remove "experimental" status
- Miscellaneous smaller changes
-Fix: Volume control works now
2005-07-26 06:59:48 +00:00
tron
2faf06f4cd (svn r2704) Remove . from include path again, too much trouble. Also add some #ifdefs and #includes for the Windows build 2005-07-25 07:16:10 +00:00
bjarni
f1c254befa (svn r2703) - Feature: [OSX] Added a native alert window to show whatever error() needs to print (Tobin made this, while I fixed some issued in it)
- As a bonus, we now have an objective C file (os/macosx/macos.m) to use the functions Apple made to interact with OS stuff
2005-07-24 20:47:42 +00:00
tron
1492a04844 (svn r2700) Insert Id tag into the Makefile 2005-07-24 13:55:39 +00:00
tron
393f4b2149 (svn r2691) Separate dedicated video driver and fix bemidi declarations 2005-07-23 17:22:39 +00:00
tron
9bb81b8eef (svn r2688) MSVC and Watcom can't handle identical file names in different directories, oh my... 2005-07-23 15:48:00 +00:00
tron
126fed74d6 (svn r2685) -Codechange: Split the music/sound/video drivers into separate files and move them into subfolders.
This results in shorter and hopefully easier to maintain files.
Note: I had to change paths in #include statements of some unrelated files, because I added the ottd base directory to the include path (-I.)
2005-07-23 15:16:57 +00:00
tron
f3c14486be (svn r2616) Don't stop when compiling a language fails, just delete the defective .lng 2005-07-17 18:09:23 +00:00
truelight
a28295b394 (svn r2606) -Codechange: renamed ai.c to ai_old.c, and ai.h to ai_new.h to make room
for a global AI-handler
2005-07-17 15:34:10 +00:00
Darkvater
bc11fe03ee (svn r2585) - Fix [Makefile]: some small cleanups, remove warnings, and add mersenne to makefile (Luca) 2005-07-15 21:28:26 +00:00
truelight
48b3b8699d (svn r2542) -Add: [GPMI] Added GPMI (http://sourceforge.net/projects/libgpmi/)
support to OpenTTD in preperation of AIScripts (long term). It is OFF 
  by default. Add GPMI:=1 to Makefile.config to enable.
2005-07-10 14:57:43 +00:00
hackykid
ab9c6f126d (svn r2516) - Feature: [pbs] Implement path-based-signalling. This allows multiple trains within the same signal block, provided their paths dont intersect. For this the block must have all exit and entry signals be pbs signals. Place these by ctrl-clicking 4 times on a normal signal.
- Feature: [pbs] Implement autoplacement of pbs blocks, when a block has an entry and an exit pbs signal, covert the entire block to pbs. Can be turned off in the patch settings.
 - Feature: [pbs] Allow showing of reserved status by making the tracks darker, when the pbs debug level is at least 1.
2005-07-04 14:58:55 +00:00
celestar
48ff5e39dc (svn r2491) -Fix: Solved a performance problem introduced in r2467. While busy
committing, restore the sort order in the Makefile
2005-06-26 21:59:21 +00:00
bjarni
83943cd246 (svn r2461) -Feature [Makefile] libpng-config can now be called something else in Makefile.config
useful if you for some reason got a libpng-config, which is called something else
2005-06-19 17:05:24 +00:00
truelight
fc2f5b79ef (svn r2458) -Fix: Quickfix to make dedicated-server compile again. We need a more ellegant way to fix this... 2005-06-18 15:08:35 +00:00
truelight
d6cd0bdcac (svn r2457) -Fix: typo in Makefile for OSX builds 2005-06-18 10:02:47 +00:00
matthijs
1876744744 (svn r2448) General cleanup of rail related code, more to follow.
* Add: rail.[ch] for rail-related enums and wrapper functions.
* Codechange: Removed dozens of magic numbers with below enums.
* Codechange: Rewrote CheckTrackCombination().
* Add: TILE_SIZE, TILE_PIXELS and TILE_HEIGHT constants.
* Add: enums RailTileType, RailTileSubtype, SignalType to mask against the map arrays.
* Add: enums Track, TrackBits, Trackdir, TrackdirBits for railway track data. (Note that the old RAIL_BIT constants are replaced by TRACK_BIT ones).
* Add: enums Direction and DiagDirection
* Codechange: Moved a bunch of track(dir) related lookup arrays from npf.[ch] to rail.[ch].
* Codechange: move RailType enum from tile.h to rail.h.
* Add: Wrapper functions for masking signal status in the map arrays: SignalAlongTrackdir, SignalAgainstTrackdir and SignalOnTrack.
* Add: Wrapper functions to access rail tiles, using above enums
* Add: Wrapper functions to modify tracks, trackdirs, directions, etc.
* Add: Wrapper functions for all lookup arrays in rail.[ch] (Arrays are still used in parts of the code)
* Codechange: Renamed some variables and arguments to better represent what they contain (railbit -> track, bits -> trackdirbits, etc.). 
* Codechange: Don't use FindLandscapeHeight() in CmdRemoveSingleRail(), since it returns way too much info. Use GetTileSlope() instead.
* Codechange: [NPF] Removed some unused globals and code from npf.c.
2005-06-16 18:04:02 +00:00
Darkvater
ba8c649fac (svn r2397) - CodeChange: rename all "ttd" files to "openttd" files. 2005-06-02 19:30:21 +00:00
matthijs
457434ea59 (svn r2371) - Fix: [ 1144510 ] make install tries to install scenarios in the (non-existing) personal dir when USE_HOMEDIR is specified.
This fix solves the issue for now by installing scenarios in the system-wide data dir.
- Add: 32x32 xpm format icon, used for debian packaging.
- Some minor updates to the os/debian directory.
2005-05-28 10:32:09 +00:00
Darkvater
6b794ede3b (svn r2334) - Fix (regression): moved togglefullscreen into the video-driver, now windows works, dedicated works and sdl works. Also reverted the change to the makefile. 2005-05-16 16:19:32 +00:00
Darkvater
21b99af344 (svn r2330) - Fix: link error when compiling as dedicated. Add sdl.c to always compile in makefile as it is always protected by WITH_SDL and add a stub for ToggleFullScreen() 2005-05-16 12:15:34 +00:00
tron
14f482aeb5 (svn r2328) There's no need for extra magic to detect libpng on FreeBSD 2005-05-16 08:30:32 +00:00
bjarni
fd9d6e2fc6 (svn r2327) -fix [MacOSX] default path for midi player on mac is now correct again 2005-05-16 00:04:01 +00:00
Darkvater
ed5cf7b28f (svn r2314) - Feature: [ 1187490 ] Patches for building on IRIX (jgilje) 2005-05-14 22:42:33 +00:00
truelight
e58773e6ce (svn r2226) -Fix: 2 other capital problems for the OSX part of the Makefile 2005-04-24 16:01:36 +00:00
truelight
27f80e09e3 (svn r2225) -Fix: split the endian-detection to target/host. Now cross-compiling
on i386-linux for MacOSX should also work for the language-files (strgen issues)
2005-04-24 15:41:01 +00:00
truelight
b195b77906 (svn r2224) -Fix: capital-correctness for OSX-dir-names 2005-04-24 12:47:09 +00:00
bjarni
9bd93a1148 (svn r2198) renamed MacOS to MacOSX where it was written wrong. Made myself MacOSX porter as well as coder 2005-04-14 20:42:30 +00:00
bjarni
dadec920a0 (svn r2197) -fix [Makefile]: SDL_CONFIG from makefile.config is now not always overwritten
-fix [OSX]: fixed issue where OSX could not compile the java MIDI app if SHOW_WARNINGS was on (introduced in r1917)
-fix [OSX]: the midi class file is now also deleted with make clear
2005-04-14 13:46:40 +00:00
TrueLight
6ff14a99cb (svn r2196) -Change: updated the Makefile, now it works for crossplatform compiling
(and distcc compiling via Makefile.config). Wiki is coming up soon! Big
tnx to Bjarni and Lucaspiller.
2005-04-14 12:57:21 +00:00
tron
c75d699b02 (svn r2133) Fix dependency tracking for C++ files 2005-04-02 21:05:10 +00:00
pasky
68da823951 (svn r2088) - Fix: [ 1155158 ] Make extmidi command a config option in addition to the compile-time MIDI switch. Patch by macbaine. 2005-03-27 15:42:25 +00:00
truelight
d1e158d6f7 (svn r2046) -Codechange: moved all waypoint code to waypoint.c/waypoint.h
-Codechange: rewrote some functions while moving waypoint-stuff
-Add: added support for 64k waypoints
-Fix: made the waypoint struct a bit more logic (no bit-fucking)
2005-03-24 17:03:37 +00:00
tron
b40a2fcd0d (svn r2000) Split the sound system into backend (mixer.[ch]) and frontend (sound.[ch]) 2005-03-12 09:38:03 +00:00
pasky
2a35773a1b (svn r1996) makefile.config -> Makefile.config, that's its name. 2005-03-11 22:48:37 +00:00
pasky
935da8cabb (svn r1995) Makefile: Use the install tool instead of mkdir+cp for installing the system-wide stuff, more secure. Based on Peter Brett's patch 1152428. 2005-03-11 22:47:33 +00:00
tron
54a40903e3 (svn r1983) Introduce multiple compile time debug levels 2005-03-10 15:23:13 +00:00
pasky
d89be97a83 (svn r1980) Check $DESTDIR if $DEST_DIR was not set. 2005-03-09 23:59:18 +00:00
tron
29521b0a59 (svn r1939) Revert part of r1938 which accidently crept in 2005-03-06 12:56:02 +00:00
tron
12b223b3f9 (svn r1938) Miscellaneous cleanups: const correctness, kill a goto, ... 2005-03-06 12:54:19 +00:00
pasky
7f78acebef (svn r1917) - Makefile: Revamped VERBOSE support, build mechanics changed.
- VERBOSE has now greater effect, many previously hidden commands
    are now shown on the terminal as they are executed. (Use $(Q)
    instead of @ where the command should be shown if VERBOSE.)
  - Compilation commands redundancy was eliminated.
  - Compilation commands calling generalized so that the VERBOSE
    support does not further entangle the code. The commands are now
    all at a single place, before the targets in a "Build commands"
    section.

Note that this changeset has a character of proposal. If you do not
like the direction it takes at all, feel free to revert it (probably
together with the previous VERBOSE patch). However, I believe it
improves the code by bringing the compilation commands to a single
place and it greatly improves the VERBOSE support, too (and makes it
much less intrusive).
2005-03-01 01:14:27 +00:00
pasky
c710ec4698 (svn r1915) Support for a VERBOSE flag which will make the full compiler invocations to be shown instead of ===> Brief summaries. 2005-02-28 21:54:04 +00:00
tron
a0a313490b (svn r1828) New warning flag especially for truelight (:< 2005-02-06 18:38:42 +00:00
tron
59fa465dce (svn r1821) Move generic string handling functions to string.[ch] and introduce stre{cpy,cat}, see string.h for their semantics 2005-02-06 13:41:02 +00:00
truelight
bd7f37d592 (svn r1817) -Codechange: Moved depot-functions to depot.c
-Codechange: Added wrappers around depot-access (GetDepot no exists)
-Codechange: Made depot-functions a bit more logic (no longer 
GetDepotByTile crashes your game when you request it on a non-depot tile)
-Add: made depots dynamic (yes, 64k depots are possible now)
2005-02-06 10:18:47 +00:00
tron
36c9758c94 (svn r1803) Move debugging stuff into files of it's own 2005-02-05 15:58:59 +00:00
tron
033c392aca (svn r1796) Revert r1792, because MorphOS has defaults for CC/CXX, they're just wrong, so setting CC/CXX using ?= simply did nothing 2005-02-04 19:53:53 +00:00
tron
1952882e7e (svn r1795) Change CFLAGS for MorphOS (tokai) 2005-02-04 19:51:43 +00:00
tron
7ec7697f56 (svn r1793) Revert one instance of $(shell) back to ``, because MorphOS does The Wrong Thing(tm) when date is used within $(shell) 2005-02-04 17:57:07 +00:00
tron
cf5dfe6646 (svn r1792) Revert r1761 and set fallback values via ?= for CC and CXX as there seem to be platforms (MorphOS) out there which don't provide some proper defaults.
Use gcc and g++ as defaults, because cc and c++ aren't available either. *sigh*
2005-02-04 17:45:11 +00:00