scummvm/configure
Travis Howell baa31cd83d Merged revisions 42578,42587-42593,42596-42599,42606,42608-42611,42614-42615,42619,42623-42626,42632-42642,42645,42654-42656,42658-42664,42668,42671-42677,42679,42681,42685,42690,42693,42695-42697,42699,42701,42704-42729,42736-42740,42742-42744,42746-42748,42751-42753,42755,42757,42759,42761,42765-42768,42771,42773,42776,42780,42782-42783,42785,42787,42790-42793,42795,42798-42799,42801,42807,42809,42812-42826,42842-42845,42847,42849,42851,42856-42859,42861,42863,42866,42868,42870,42880-42881,42886-42887,42889-42890,42892,42894-42895,42898,42900,42904,42907,42910-42912,42918,42920,42922-42924,42926,42929,42932,42934-42935,42937-42941,42943,42946-42947,42950-42953,42955,42958-42959,42964-42965,42973-42974,42995-42996,42999,43001,43003,43005,43007-43008,43010-43011,43013,43020,43023,43025,43027,43029,43033,43035,43037,43039,43041-43043,43048,43056 via svnmerge from
https://scummvm.svn.sourceforge.net/svnroot/scummvm/scummvm/trunk

........
  r42578 | dreammaster | 2009-07-18 11:22:43 +1000 (Sat, 18 Jul 2009) | 1 line
  
  Minor tweak to prevent mouse clicks that close a user wait message also being further interpreted as a user walk destination
........
  r42587 | wjpalenstijn | 2009-07-18 22:51:12 +1000 (Sat, 18 Jul 2009) | 1 line
  
  SCI: Fix stepping in debugger
........
  r42588 | drmccoy | 2009-07-18 23:05:36 +1000 (Sat, 18 Jul 2009) | 1 line
  
  Adding a workaround for the guard house card game "game over" screen in Woodruff
........
  r42589 | wjpalenstijn | 2009-07-18 23:05:39 +1000 (Sat, 18 Jul 2009) | 1 line
  
  SCI: don't leave debugger after bt
........
  r42590 | Kirben | 2009-07-18 23:39:21 +1000 (Sat, 18 Jul 2009) | 1 line
  
  Add workaround for bug #1668393 - ZAK FM-TOWNS: Crash when entering Hostel from outside.
........
  r42591 | fingolfin | 2009-07-19 01:11:19 +1000 (Sun, 19 Jul 2009) | 1 line
  
  AGOS: Fixed backspace under OS X in Personal Nightmare
........
  r42592 | fingolfin | 2009-07-19 01:12:54 +1000 (Sun, 19 Jul 2009) | 1 line
  
  AGOS: Get rid of one setjmp in PN code (needs testing)
........
  r42593 | fingolfin | 2009-07-19 01:15:26 +1000 (Sun, 19 Jul 2009) | 1 line
  
  AGOS: Removed second setjmp in PN code (untested!)
........
  r42596 | cyx | 2009-07-19 07:26:44 +1000 (Sun, 19 Jul 2009) | 2 lines
  
  add "-IQ" suffix test to SO_LOAD_STRING (same as SO_SAVE_STRING) ; fixes french version of atlantis
........
  r42597 | wjpalenstijn | 2009-07-19 08:17:56 +1000 (Sun, 19 Jul 2009) | 1 line
  
  Fix crash in tab completion if one command is a prefix of another.
........
  r42598 | wjpalenstijn | 2009-07-19 08:19:07 +1000 (Sun, 19 Jul 2009) | 1 line
  
  SCI: Fix disasm_addr option parsing
........
  r42599 | wjpalenstijn | 2009-07-19 08:46:07 +1000 (Sun, 19 Jul 2009) | 1 line
  
  SCI: Fix breakpoints
........
  r42606 | Kirben | 2009-07-19 19:09:56 +1000 (Sun, 19 Jul 2009) | 1 line
  
  Add patch #2823590 - Fix music crashes in Waxworks (PC).
........
  r42608 | Kirben | 2009-07-19 19:13:17 +1000 (Sun, 19 Jul 2009) | 1 line
  
  Update Waxworks.
........
  r42609 | wjpalenstijn | 2009-07-19 20:50:14 +1000 (Sun, 19 Jul 2009) | 1 line
  
  SCI: check shouldQuit() in main loop
........
  r42610 | cyx | 2009-07-19 21:07:17 +1000 (Sun, 19 Jul 2009) | 2 lines
  
  fix bug #2597980 - TUCKER: Sprite glitch
........
  r42611 | dreammaster | 2009-07-19 22:52:19 +1000 (Sun, 19 Jul 2009) | 1 line
  
  Added the GUIO_NOSFX and GUIO_NOMUSIC flags to the first Discworld 1 demo entry
........
  r42614 | Kirben | 2009-07-20 00:03:35 +1000 (Mon, 20 Jul 2009) | 1 line
  
  Change generic save game name.
........
  r42615 | knakos | 2009-07-20 00:46:11 +1000 (Mon, 20 Jul 2009) | 1 line
  
  remove dead code leftover
........
  r42619 | knakos | 2009-07-20 02:10:55 +1000 (Mon, 20 Jul 2009) | 1 line
  
  whoops, fix non-arm build (why? :-) )
........
  r42623 | wjpalenstijn | 2009-07-20 07:06:25 +1000 (Mon, 20 Jul 2009) | 1 line
  
  Fix compilation with USE_CONSOLE = 0
........
  r42624 | fingolfin | 2009-07-20 15:02:17 +1000 (Mon, 20 Jul 2009) | 1 line
  
  AGOS: Fixed badload(); some whitespace cleanup
........
  r42625 | sev | 2009-07-20 18:31:40 +1000 (Mon, 20 Jul 2009) | 3 lines
  
  Moved new ports section to more appropriate place. And force buildbot to
  recompile :)
........
  r42626 | dreammaster | 2009-07-20 19:19:27 +1000 (Mon, 20 Jul 2009) | 1 line
  
  Bugfix for hangs on scene changes in Discworld 1 after having loaded a savegame from the GMM when the title screens are displayed
........
  r42632 | wjpalenstijn | 2009-07-21 06:55:28 +1000 (Tue, 21 Jul 2009) | 4 lines
  
  Make ScummFile::eos() consistent with Stream::eos().
  Remove usage of ioFailed from SCUMM engine.
  Fix reading up to the end of a SCUMM SubFile.
  This hopefully fixes #2820957.
........
  r42633 | mthreepwood | 2009-07-21 06:59:35 +1000 (Tue, 21 Jul 2009) | 1 line
  
  Fixing bug #2823854: Mickey's space adventure crash. There's one too many space characters in a string which causes it to be drawn off the screen.
........
  r42634 | sev | 2009-07-21 08:15:37 +1000 (Tue, 21 Jul 2009) | 2 lines
  
  Proper implementation of microscope puzzle.
........
  r42635 | lordhoto | 2009-07-21 08:26:41 +1000 (Tue, 21 Jul 2009) | 2 lines
  
  Fix gcc warning (hopefully this is correct).
........
  r42636 | Kirben | 2009-07-21 17:02:18 +1000 (Tue, 21 Jul 2009) | 1 line
  
  Update GUI flags for AGOS game engine.
........
  r42637 | wjpalenstijn | 2009-07-21 19:39:58 +1000 (Tue, 21 Jul 2009) | 1 line
  
  Use a BufferedReadStream to buffer ArjFile's input to reduce memory usage
........
  r42638 | Kirben | 2009-07-21 20:37:58 +1000 (Tue, 21 Jul 2009) | 1 line
  
  Fix fade effects in Waxworks.
........
  r42639 | Kirben | 2009-07-21 20:48:32 +1000 (Tue, 21 Jul 2009) | 1 line
  
  Fix bug #2823818 - GUI: unable to select subtitles and speech for Simon 2.
........
  r42640 | drmccoy | 2009-07-21 21:26:31 +1000 (Tue, 21 Jul 2009) | 1 line
  
  Making some static const uint32s public, older GCC versions don't seem to like nested classes to access their parents' protected members
........
  r42641 | drmccoy | 2009-07-21 21:58:58 +1000 (Tue, 21 Jul 2009) | 1 line
  
  Fixing "Game "hangs" after first level" (bug #2824414)
........
  r42642 | drmccoy | 2009-07-21 22:14:36 +1000 (Tue, 21 Jul 2009) | 1 line
  
  Fixing the text input in Gob1 (the loading code wasn't printed as you typed anymore)
........
  r42645 | robinwatts | 2009-07-22 05:39:24 +1000 (Wed, 22 Jul 2009) | 4 lines
  
  Add ARM code implementation of Scaler2x, and enable it for the WinCE
  port.
........
  r42654 | Kirben | 2009-07-22 19:52:44 +1000 (Wed, 22 Jul 2009) | 1 line
  
  Simplify fade code.
........
  r42655 | Kirben | 2009-07-22 20:23:58 +1000 (Wed, 22 Jul 2009) | 1 line
  
  Change the default target to CD version, for games which offer floppy and CD versions. So all GUI options are still available in fan translations.
........
  r42656 | Kirben | 2009-07-22 20:32:35 +1000 (Wed, 22 Jul 2009) | 1 line
  
  Update video script debug table for Waxworks.
........
  r42658 | sev | 2009-07-22 21:48:51 +1000 (Wed, 22 Jul 2009) | 2 lines
  
  Fix bug #2823762: "AGI: PQ1 All function keys are broken after restart"
........
  r42659 | sev | 2009-07-22 22:24:55 +1000 (Wed, 22 Jul 2009) | 2 lines
  
  Fix bug #2823759: "AGI: PQ1 help not showing the first time you press F1"
........
  r42660 | sev | 2009-07-22 22:36:08 +1000 (Wed, 22 Jul 2009) | 2 lines
  
  Mention microscope puzzle improvement in T7G
........
  r42661 | lordhoto | 2009-07-22 22:38:34 +1000 (Wed, 22 Jul 2009) | 1 line
  
  Since Kyra PC98 version is japanese only don't mention it explicitly.
........
  r42662 | sev | 2009-07-23 01:55:33 +1000 (Thu, 23 Jul 2009) | 2 lines
  
  Move functions from agi.cpp to more appropriate files.
........
  r42663 | sev | 2009-07-23 02:26:53 +1000 (Thu, 23 Jul 2009) | 2 lines
  
  Fix bug #2798797: "AGI: larry 1 doesn't restart after dying"
........
  r42664 | sev | 2009-07-23 05:25:53 +1000 (Thu, 23 Jul 2009) | 7 lines
  
  Fix bug #1745396: "MI: Saved game from the credits sequence fails to load".
  
  Now we specifically disallow saves in room 0 for all v4+ games. Original
  has exactly this check in all versions, and such games are impossible to load.
  
  Still the problem is not resolved for v0-v3 and HE games.
........
  r42668 | sev | 2009-07-23 06:37:48 +1000 (Thu, 23 Jul 2009) | 2 lines
  
  Fix bug #2825252: "GUI: Low Res Bugs"
........
  r42671 | Kirben | 2009-07-23 15:48:20 +1000 (Thu, 23 Jul 2009) | 1 line
  
  Simplify the code to check whether loading or saving a game is possible.
........
  r42672 | Kirben | 2009-07-23 15:57:00 +1000 (Thu, 23 Jul 2009) | 1 line
  
  Simplify the code to check whether loading or saving a game is possible.
........
  r42673 | Kirben | 2009-07-23 17:49:28 +1000 (Thu, 23 Jul 2009) | 1 line
  
  Correct error in revision 26678.
........
  r42674 | Kirben | 2009-07-23 20:31:06 +1000 (Thu, 23 Jul 2009) | 1 line
  
  Remove keyboard support for mouse buttons, since it interferes with load/save scripts in HE games and input scripts in others games (COMI, FT). It isn't much use anyway, since we dropped support for cursor movement via keyboard long ago.
........
  r42675 | Kirben | 2009-07-23 20:33:13 +1000 (Thu, 23 Jul 2009) | 1 line
  
  Fix bug #1726909 - HE Games: Glitches after loading saved games, by restircting HE games to their original load/save interface.
........
  r42676 | dreammaster | 2009-07-23 20:49:30 +1000 (Thu, 23 Jul 2009) | 1 line
  
  Bugfix for player blocking room entrance causing NPCs trying to enter getting an excessive number of action entries
........
  r42677 | Kirben | 2009-07-23 20:54:12 +1000 (Thu, 23 Jul 2009) | 1 line
  
  Only autosave in supported scenes.
........
  r42679 | drmccoy | 2009-07-24 05:50:13 +1000 (Fri, 24 Jul 2009) | 1 line
  
  Fixing a bug in the V4 save file handler, produced by a "neat" feature in Woodruff: The saves remember their position within the list and use that information to load the "correct" screen properties, making it impossible to load reordered saves correctly -.-
........
  r42681 | Kirben | 2009-07-24 14:59:21 +1000 (Fri, 24 Jul 2009) | 1 line
  
  Bear Stormin' is the full mini game, and not a demo.
........
  r42685 | Kirben | 2009-07-24 15:20:44 +1000 (Fri, 24 Jul 2009) | 1 line
  
  Fix cursor position, when entering a save game name in HE games.
........
  r42690 | drmccoy | 2009-07-24 20:45:25 +1000 (Fri, 24 Jul 2009) | 1 line
  
  Adding transparency for VMD video block type 2, fixing bug #2037158 ("n-Game animation shifted(?)"). The problem was that the animation in question has an one pixel wide transparent bar on the left
........
  r42693 | Kirben | 2009-07-24 22:28:53 +1000 (Fri, 24 Jul 2009) | 1 line
  
  Add workaround for bug #2826144 - SAM: Game hangs when talking to bigfoot guard.
........
  r42695 | Kirben | 2009-07-24 23:30:26 +1000 (Fri, 24 Jul 2009) | 1 line
  
  Adjust workaround for bug #2826144, to use hard coded offset, that should be safe in all language versions.
........
  r42696 | wjpalenstijn | 2009-07-25 04:58:15 +1000 (Sat, 25 Jul 2009) | 3 lines
  
  SAGA: Instead of trying to detect duplicate glyphs,
  simply generate duplicate outline glyphs.
  This should fix #2826697.
........
  r42697 | eriktorbjorn | 2009-07-25 05:24:15 +1000 (Sat, 25 Jul 2009) | 2 lines
  
  Removed unused variable.
........
  r42699 | sev | 2009-07-25 05:56:46 +1000 (Sat, 25 Jul 2009) | 2 lines
  
  This is 1.1.0svn
........
  r42701 | sev | 2009-07-25 06:21:49 +1000 (Sat, 25 Jul 2009) | 2 lines
  
  re-enable SCI engine
........
  r42704 | drmccoy | 2009-07-25 07:29:41 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Adding support for ADPCM sound data (yet another IMA ADPCM variant). What we've called ADPCM before is more like DPCM
........
  r42705 | drmccoy | 2009-07-25 07:31:00 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Adding subtitle support to Woodruff
........
  r42706 | drmccoy | 2009-07-25 07:31:58 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Caching the subtitle font and color, because some don't assign those
........
  r42707 | drmccoy | 2009-07-25 07:32:45 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Calculating the number of data bytes per initial sound slice, because relying on the standard amount doesn't work for some videos
........
  r42708 | drmccoy | 2009-07-25 07:33:22 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Properly reading the video codec fourcc, in case we need other codecs in the future
........
  r42709 | drmccoy | 2009-07-25 07:33:55 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Adding ADL playback to the demoplayer
........
  r42710 | drmccoy | 2009-07-25 07:34:17 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Adding stubs for newer VMDs found in Addy 5
........
  r42711 | drmccoy | 2009-07-25 07:34:43 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Added a method to easily dump resources to file
........
  r42712 | drmccoy | 2009-07-25 07:35:06 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Fixing bytes per pixel detection
........
  r42713 | drmccoy | 2009-07-25 07:35:57 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Renaming getAnchor() to getFrameCoords()
........
  r42714 | drmccoy | 2009-07-25 07:36:16 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Moving all implementations into the cpp
........
  r42715 | drmccoy | 2009-07-25 07:36:42 +1000 (Sat, 25 Jul 2009) | 1 line
  
  CoktelVideo cleanup: Splitting up some IMD methods and removing the obsolete notifyPaused()
........
  r42716 | drmccoy | 2009-07-25 07:36:59 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Merging Map_v4 into Map_v2
........
  r42717 | lordhoto | 2009-07-25 10:58:44 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Add new event dispatching API.
........
  r42718 | lordhoto | 2009-07-25 10:59:03 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Replace "EventProvider" class of the DefaultEventManager implementation with "Common::EventSource".
........
  r42719 | lordhoto | 2009-07-25 10:59:18 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Got rid of EventManger::artificialEventQueue.
........
  r42720 | lordhoto | 2009-07-25 10:59:30 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Add function "allowMapping" to EventSource, for testing whether the event source allows mapping (via the Keymapper for example.)
........
  r42721 | lordhoto | 2009-07-25 10:59:39 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Prevent EventMapper events from being mapped.
........
  r42722 | lordhoto | 2009-07-25 10:59:53 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Replaced "_artificialEventQueue" by an EventSource.
........
  r42723 | lordhoto | 2009-07-25 11:00:12 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Made DefaultEventManager a subclass of EventObserver.
........
  r42724 | lordhoto | 2009-07-25 11:00:24 +1000 (Sat, 25 Jul 2009) | 2 lines
  
  - Add marco to easily access the EventDispatcher instance.
  - Add events.cpp to module.mk
........
  r42725 | lordhoto | 2009-07-25 11:00:37 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Change DefaultEventManager to use EventDispatcher.
........
  r42726 | lordhoto | 2009-07-25 11:00:47 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Moved ArtificialEventSource to common/events.h.
........
  r42727 | lordhoto | 2009-07-25 11:01:05 +1000 (Sat, 25 Jul 2009) | 2 lines
  
  - Adapt DefaultEventManager to use Common::ArtificialEventSource
  - Adapt Keymapper to implement EventMapper interface
........
  r42728 | lordhoto | 2009-07-25 11:01:22 +1000 (Sat, 25 Jul 2009) | 2 lines
  
  - EventDispatcher is no longer a singleton.
  - Add "getEventDispatcher" method to EventManager.
........
  r42729 | lordhoto | 2009-07-25 11:01:41 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Add enum which marks global priorites of the EventManager event dispatcher.
........
  r42736 | Kirben | 2009-07-25 15:39:57 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Add patch #2816140 - MM C64 Costume Animation.
........
  r42737 | Kirben | 2009-07-25 16:27:41 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Add patch #2821100 - MM C64 Objects / Verb fixes, with minor clean up applied.
........
  r42738 | Kirben | 2009-07-25 16:36:41 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Update credits.
........
  r42739 | eriktorbjorn | 2009-07-25 16:55:28 +1000 (Sat, 25 Jul 2009) | 2 lines
  
  Fixed GCC warnings.
........
  r42740 | Kirben | 2009-07-25 17:17:37 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Whitespace changes.
........
  r42742 | fingolfin | 2009-07-25 19:36:16 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Whitespace fixes
........
  r42743 | wjpalenstijn | 2009-07-25 20:25:57 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Add Common::String::printf to format a string
........
  r42744 | wjpalenstijn | 2009-07-25 20:26:17 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Use new Common::String::printf
........
  r42746 | sev | 2009-07-25 20:37:20 +1000 (Sat, 25 Jul 2009) | 2 lines
  
  Formatting
........
  r42747 | joostp | 2009-07-25 22:28:45 +1000 (Sat, 25 Jul 2009) | 1 line
  
  fix unaligned writes
........
  r42748 | joostp | 2009-07-25 22:41:46 +1000 (Sat, 25 Jul 2009) | 1 line
  
  remove implicit SoundDigital::Sound ctor call, which is redundant because the required initialisation is done below -- this fixes a linker error with mipspro
........
  r42751 | lordhoto | 2009-07-25 22:59:46 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Move the event recorder to its own class (EventRecoder inside common/EventRecorder.[h/cpp]).
........
  r42752 | lordhoto | 2009-07-25 23:00:09 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Strip trailing whitespaces.
........
  r42753 | joostp | 2009-07-25 23:07:17 +1000 (Sat, 25 Jul 2009) | 1 line
  
  fix another aligned write
........
  r42755 | eriktorbjorn | 2009-07-25 23:07:50 +1000 (Sat, 25 Jul 2009) | 2 lines
  
  Added word-wrapping to Drascula's conversation options. Fixes bug #2826607.
........
  r42757 | eriktorbjorn | 2009-07-25 23:17:31 +1000 (Sat, 25 Jul 2009) | 2 lines
  
  Don't hog the CPU while waiting for the player to pick a conversation option.
........
  r42759 | lordhoto | 2009-07-25 23:23:51 +1000 (Sat, 25 Jul 2009) | 1 line
  
  Fix gp2x port building.
........
  r42761 | lordhoto | 2009-07-26 00:09:58 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Yet another fix for the GP2x backend.
........
  r42765 | lordhoto | 2009-07-26 01:31:11 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Adept savegame name creation code to use Common::String::printf.
........
  r42766 | drmccoy | 2009-07-26 02:07:29 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Added a workaround to fix the Last Dynasty video greenness for now
........
  r42767 | drmccoy | 2009-07-26 02:08:31 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Moved the decision whether subtitles should be displayed, so that the broken subtitles in The Last Dynasty aren't shown
........
  r42768 | drmccoy | 2009-07-26 02:09:19 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Fixing Woodruff videos again after enabling block type 2 transparency
........
  r42771 | lordhoto | 2009-07-26 02:34:01 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Fix palette regression in Kyra2.
........
  r42773 | lordhoto | 2009-07-26 02:37:25 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Implement missing bits in KyraEngine_HoF::setCauldronState.
........
  r42776 | eriktorbjorn | 2009-07-26 03:48:51 +1000 (Sun, 26 Jul 2009) | 5 lines
  
  Make sure that "buf" is properly terminated. Actually, we could probably get
  rid of "buf" completely, and replace it with face = syncChar[p] - '0', assuming
  that syncChar only contains digits. But for now, let's make a minimal change.
  This might fix bug #2826611 ("DRASCULA: Crash when smashing church window").
........
  r42780 | joostp | 2009-07-26 04:35:27 +1000 (Sun, 26 Jul 2009) | 2 lines
  
  use READ_UINT16 macro
........
  r42782 | drmccoy | 2009-07-26 04:44:06 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Adding support for (new-style) stereo in DPCM audio
........
  r42783 | drmccoy | 2009-07-26 04:44:24 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Adding more sanity checks to Vmd::renderFrame()
........
  r42785 | djwillis | 2009-07-26 05:07:28 +1000 (Sun, 26 Jul 2009) | 1 line
  
  GP2X Backend: Volume control code cleanup.
........
  r42787 | wjpalenstijn | 2009-07-26 09:36:24 +1000 (Sun, 26 Jul 2009) | 2 lines
  
  Add optional readline support to the text debugger console.
  Make text/graphical console selectable with an option to configure.
........
  r42790 | dreammaster | 2009-07-26 10:27:32 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Changed the events.cpp file to EventDispatcher.cpp, to avoid MSVC name clashes with sdl/events.cpp
........
  r42791 | dreammaster | 2009-07-26 10:31:28 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Fixed compilation from file changes to common and gob engine
........
  r42792 | lordhoto | 2009-07-26 17:07:35 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Formatting.
........
  r42793 | peres001 | 2009-07-26 18:37:03 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Moved parser functions arrays to file scope, as they were tripping up the obsolete gcc used for the BeOS/Haiku port. If anybody can work out a better solution please apply it, because this makes me sick.
........
  r42795 | dreammaster | 2009-07-26 19:09:07 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Added a delay to the in-game menu loop to prevent 100% CPU usage
........
  r42798 | dreammaster | 2009-07-26 19:40:35 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Bugfix for mouse button clicks getting counted multiple times
........
  r42799 | dreammaster | 2009-07-26 19:48:52 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Added a debug line to allow tracking of script execution
........
  r42801 | eriktorbjorn | 2009-07-26 20:10:08 +1000 (Sun, 26 Jul 2009) | 4 lines
  
  78 bytes isn't enough for some of the longer conversation options. 128 might
  not be enough either, but at least it fixes bug #2827170 ("DRASCULA:
  Conversation error").
........
  r42807 | djwillis | 2009-07-26 22:58:22 +1000 (Sun, 26 Jul 2009) | 2 lines
  
  Virtual Keyboard: Update default keyboard pack using slightly tweaked versions of the graphics very kindly provided by Carl Mitchell. Also update xml file to make best use of the keyboard graphics and add the 'delete' event in addition the passing backspace back to the calling textarea.
........
  r42809 | drmccoy | 2009-07-26 23:50:18 +1000 (Sun, 26 Jul 2009) | 1 line
  
  Reverting my fix for bug #2037158 ("In-Game animation shifted(?)"), because it breaks Woodruff's intro
........
  r42812 | lordhoto | 2009-07-27 00:16:51 +1000 (Mon, 27 Jul 2009) | 1 line
  
  Create base class FontSJIS16x16 for our own SJIS font.
........
  r42813 | lordhoto | 2009-07-27 00:17:06 +1000 (Mon, 27 Jul 2009) | 1 line
  
  Add support for our custom SJIS font.
........
  r42814 | lordhoto | 2009-07-27 00:17:21 +1000 (Mon, 27 Jul 2009) | 1 line
  
  Change KYRA to use our SJIS font, when it's available.
........
  r42815 | lordhoto | 2009-07-27 00:17:40 +1000 (Mon, 27 Jul 2009) | 1 line
  
  Change the way the font data for SJIS fonts is load.
........
  r42816 | lordhoto | 2009-07-27 00:17:54 +1000 (Mon, 27 Jul 2009) | 1 line
  
  Add a factory method, which tries to open different SJIS fonts/ROMs and returns a font for the first present data.
........
  r42817 | lordhoto | 2009-07-27 00:18:06 +1000 (Mon, 27 Jul 2009) | 1 line
  
  Print warning, when client code does try to draw an unsupported SJIS char.
........
  r42818 | lordhoto | 2009-07-27 00:18:21 +1000 (Mon, 27 Jul 2009) | 1 line
  
  Specify that the chars passed to FontSJIS::drawChar should be little endian.
........
  r42819 | lordhoto | 2009-07-27 00:18:34 +1000 (Mon, 27 Jul 2009) | 1 line
  
  Add way to overwrite default SJIS font.
........
  r42820 | lordhoto | 2009-07-27 00:18:49 +1000 (Mon, 27 Jul 2009) | 1 line
  
  Simplify KYRA's SJIS font loading code.
........
  r42821 | lordhoto | 2009-07-27 00:19:02 +1000 (Mon, 27 Jul 2009) | 1 line
  
  Reflect code to test the magic bytes in the sjis.fnt header.
........
  r42822 | lordhoto | 2009-07-27 00:24:45 +1000 (Mon, 27 Jul 2009) | 1 line
  
  Add NEWS entry about new SJIS code.
........
  r42823 | lordhoto | 2009-07-27 00:40:03 +1000 (Mon, 27 Jul 2009) | 1 line
  
  Instead of only printing a warning, when no SJIS char data is present, just return to the caller.
........
  r42824 | lordhoto | 2009-07-27 00:40:44 +1000 (Mon, 27 Jul 2009) | 1 line
  
  Add a todo to FontSJIS::drawChar taking an Graphics::Surface.
........
  r42825 | marcus_c | 2009-07-27 06:41:33 +1000 (Mon, 27 Jul 2009) | 1 line
  
  Create IP.BIN.
........
  r42826 | joostp | 2009-07-27 07:06:53 +1000 (Mon, 27 Jul 2009) | 1 line
  
  fix/workaround for cruise crash on OSX
........
  r42842 | wjpalenstijn | 2009-07-28 02:04:35 +1000 (Tue, 28 Jul 2009) | 2 lines
  
  Fix format string issues (and compiler warnings).
  Patch by salty-horse.
........
  r42843 | robinwatts | 2009-07-28 02:29:36 +1000 (Tue, 28 Jul 2009) | 7 lines
  
  Add ARM code version of Normal2x scaler.
  Add ARM only aspect ratio correcting version of Normal2x scaler.
  
  Make WinCE port use Normal2x by default if the screen is large enough.
  Make WinCE port use aspect ratio correcting version if panel is hidden.
........
  r42844 | lordhoto | 2009-07-28 03:04:06 +1000 (Tue, 28 Jul 2009) | 1 line
  
  Formatting.
........
  r42845 | lordhoto | 2009-07-28 03:48:40 +1000 (Tue, 28 Jul 2009) | 1 line
  
  Fix bug #2827459 "ITE: Ingame GUI does not list slots 96-99", by defining in SagaMetaEngine that the last valid save slot for SAGA is slot 95.
........
  r42847 | djwillis | 2009-07-28 04:05:16 +1000 (Tue, 28 Jul 2009) | 1 line
  
  GP2XWiz: Update GP2X Wiz bundle.sh to copy libraries into the distribution file from the tool chain where the libraries are broken on the device. Also add LD_LIBRARY_PATH 'hack' to launch script to ensure bundled libraries are used over system ones.
........
  r42849 | lordhoto | 2009-07-28 04:19:16 +1000 (Tue, 28 Jul 2009) | 1 line
  
  Oops enabled HACK to prevent multiple OPL instances again.
........
  r42851 | drmccoy | 2009-07-28 05:01:17 +1000 (Tue, 28 Jul 2009) | 1 line
  
  Abstracting off the block types from Imd::renderFrame() and Vmd::renderFrame()
........
  r42856 | drmccoy | 2009-07-29 01:05:44 +1000 (Wed, 29 Jul 2009) | 1 line
  
  Silencing two "empty loop body" warnings
........
  r42857 | drmccoy | 2009-07-29 01:19:55 +1000 (Wed, 29 Jul 2009) | 1 line
  
  Changing stuff around a bit so alignment requirements won't increase
........
  r42858 | drmccoy | 2009-07-29 02:28:32 +1000 (Wed, 29 Jul 2009) | 1 line
  
  More alignment-related changes
........
  r42859 | eriktorbjorn | 2009-07-29 03:19:33 +1000 (Wed, 29 Jul 2009) | 3 lines
  
  Fixed drawing subtitles for cutscenes that are narrower than the screen, and
  erase the subtitles manually if they are drawn outside the frame.
........
  r42861 | eriktorbjorn | 2009-07-29 03:53:59 +1000 (Wed, 29 Jul 2009) | 3 lines
  
  Broken Sword 2, unsurprisingly, had the same subtitle drawing glitch for small
  cutscenes that Broken Sword 1 had. And a memory leak. This should fix both.
........
  r42863 | djwillis | 2009-07-29 06:22:38 +1000 (Wed, 29 Jul 2009) | 1 line
  
  GP2XWiz: Add downscale support to the backend using the PocketPCHalfARM scaler from the WinCE backend (Maybe this should be moved into /graphics/scalers at some point?). Also enable all the ARM optemised routines in this and the GP2X backend.
........
  r42866 | fingolfin | 2009-07-29 08:28:40 +1000 (Wed, 29 Jul 2009) | 1 line
  
  SCI: Avoid using perror (it's not portable)
........
  r42868 | fingolfin | 2009-07-29 08:42:08 +1000 (Wed, 29 Jul 2009) | 1 line
  
  Patch #2828644: Support for mingw32ce 0.5.1 toolchain in configure script
........
  r42870 | fingolfin | 2009-07-29 09:19:33 +1000 (Wed, 29 Jul 2009) | 2 lines
  
  SCUMM: Moved _inventoryOffset to ScummEngine_v2 and save it.
  Fixes bug #2828417: Zak V2: inventory position isn't reset when loading.
........
  r42880 | fingolfin | 2009-07-29 18:55:04 +1000 (Wed, 29 Jul 2009) | 1 line
  
  SCUMM: cleanup
........
  r42881 | fingolfin | 2009-07-29 18:55:17 +1000 (Wed, 29 Jul 2009) | 1 line
  
  GUI: When clicking in a scrollbar to page up/down, don't scroll a full page; rather scroll a full page minus one line (see FR #2821508). This matches the behavior of the page up/down keys
........
  r42886 | fingolfin | 2009-07-29 19:19:56 +1000 (Wed, 29 Jul 2009) | 1 line
  
  Sort audio output rates numerically (see FR #2821525)
........
  r42887 | drmccoy | 2009-07-29 20:17:44 +1000 (Wed, 29 Jul 2009) | 1 line
  
  Adding a SoundType parameter to SmackerDecoder, defaulting to kSFXSoundType
........
  r42889 | fingolfin | 2009-07-29 21:48:20 +1000 (Wed, 29 Jul 2009) | 1 line
  
  SCUMM: Rewrote ScummEngine::inventoryScriptIndy3Mac for clarity
........
  r42890 | lordhoto | 2009-07-30 00:54:27 +1000 (Thu, 30 Jul 2009) | 1 line
  
  Fix animation script sound effect opcode implementation in Kyra3.
........
  r42892 | lordhoto | 2009-07-30 01:31:23 +1000 (Thu, 30 Jul 2009) | 1 line
  
  Fix saving of item in hand in HoF and MR.
........
  r42894 | drmccoy | 2009-07-30 01:57:50 +1000 (Thu, 30 Jul 2009) | 1 line
  
  Oops, fixing a regression I created with the Map_v4/Map_v2-merge
........
  r42895 | lordhoto | 2009-07-30 02:24:07 +1000 (Thu, 30 Jul 2009) | 1 line
  
  Fix a little bug in KyraEngine_MR::showBadConscience, which prevented Gunther's mouse shapes from showing up.
........
  r42898 | fingolfin | 2009-07-30 04:35:34 +1000 (Thu, 30 Jul 2009) | 1 line
  
  SCUMM: Enable looping in Indy3Mac sound effects
........
  r42900 | lordhoto | 2009-07-30 05:39:03 +1000 (Thu, 30 Jul 2009) | 1 line
  
  Fix regression, which prevented saving in COMI.
........
  r42904 | lordhoto | 2009-07-30 06:03:46 +1000 (Thu, 30 Jul 2009) | 1 line
  
  Fix typo, which made our "floorf" macro use "floorf" instead of "floor" on systems without "floorf".
........
  r42907 | fingolfin | 2009-07-30 06:35:50 +1000 (Thu, 30 Jul 2009) | 1 line
  
  SCUMM: Fix verb/sentence handling in Indy3 mac (there, a double click must be used to trigger a verb/sentence)
........
  r42910 | fingolfin | 2009-07-30 07:39:00 +1000 (Thu, 30 Jul 2009) | 1 line
  
  Removed last traces of clearIOFailed. Yay :)
........
  r42911 | fingolfin | 2009-07-30 07:39:16 +1000 (Thu, 30 Jul 2009) | 1 line
  
  Removed redundant File::ioFailed() implementation; also turned ReadStream::ioFailed from a virtual into an inline method
........
  r42912 | fingolfin | 2009-07-30 07:39:34 +1000 (Thu, 30 Jul 2009) | 1 line
  
  SWORD1 & SWORD2: Replaced ioFailed by err+eos
........
  r42918 | fingolfin | 2009-07-30 19:36:50 +1000 (Thu, 30 Jul 2009) | 1 line
  
  Patch #2818501: enable scale2x mmx on x86_64
........
  r42920 | dreammaster | 2009-07-30 21:03:16 +1000 (Thu, 30 Jul 2009) | 1 line
  
  Added the character lookup table for the Spanish font
........
  r42922 | peres001 | 2009-07-30 23:41:22 +1000 (Thu, 30 Jul 2009) | 1 line
  
  Use SaveFileMan::listSaveFiles() to build list of old savegames for Nippon Safes.
........
  r42923 | peres001 | 2009-07-30 23:42:08 +1000 (Thu, 30 Jul 2009) | 1 line
  
  Fixed typo in user message.
........
  r42924 | peres001 | 2009-07-30 23:44:50 +1000 (Thu, 30 Jul 2009) | 1 line
  
  Cleanup the header file as I removed one function in r42922.
........
  r42926 | lordhoto | 2009-07-31 00:24:23 +1000 (Fri, 31 Jul 2009) | 1 line
  
  Fix bug which caused the mouse cursor not to update in some cases.
........
  r42929 | lordhoto | 2009-07-31 01:12:42 +1000 (Fri, 31 Jul 2009) | 1 line
  
  Add tanoku to our GUI credits section.
........
  r42932 | lordhoto | 2009-07-31 01:19:15 +1000 (Fri, 31 Jul 2009) | 1 line
  
  Prevent our "credits" make target updating Credits.rtf, which in fact is not present in SVN anymore, and the outdated docbook.
........
  r42934 | lordhoto | 2009-07-31 02:43:25 +1000 (Fri, 31 Jul 2009) | 1 line
  
  Fix bug #2829737: "GUI: Wrong background colours on dialog screens (IRIX)".
........
  r42935 | lordhoto | 2009-07-31 02:51:53 +1000 (Fri, 31 Jul 2009) | 1 line
  
  Fixed missing clearing of the low bit of the alpha mask in the "dim" screen shading function.
........
  r42937 | fingolfin | 2009-07-31 03:48:03 +1000 (Fri, 31 Jul 2009) | 1 line
  
  NDS: Changed jtypes.h to ndstypes.h (this 'newer' name has been in effect even in the older versions of DevKitPro used for compiling ScummVM...)
........
  r42938 | fingolfin | 2009-07-31 03:52:44 +1000 (Fri, 31 Jul 2009) | 1 line
  
  minor cleanup to scale2x, to avoid confusing the compiler about potential pointer aliasing (only the tip of the iceberg, of course... ;)
........
  r42939 | fingolfin | 2009-07-31 04:27:50 +1000 (Fri, 31 Jul 2009) | 1 line
  
  DS: Started work on a new build system for the  Nintendo DS port, based on configure (and thus suitable for buildbot). Currently only the ARM7 part is 'done'
........
  r42940 | lordhoto | 2009-07-31 05:43:36 +1000 (Fri, 31 Jul 2009) | 1 line
  
  Change code to use our fractional utilities.
........
  r42941 | lordhoto | 2009-07-31 05:43:53 +1000 (Fri, 31 Jul 2009) | 1 line
  
  Fix Browser dialog name.
........
  r42943 | fingolfin | 2009-07-31 06:46:43 +1000 (Fri, 31 Jul 2009) | 1 line
  
  Overhauled the credits: Retired members are now (partially) back to their old sections, to make sure people really see all people who contribute to an engine/backend. Also added&fixed some entries, and moved the FreeSCI section
........
  r42946 | fingolfin | 2009-07-31 06:58:32 +1000 (Fri, 31 Jul 2009) | 1 line
  
  Changed 10rdH070's nick back to LordHoto, and added Hkz to the credits
........
  r42947 | fingolfin | 2009-07-31 07:04:46 +1000 (Fri, 31 Jul 2009) | 1 line
  
  Added Strangerke to credits, and moved wjp from Gob to SCI on his request
........
  r42950 | fingolfin | 2009-07-31 07:45:09 +1000 (Fri, 31 Jul 2009) | 1 line
  
  Patch #2828669: CRUISE: Fix cruise compilation with mingw32ce toolchain
........
  r42951 | fingolfin | 2009-07-31 07:56:04 +1000 (Fri, 31 Jul 2009) | 1 line
  
  SCUMM: Properly detect & distinguish the three FM-TOWNS double-demos
........
  r42952 | fingolfin | 2009-07-31 07:56:18 +1000 (Fri, 31 Jul 2009) | 1 line
  
  cleanup
........
  r42953 | tanoku | 2009-07-31 09:42:12 +1000 (Fri, 31 Jul 2009) | 2 lines
  
  Fixed corrupted theme files.
........
  r42955 | tanoku | 2009-07-31 10:22:46 +1000 (Fri, 31 Jul 2009) | 2 lines
  
  Prevent high-resolution layouts to be loaded on low resolutions.
........
  r42958 | peres001 | 2009-07-31 22:39:31 +1000 (Fri, 31 Jul 2009) | 1 line
  
  When renaming old savefiles for Nippon Safes, don't assert if a file that matches the pattern game.* and is not a savefile is found in the savepath.
........
  r42959 | djwillis | 2009-07-31 23:01:28 +1000 (Fri, 31 Jul 2009) | 1 line
  
  GP2X: Clean up README-GP2X and remove HTML version of it from SVN (no one ever reads it and the WiKi is more upto date).
........
  r42964 | djwillis | 2009-08-01 03:10:20 +1000 (Sat, 01 Aug 2009) | 1 line
  
  GP2XWiz: Small cleanup of render code to slave as much of loadGFXMode() code back to the OSystem_SDL::loadGFXMode(). version. Also update README-GP2XWIZ.
........
  r42965 | dreammaster | 2009-08-01 09:27:19 +1000 (Sat, 01 Aug 2009) | 1 line
  
  Fix bug with the event loop that was discarding pending events rather than leaving them to be processed in the following frame
........
  r42973 | buddha_ | 2009-08-01 19:53:21 +1000 (Sat, 01 Aug 2009) | 1 line
  
  Remove obsolete comment from Cine::Palette::saturatedAddColor.
........
  r42974 | eriktorbjorn | 2009-08-02 01:42:42 +1000 (Sun, 02 Aug 2009) | 4 lines
  
  Added some more information to the "Compressed sound ... invalid" error. Maybe
  this will help in determining what's causing bug #2830364. (It sounds like a
  bad data file, but who knows...)
........
  r42995 | drmccoy | 2009-08-02 20:40:27 +1000 (Sun, 02 Aug 2009) | 1 line
  
  When ESCing videos, seek to the last frame that was meant to be played. Fixes graphical glitches (bug #2830985) and crashes (bug #2830988)
........
  r42996 | drmccoy | 2009-08-02 20:40:48 +1000 (Sun, 02 Aug 2009) | 1 line
  
  Removing _frameWaitLag. It broke normal animation speed in pre-v4 games and didn't even do what it was supposed to in v4+ games anyway. (bug #2830985)
........
  r42999 | eriktorbjorn | 2009-08-02 22:49:57 +1000 (Sun, 02 Aug 2009) | 2 lines
  
  Show a message if saving or loading a game fails.
........
  r43001 | drmccoy | 2009-08-02 23:54:06 +1000 (Sun, 02 Aug 2009) | 1 line
  
  Show a message if saving or loading a game fails.
........
  r43003 | knakos | 2009-08-03 03:34:57 +1000 (Mon, 03 Aug 2009) | 1 line
  
  rework mixer (re)init. fixes bug #2694722
........
  r43005 | joostp | 2009-08-03 03:58:48 +1000 (Mon, 03 Aug 2009) | 1 line
  
  align memory handles to sizeof(void*) instead of 4 (which is just good enough for 32-bit) - this fixes DW2 on 64-bit systems that require alignment
........
  r43007 | djwillis | 2009-08-03 05:46:18 +1000 (Mon, 03 Aug 2009) | 1 line
  
  GP2XWiz: More cleanup of render code and fix silly screen update bug when reverting to a 320*2xx game from a 640*4xx game. Dirty rect code for downscaled images still needs work.
........
  r43008 | knakos | 2009-08-03 05:50:24 +1000 (Mon, 03 Aug 2009) | 1 line
  
  clean up and fix vga aspect scaler routines
........
  r43010 | djwillis | 2009-08-03 07:18:25 +1000 (Mon, 03 Aug 2009) | 1 line
  
  GP2XWiz/SDL: Fix 2 small typos.
........
  r43011 | joostp | 2009-08-03 07:22:46 +1000 (Mon, 03 Aug 2009) | 1 line
  
  Fix AGI crashes on 64-bit systems that require alignment
........
  r43013 | joostp | 2009-08-03 07:44:21 +1000 (Mon, 03 Aug 2009) | 1 line
  
  Make MemoryReAlloc() 64-bit alignment safe
........
  r43020 | scott_t | 2009-08-03 11:19:36 +1000 (Mon, 03 Aug 2009) | 1 line
  
  T7G: Fix bug #2831046 where save names not shown after loading a save from launcher
........
  r43023 | dreammaster | 2009-08-03 19:28:06 +1000 (Mon, 03 Aug 2009) | 1 line
  
  Bugfix to correctly reset the music tempo when loading a savegame
........
  r43025 | buddha_ | 2009-08-04 03:18:18 +1000 (Tue, 04 Aug 2009) | 6 lines
  
  Fix for bug #2828333 (AGI: KQ1: Greensleeves always plays):
  - Made all savegame loading in AGI do the same pre-load and post-load stuff.
  - Moved load/saveGameState from AgiBase to AgiEngine
  - Added rudimentary error handling to load/saveGameState
  - Incidentally also fixes the hanging note from bug #2798797.
........
  r43027 | buddha_ | 2009-08-04 03:52:07 +1000 (Tue, 04 Aug 2009) | 8 lines
  
  Fix for #2824798 (FW: crash when clicking "load" in the GUI):
  - Fixed CineMetaEngine::listSaves(const char *target) which was broken.
  - Also added explicit initialization of savegame descriptions to
    empty strings for safety reasons (e.g. arrays on stack aren't
    initialized to zero).
  - Added explicit trailing zero setting to savegame descriptions
    (Previously using GMM you could write a description of length >= 20
    that had no trailing zero when written to description file (e.g. fw.dir)).
........
  r43029 | djwillis | 2009-08-04 04:38:46 +1000 (Tue, 04 Aug 2009) | 1 line
  
  GP2XWiz: Fix bug with downscaled cursors.
........
  r43033 | knakos | 2009-08-04 22:02:07 +1000 (Tue, 04 Aug 2009) | 1 line
  
  add bindings for cruise engine
........
  r43035 | knakos | 2009-08-04 22:19:30 +1000 (Tue, 04 Aug 2009) | 1 line
  
  support made engine
........
  r43037 | knakos | 2009-08-04 22:39:33 +1000 (Tue, 04 Aug 2009) | 1 line
  
  update Makefile
........
  r43039 | knakos | 2009-08-04 22:51:17 +1000 (Tue, 04 Aug 2009) | 1 line
  
  update readme (draft)
........
  r43041 | knakos | 2009-08-04 23:17:33 +1000 (Tue, 04 Aug 2009) | 1 line
  
  commit slightly modified patch #2828646: WINCE: Integrate Windows CE with the master build system
........
  r43042 | thebluegr | 2009-08-05 00:20:38 +1000 (Wed, 05 Aug 2009) | 1 line
  
  Cleaned up the MSVC project files of the gob engine
........
  r43043 | knakos | 2009-08-05 00:53:43 +1000 (Wed, 05 Aug 2009) | 1 line
  
  got rid of superfluous semicolons
........
  r43048 | thebluegr | 2009-08-05 03:22:18 +1000 (Wed, 05 Aug 2009) | 1 line
  
  Removed the superfluous VGA buffer, replacing it with direct writes to the video buffer
........
  r43056 | thebluegr | 2009-08-05 07:56:59 +1000 (Wed, 05 Aug 2009) | 1 line
  
  Cleanup
........

svn-id: r43062
2009-08-05 02:26:51 +00:00

2317 lines
57 KiB
Bash
Executable File

#!/bin/sh
#
# configure -- custom configure script for ScummVM.
#
# ScummVM is the legal property of its developers, whose names
# are too numerous to list here. Please refer to the COPYRIGHT
# file distributed with this source distribution.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
# $URL: https://scummvm.svn.sourceforge.net/svnroot/scummvm/scummvm/trunk/base/main.cpp $
# $Id$
# Save the current environment variables for next runs
SAVED_CONFIGFLAGS=$@
SAVED_LDFLAGS=$LDFLAGS
SAVED_CXX=$CXX
SAVED_CXXFLAGS=$CXXFLAGS
SAVED_CPPFLAGS=$CPPFLAGS
# Use environment vars if set
CXXFLAGS="$CXXFLAGS $CPPFLAGS"
# Backslashes into forward slashes:
# The following OS/2 specific code is performed to deal with handling of backslashes by ksh.
# Borrowed from the Sane configure script
if test "$ac_emxsupport" != "no" -a "$ac_emxsupport" != "NO"; then
ac_save_IFS="$IFS"
IFS="\\"
ac_TEMP_PATH=
for ac_dir in $PATH; do
IFS=$ac_save_IFS
if test -z "$ac_TEMP_PATH"; then
ac_TEMP_PATH="$ac_dir"
else
ac_TEMP_PATH="$ac_TEMP_PATH/$ac_dir"
fi
done
PATH="$ac_TEMP_PATH"
export PATH
unset ac_TEMP_PATH
fi
# Add an engine: id name build subengines
add_engine() {
_engines="${_engines} ${1}"
eval _engine_${1}_name='${2}'
eval _engine_${1}_build='${3}'
eval _engine_${1}_subengines='${4}'
for sub in ${4}; do
eval _engine_${sub}_sub=yes
done
}
add_engine scumm "SCUMM" yes "scumm_7_8 he"
add_engine scumm_7_8 "v7 & v8 games" yes
add_engine he "HE71+ games" yes
add_engine agi "AGI" yes
add_engine agos "AGOS" yes "pn"
add_engine pn "Personal Nightmare" no
add_engine cine "Cinematique evo 1" yes
add_engine cruise "Cinematique evo 2" yes
add_engine drascula "Drascula: The Vampire Strikes Back" yes
add_engine gob "Gobli*ns" yes
add_engine groovie "Groovie" yes
add_engine igor "Igor: Objective Uikokahonia" no
add_engine kyra "Legend of Kyrandia" yes "lol"
add_engine lol "Lands of Lore" no
add_engine lure "Lure of the Temptress" yes
add_engine m4 "M4/MADS" no
add_engine made "MADE" yes
add_engine parallaction "Parallaction" yes
add_engine queen "Flight of the Amazon Queen" yes
add_engine saga "SAGA" yes "ihnm saga2"
add_engine ihnm "IHNM" yes
add_engine saga2 "SAGA 2 games" no
add_engine sci "SCI" yes "sci32"
add_engine sci32 "SCI32 games" no
add_engine sky "Beneath a Steel Sky" yes
add_engine sword1 "Broken Sword 1" yes
add_engine sword2 "Broken Sword 2" yes
add_engine tinsel "Tinsel" yes
add_engine touche "Touche: The Adventures of the Fifth Musketeer" yes
add_engine tucker "Bud Tucker in Double Trouble" yes
#
# Default settings
#
# Default lib behaviour yes/no/auto
_vorbis=auto
_tremor=auto
_flac=auto
_mad=auto
_alsa=auto
_zlib=auto
_mpeg2=no
_fluidsynth=auto
_16bit=yes
_readline=auto
# Default option behaviour yes/no
_text_console=no
_mt32emu=yes
_build_hq_scalers=yes
_build_scalers=yes
# Default vkeybd/keymapper options
_vkeybd=no
_keymapper=no
# Default platform settings
_backend=sdl
_endian=unknown
_need_memalign=no
_have_x86=no
_dynamic_modules=no
_plugins_default=static
_nasm=auto
# Default commands
_ranlib=ranlib
_strip=strip
_ar="ar cru"
_windres=windres
_win32path="C:/scummvm"
_aos4path="Games:ScummVM"
_staticlibpath=/sw
_sdlconfig=sdl-config
_sdlpath="$PATH"
_nasmpath="$PATH"
NASMFLAGS=""
NASM=""
_prefix=/usr/local
# For cross compiling
_host=""
_host_cpu=""
_host_vendor=""
_host_os=""
_host_alias=""
_srcdir=`dirname $0`
# Determine a tmp file name, using mktemp(1) when available.
if type mktemp > /dev/null 2>&1 ; then
TMPO=`mktemp /tmp/scummvm-conf.XXXXXXXXXX`
else
TMPO=./scummvm-conf
fi
TMPC=${TMPO}.cpp
TMPLOG=config.log
cc_check() {
echo >> "$TMPLOG"
cat "$TMPC" >> "$TMPLOG"
echo >> "$TMPLOG"
echo "$CXX $TMPC -o $TMPO$HOSTEXEEXT $@" >> "$TMPLOG"
rm -f "$TMPO$HOSTEXEEXT"
( $CXX $CXXFLAGS "$TMPC" -o "$TMPO$HOSTEXEEXT" "$@" ) >> "$TMPLOG" 2>&1
TMP="$?"
echo >> "$TMPLOG"
return "$TMP"
}
#
# Function to provide echo -n for bourne shells that don't have it
#
echo_n() {
printf "$@"
}
echocheck() {
echo_n "Checking for $@... "
}
# Add a line of data to config.mk.
add_line_to_config_mk() {
_config_mk_data="$_config_mk_data"'
'"$1"
}
# Add a line of data to config.h.
add_line_to_config_h() {
_config_h_data="$_config_h_data"'
'"$1"
}
add_to_config_h_if_yes() {
if test "$1" = yes ; then
add_line_to_config_h "$2"
else
add_line_to_config_h "/* $2 */"
fi
}
# Conditionally add a line of data to config.mk. Takes two parameters:
# The first one can be set to 'no' to "comment out" the line, i.e.
# make it ineffective, use 'yes' otherwise.
# The second param is the line to insert.
add_to_config_mk_if_yes() {
if test "$1" = yes ; then
add_line_to_config_mk "$2"
else
add_line_to_config_mk "# $2"
fi
}
# Conditionally add a line of data to config.mk. Takes two parameters:
# The first one can be set to 'yes' to "comment out" the line, i.e.
# make it ineffective, use 'no' otherwise.
# The second param is the line to insert.
add_to_config_mk_if_no() {
if test "$1" = no ; then
add_line_to_config_mk "$2"
else
add_line_to_config_mk "# $2"
fi
}
#
# Determine sdl-config
#
# TODO: small bit of code to test sdl useability
find_sdlconfig() {
echo_n "Looking for sdl-config... "
sdlconfigs="$_sdlconfig:sdl-config:sdl11-config:sdl12-config"
_sdlconfig=
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="$SEPARATOR"
for path_dir in $_sdlpath; do
#reset separator to parse sdlconfigs
IFS=":"
for sdlconfig in $sdlconfigs; do
if test -f "$path_dir/$sdlconfig" ; then
_sdlconfig="$path_dir/$sdlconfig"
echo $_sdlconfig
# Save the prefix
_sdlpath=$path_dir
if test `basename $path_dir` = bin ; then
_sdlpath=`dirname $path_dir`
fi
# break at first sdl-config found in path
break 2
fi
done
done
IFS="$ac_save_ifs"
if test -z "$_sdlconfig"; then
echo "none found!"
exit 1
fi
}
#
# Determine extension used for executables
#
get_system_exe_extension() {
case $1 in
mingw* | *os2-emx | wince)
_exeext=".exe"
;;
arm-riscos)
_exeext=",ff8"
;;
gp2xwiz-linux)
_exeext=".wiz"
;;
gp2x-linux)
_exeext=".gp2x"
;;
dreamcast | wii | gamecube | nds | psp)
_exeext=".elf"
;;
*)
_exeext=""
;;
esac
}
#
# Generic options functions
#
# Show the configure help line for an option
option_help() {
tmpopt=`echo $1 | sed 's/_/-/g'`
option=`echo "--${tmpopt} " | sed "s/\(.\{23\}\).*/\1/"`
echo " ${option} ${2}"
}
# Show an error about an unknown option
option_error() {
echo "error: unrecognised option: $ac_option
Try \`$0 --help' for more information." >&2
exit 1
}
#
# Engine handling functions
#
# Get the name of the engine
get_engine_name() {
eval echo \$_engine_$1_name
}
# Will this engine be built?
get_engine_build() {
eval echo \$_engine_$1_build
}
# Get the subengines
get_engine_subengines() {
eval echo \$_engine_$1_subengines
}
# Ask if this is a subengine
get_engine_sub() {
sub=`eval echo \\$_engine_$1_sub`
if test -z "$sub" ; then
sub=no
fi
echo $sub
}
# Enable *all* engines
engine_enable_all() {
for engine in $_engines; do
eval _engine_${engine}_build=yes
done
}
# Disable *all* engines
engine_disable_all() {
for engine in $_engines; do
eval _engine_${engine}_build=no
done
}
# Enable the given engine
engine_enable() {
# Get the parameter
if ( echo $1 | grep '=' ) 2> /dev/null > /dev/null ; then
eng=`echo $1 | cut -d '=' -f 1`
opt=`echo $1 | cut -d '=' -f 2`
else
eng=$1
opt=yes
fi
engine=`echo $eng | sed 's/-/_/g'`
# Filter the parameter for the subengines
if test "`get_engine_sub ${engine}`" != "no" -a "$opt" != "yes" ; then
option_error
return
fi
if test "$opt" = "static" -o "$opt" = "dynamic" -o "$opt" = "yes" ; then
if test "`get_engine_name ${engine}`" != "" ; then
eval _engine_${engine}_build=$opt
else
option_error
fi
else
option_error
fi
}
# Disable the given engine
engine_disable() {
# Filter malformed options
if ( echo $1 | grep '=' ) 2> /dev/null > /dev/null ; then
option_error
return
fi
engine=`echo $1 | sed 's/-/_/g'`
if test "`get_engine_name ${engine}`" != "" ; then
eval _engine_${engine}_build=no
else
option_error
fi
}
# Show the configure help line for a given engine
show_engine_help() {
if test `get_engine_build $1` = yes ; then
option="disable"
do="don't "
else
option="enable"
do=""
fi
name=`get_engine_name $1`
option_help ${option}-${1} "${do}build the ${name} engine"
for sub in `get_engine_subengines $1`; do
show_subengine_help $sub $1
done
}
# Show the configure help line for a given subengine
show_subengine_help() {
if test `get_engine_build $1` = yes ; then
option="disable"
do="exclude"
else
option="enable"
do="include"
fi
name=`get_engine_name $1`
parent=`get_engine_name $2`
option_help ${option}-${1} "${do} the ${name} in ${parent} engine"
}
# Prepare the strings about the engines to build
prepare_engine_build_strings() {
string=`get_engine_build_string $1 static`
if test -n "$string" ; then
_engines_built_static="${_engines_built_static}#$string@"
fi
string=`get_engine_build_string $1 dynamic`
if test -n "$string" ; then
_engines_built_dynamic="${_engines_built_dynamic}#$string@"
fi
string=`get_engine_build_string $1 no`
if test -n "$string" ; then
_engines_skipped="${_engines_skipped}#$string@"
fi
}
# Get the string about building an engine
get_engine_build_string() {
engine_string=""
engine_build=`get_engine_build $1`
show=no
# Check if the current engine should be shown for the current status
if test $engine_build = $2 ; then
show=yes
else
# Test for disabled sub-engines
if test $2 = no ; then
for subeng in `get_engine_subengines $1` ; do
if test `get_engine_build $subeng` = no ; then
engine_build=no
show=yes
fi
done
fi
fi
# Convert static/dynamic to yes to ease the check of subengines
if test $engine_build != no ; then
engine_build=yes
fi
# The engine should be shown, build the string
if test $show = yes ; then
build_string_func=get_${1}_build_string
if ( type $build_string_func | grep function ) 2> /dev/null > /dev/null ; then
engine_string=`$build_string_func $1 $engine_build`
else
engine_string=`get_subengines_build_string $1 $engine_build`
fi
engine_string="`get_engine_name $1` $engine_string"
fi
echo $engine_string
}
# Get the string about building subengines
get_subengines_build_string() {
all=yes
subengine_string=$3
for subeng in `get_engine_subengines $1` ; do
if test `get_engine_build $subeng` = $2 ; then
subengine_string="$subengine_string [`get_engine_name $subeng`]"
else
all=no
fi
done
if test $2 != no ; then
if test -n "$subengine_string" ; then
if test $all = yes ; then
subengine_string="[all games]"
fi
fi
fi
echo $subengine_string
}
# Engine specific build strings
get_scumm_build_string() {
if test `get_engine_build $1` != no ; then
if test $2 != no ; then
base="[v0-v6 games]"
fi
get_subengines_build_string $1 $2 "$base"
fi
}
get_saga_build_string() {
if test `get_engine_build $1` != no ; then
if test $2 != no ; then
base="[ITE]"
fi
get_subengines_build_string $1 $2 "$base"
fi
}
#
# Greet user
#
echo "Running ScummVM configure..."
echo "Configure run on" `date` > $TMPLOG
#
# Check any parameters we received
#
# TODO:
# * Change --disable-mad / --enable-mad to the way it's done in autoconf:
# That is, --without-mad / --with-mad=/prefix/to/mad. Useful for people
# who have Mad/Vorbis/ALSA installed in a non-standard locations.
#
for parm in "$@" ; do
if test "$parm" = "--help" || test "$parm" = "-help" || test "$parm" = "-h" ; then
for engine in $_engines; do
if test `get_engine_sub $engine` = no ; then
engines_help="$engines_help`show_engine_help $engine`
"
fi
done
cat << EOF
Usage: $0 [OPTIONS]...
Configuration:
-h, --help display this help and exit
--backend=BACKEND backend to build (sdl, dc, gp2x, gp2xwiz, iphone, morphos, nds, psp, wii, wince, null) [sdl]
Installation directories:
--prefix=DIR use this prefix for installing ScummVM [/usr/local]
--bindir=DIR directory to install the scummvm binary in [PREFIX/bin]
--mandir=DIR directory to install the manpage in [PREFIX/share/man]
--datadir=DIR directory to install the data files in [PREFIX/share]
--libdir=DIR directory to install the plugins in [PREFIX/lib]
Special configuration feature:
--host=HOST cross-compile to target HOST (arm-linux, ...)
special targets: linupy for Yopy PDA
dreamcast for Sega Dreamcast
wii for Nintendo Wii
gamecube for Nintendo Gamecube
nds for Nintendo DS
iphone for Apple iPhone
wince for Windows CE
psp for PlayStation Portable
Optional Features:
--disable-debug disable building with debugging symbols
--enable-Werror treat warnings as errors
--enable-all-engines enable all engines
--disable-all-engines disable all engines
$engines_help
--enable-plugins enable the support for dynamic plugins
--default-dynamic make plugins dynamic by default
--disable-mt32emu don't enable the integrated MT-32 emulator
--disable-hq-scalers exclude HQ2x and HQ3x scalers
--disable-scalers exclude scalers
--enable-text-console use text console instead of graphical console
Optional Libraries:
--with-alsa-prefix=DIR Prefix where alsa is installed (optional)
--disable-alsa disable ALSA midi sound support [autodetect]
--with-ogg-prefix=DIR Prefix where libogg is installed (optional)
--with-vorbis-prefix=DIR Prefix where libvorbis is installed (optional)
--disable-vorbis disable Ogg Vorbis support [autodetect]
--with-tremor-prefix=DIR Prefix where tremor is installed (optional)
--disable-tremor disable tremor support [autodetect]
--with-mad-prefix=DIR Prefix where libmad is installed (optional)
--disable-mad disable libmad (MP3) support [autodetect]
--with-flac-prefix=DIR Prefix where libFLAC is installed (optional)
--disable-flac disable FLAC support [autodetect]
--with-zlib-prefix=DIR Prefix where zlib is installed (optional)
--disable-zlib disable zlib (compression) support [autodetect]
--with-mpeg2-prefix=DIR Prefix where libmpeg2 is installed (optional)
--enable-mpeg2 enable mpeg2 codec for cutscenes [no]
--with-fluidsynth-prefix=DIR Prefix where libfluidsynth is installed (optional)
--disable-fluidsynth disable fluidsynth MIDI driver [autodetect]
--with-sdl-prefix=DIR Prefix where the sdl-config script is installed (optional)
--with-nasm-prefix=DIR Prefix where nasm executable is installed (optional)
--disable-nasm disable assembly language optimizations [autodetect]
--with-readline-prefix=DIR Prefix where readline is installed (optional)
--disable-readline disable readline support in text console [autodetect]
Some influential environment variables:
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
nonstandard directory <lib dir>
CXX C++ compiler command
CXXFLAGS C++ compiler flags
CPPFLAGS C++ preprocessor flags, e.g. -I<include dir> if you have
headers in a nonstandard directory <include dir>
EOF
exit 0
fi
done # for parm in ...
DEBFLAGS="-g"
for ac_option in $@; do
case "$ac_option" in
--enable-16bit) _16bit=yes ;;
--disable-16bit) _16bit=no ;;
--disable-hq-scalers) _build_hq_scalers=no ;;
--disable-scalers) _build_scalers=no ;;
--enable-alsa) _alsa=yes ;;
--disable-alsa) _alsa=no ;;
--enable-vorbis) _vorbis=yes ;;
--disable-vorbis) _vorbis=no ;;
--enable-tremor) _tremor=yes ;;
--disable-tremor) _tremor=no ;;
--enable-flac) _flac=yes ;;
--disable-flac) _flac=no ;;
--enable-mad) _mad=yes ;;
--disable-mad) _mad=no ;;
--enable-zlib) _zlib=yes ;;
--disable-zlib) _zlib=no ;;
--enable-nasm) _nasm=yes ;;
--disable-nasm) _nasm=no ;;
--enable-mpeg2) _mpeg2=yes ;;
--disable-fluidsynth) _fluidsynth=no ;;
--enable-readline) _readline=yes ;;
--disable-readline) _readline=no ;;
--enable-plugins) _dynamic_modules=yes ;;
--default-dynamic) _plugins_default=dynamic ;;
--enable-mt32emu) _mt32emu=yes ;;
--disable-mt32emu) _mt32emu=no ;;
--enable-vkeybd) _vkeybd=yes ;;
--disable-vkeybd) _vkeybd=no ;;
--enable-keymapper) _keymapper=yes ;;
--disable-keymapper) _keymapper=no ;;
--enable-text-console) _text_console=yes ;;
--disable-text-console) _text_console=no ;;
--with-fluidsynth-prefix=*)
arg=`echo $ac_option | cut -d '=' -f 2`
FLUIDSYNTH_CFLAGS="-I$arg/include"
FLUIDSYNTH_LIBS="-L$arg/lib"
;;
--with-mpeg2-prefix=*)
arg=`echo $ac_option | cut -d '=' -f 2`
MPEG2_CFLAGS="-I$arg/include"
MPEG2_LIBS="-L$arg/lib"
;;
--with-alsa-prefix=*)
arg=`echo $ac_option | cut -d '=' -f 2`
ALSA_CFLAGS="-I$arg/include"
ALSA_LIBS="-L$arg/lib"
;;
--with-ogg-prefix=*)
arg=`echo $ac_option | cut -d '=' -f 2`
OGG_CFLAGS="-I$arg/include"
OGG_LIBS="-L$arg/lib"
;;
--with-vorbis-prefix=*)
arg=`echo $ac_option | cut -d '=' -f 2`
VORBIS_CFLAGS="-I$arg/include"
VORBIS_LIBS="-L$arg/lib"
;;
--with-tremor-prefix=*)
arg=`echo $ac_option | cut -d '=' -f 2`
TREMOR_CFLAGS="-I$arg/include"
TREMOR_LIBS="-L$arg/lib"
;;
--with-flac-prefix=*)
arg=`echo $ac_option | cut -d '=' -f 2`
FLAC_CFLAGS="-I$arg/include"
FLAC_LIBS="-L$arg/lib"
;;
--with-mad-prefix=*)
arg=`echo $ac_option | cut -d '=' -f 2`
MAD_CFLAGS="-I$arg/include"
MAD_LIBS="-L$arg/lib"
;;
--with-zlib-prefix=*)
arg=`echo $ac_option | cut -d '=' -f 2`
ZLIB_CFLAGS="-I$arg/include"
ZLIB_LIBS="-L$arg/lib"
;;
--with-readline-prefix=*)
arg=`echo $ac_option | cut -d '=' -f 2`
READLINE_CFLAGS="-I$arg/include"
READLINE_LIBS="-L$arg/lib"
;;
--backend=*)
_backend=`echo $ac_option | cut -d '=' -f 2`
;;
--enable-debug)
# debug is enabled by default
;;
--disable-debug)
DEBFLAGS=""
;;
--enable-Werror)
CXXFLAGS="$CXXFLAGS -Werror"
;;
--enable-release)
DEBFLAGS="-O2 -Wuninitialized"
;;
--enable-profiling)
CXXFLAGS="$CXXFLAGS -pg"
LDFLAGS="$LDFLAGS -pg"
;;
--with-sdl-prefix=*)
arg=`echo $ac_option | cut -d '=' -f 2`
_sdlpath="$arg:$arg/bin"
;;
--with-nasm-prefix=*)
arg=`echo $ac_option | cut -d '=' -f 2`
_nasmpath="$arg:$arg/bin"
;;
--with-staticlib-prefix=*)
_staticlibpath=`echo $ac_option | cut -d '=' -f 2`
;;
--host=*)
_host=`echo $ac_option | cut -d '=' -f 2`
;;
--prefix=*)
_prefix=`echo $ac_option | cut -d '=' -f 2`
;;
--bindir=*)
_bindir=`echo $ac_option | cut -d '=' -f 2`
;;
--mandir=*)
_mandir=`echo $ac_option | cut -d '=' -f 2`
;;
--datadir=*)
_datadir=`echo $ac_option | cut -d '=' -f 2`
;;
--libdir=*)
_libdir=`echo $ac_option | cut -d '=' -f 2`
;;
--enable-all-engines)
engine_enable_all
;;
--disable-all-engines)
engine_disable_all
;;
--enable-*)
engine_enable `echo $ac_option | cut -d '-' -f 4-`
;;
--disable-*)
engine_disable `echo $ac_option | cut -d '-' -f 4-`
;;
*)
option_error
;;
esac;
done;
CXXFLAGS="$CXXFLAGS $DEBFLAGS"
guessed_host=`$_srcdir/config.guess`
get_system_exe_extension $guessed_host
NATIVEEXEEXT=$_exeext
case $_host in
linupy)
_host_os=linux
_host_cpu=arm
;;
arm-riscos)
_host_os=riscos
_host_cpu=arm
;;
ppc-amigaos)
_host_os=amigaos
_host_cpu=ppc
;;
gp2xwiz)
_host_os=gp2xwiz-linux
_host_cpu=arm
_host_alias=arm-open2x-linux
;;
gp2x)
_host_os=gp2x-linux
_host_cpu=arm
_host_alias=arm-open2x-linux
;;
i586-mingw32msvc)
_host_os=mingw32msvc
_host_cpu=i586
;;
iphone)
_host_os=iphone
_host_cpu=arm
_host_alias=arm-apple-darwin9
;;
wince)
_host_os=wince
_host_cpu=arm
_host_alias=arm-wince-mingw32ce
;;
neuros)
_host_os=linux
_host_cpu=arm
;;
dreamcast)
_host_os=dreamcast
_host_cpu=sh
_host_alias=sh-elf
CXXFLAGS="$CXXFLAGS -ml -m4-single-only"
LDFLAGS="$LDFLAGS -ml -m4-single-only"
;;
wii)
_host_os=wii
_host_cpu=ppc
_host_alias=powerpc-gekko
;;
gamecube)
_host_os=gamecube
_host_cpu=ppc
_host_alias=powerpc-gekko
;;
nds)
_host_os=nds
_host_cpu=arm
_host_alias=arm-eabi
;;
psp)
_host_os=psp
_host_cpu=mipsallegrexel
_host_alias=psp
LDFLAGS="$LDFLAGS -L$PSPDEV/psp/sdk/lib -specs=$_srcdir/backends/platform/psp/psp.spec"
;;
*)
if test -n "$_host"; then
guessed_host=`$_srcdir/config.sub $_host`
fi
_host_cpu=`echo $guessed_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
_host_vendor=`echo $guessed_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
_host_os=`echo $guessed_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
;;
esac
if test -z "$_host_alias"; then
_host_alias="$_host_cpu-$_host_os"
fi
#
# Determine extension used for executables
#
get_system_exe_extension $_host_os
HOSTEXEEXT=$_exeext
#
# Determine separator used for $PATH
#
case $_host_os in
os2-emx* )
SEPARATOR=";"
;;
* )
SEPARATOR=":"
;;
esac
#
# Platform specific sanity checks
#
case $_host_os in
wii | gamecube | nds)
if test -z "$DEVKITPRO"; then
echo "Please set DEVKITPRO in your environment. export DEVKITPRO=<path to devkitPRO>"
exit 1
fi
;;
psp)
if test -z "$PSPDEV"; then
echo "Please set PSPDEV in your environment. export PSPDEV=<path to psp toolchain>"
exit 1
fi
;;
*)
;;
esac
#
# Determine the C++ compiler
#
echo_n "Looking for C++ compiler... "
# Check whether the given command is a working C++ compiler
test_compiler() {
cat <<EOF >tmp_cxx_compiler.cpp
class Foo { int a; };
int main(int argc, char **argv) {
Foo *a = new Foo(); delete a; return 0;
}
EOF
if test -n "$_host"; then
# In cross-compiling mode, we cannot run the result
eval "$1 $CXXFLAGS $LDFLAGS -o tmp_cxx_compiler$HOSTEXEEXT tmp_cxx_compiler.cpp" 2> /dev/null && rm -f tmp_cxx_compiler$HOSTEXEEXT tmp_cxx_compiler.cpp
else
eval "$1 $CXXFLAGS $LDFLAGS -o tmp_cxx_compiler$HOSTEXEEXT tmp_cxx_compiler.cpp" 2> /dev/null && eval "./tmp_cxx_compiler$HOSTEXEEXT 2> /dev/null" && rm -rf tmp_cxx_compiler$HOSTEXEEXT tmp_cxx_compiler.dSYM tmp_cxx_compiler.cpp
fi
}
# Prepare a list of candidates for the C++ compiler
if test -n "$CXX" && test_compiler "$CXX"; then
# Use the compiler specified in CXX
echo $CXX
else
if test -n "$_host"; then
compilers="$_host_alias-g++ $_host_alias-c++ $_host-g++ $_host-c++"
else
compilers="g++ c++"
fi
# Iterate over all candidates, pick the first working one
CXX=
for compiler in $compilers; do
if test_compiler $compiler; then
CXX=$compiler
echo $CXX
break
fi
done
fi
if test -z "$CXX"; then
echo "none found!"
exit 1
fi
#
# Determine the compiler version
#
echocheck "compiler version"
cxx_version=`( $CXX -dumpversion ) 2>&1`
if test "$?" -gt 0; then
cxx_version="not found"
fi
case $cxx_version in
2.95.[2-9]|2.95.[2-9][-.]*|3.[0-9]|3.[0-9].[0-9]|3.[0-9].[0-9][-.]*|4.[0-9]|4.[0-9].[0-9]|4.[0-9].[0-9][-.]*)
_cxx_major=`echo $cxx_version | cut -d '.' -f 1`
_cxx_minor=`echo $cxx_version | cut -d '.' -f 2`
cxx_version="$cxx_version, ok"
cxx_verc_fail=no
;;
# whacky beos version strings
2.9-beos-991026*|2.9-beos-000224*)
_cxx_major=2
_cxx_minor=95
cxx_version="$cxx_version, ok"
cxx_verc_fail=no
;;
3_4)
_cxx_major=3
_cxx_minor=4
;;
'not found')
cxx_verc_fail=yes
;;
*)
cxx_version="$cxx_version, bad"
cxx_verc_fail=yes
;;
esac
echo "$cxx_version"
if test "$cxx_verc_fail" = yes ; then
echo
echo "The version of your compiler is not supported at this time"
echo "Please ensure you are using GCC >= 2.95"
exit 1
fi
#
# Check for endianness
#
echo_n "Checking endianness... "
cat <<EOF >tmp_endianness_check.cpp
short ascii_mm[] = { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
short ascii_ii[] = { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
void _ascii() { char* s = (char*) ascii_mm; s = (char*) ascii_ii; }
short ebcdic_ii[] = { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
short ebcdic_mm[] = { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
void _ebcdic() { char* s = (char*) ebcdic_mm; s = (char*) ebcdic_ii; }
int main() { _ascii (); _ebcdic (); return 0; }
EOF
$CXX $CXXFLAGS -c -o tmp_endianness_check.o tmp_endianness_check.cpp
if strings tmp_endianness_check.o | grep BIGenDianSyS >/dev/null; then
_endian=big
else
_endian=little
fi
echo $_endian;
rm -f tmp_endianness_check.o tmp_endianness_check.cpp
#
# Determine a data type with the given length
#
find_type_with_size() {
for datatype in int short char long unknown; do
cat <<EOF >tmp_find_type_with_size.cpp
typedef $datatype ac__type_sizeof_;
int main() {
static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) == $1)];
test_array [0] = 0;
return 0;
}
EOF
if $CXX $CXXFLAGS -c -o tmp_find_type_with_size$HOSTEXEEXT tmp_find_type_with_size.cpp 2>/dev/null ; then
break
else
if test "$datatype" = "unknown"; then
echo "couldn't find data type with $1 bytes"
exit 1
fi
continue
fi
done
rm -f tmp_find_type_with_size$HOSTEXEEXT tmp_find_type_with_size.cpp
echo $datatype
}
#
# Determine data type sizes
#
echo_n "Type with 1 byte... "
type_1_byte=`find_type_with_size 1`
TMP="$?"
echo "$type_1_byte"
test $TMP -eq 0 || exit 1 # check exit code of subshell
echo_n "Type with 2 bytes... "
type_2_byte=`find_type_with_size 2`
TMP="$?"
echo "$type_2_byte"
test $TMP -eq 0 || exit 1 # check exit code of subshell
echo_n "Type with 4 bytes... "
type_4_byte=`find_type_with_size 4`
TMP="$?"
echo "$type_4_byte"
test $TMP -eq 0 || exit 1 # check exit code of subshell
#
# Check whether we can use x86 asm routines
#
echo_n "Compiling for x86... "
case $_host_cpu in
i386|i486|i586|i686)
_have_x86=yes
;;
*)
_have_x86=no
;;
esac
echo "$_have_x86"
#
# Determine build settings
#
echo_n "Checking hosttype... "
echo $_host_os
case $_host_os in
linux* | uclinux* | openbsd* | netbsd* | bsd* | sunos* | hpux*)
DEFINES="$DEFINES -DUNIX"
;;
freebsd*)
DEFINES="$DEFINES -DUNIX"
LDFLAGS="$LDFLAGS -L/usr/local/lib"
CXXFLAGS="$CXXFLAGS -I/usr/local/include"
;;
beos*)
DEFINES="$DEFINES -DUNIX -DSYSTEM_NOT_SUPPORTING_D_TYPE"
# Needs -lbind -lsocket for the timidity MIDI driver
LDFLAGS="-L/boot/home/config/lib"
CFLAGS="-I/boot/home/config/include"
CXXFLAGS="$CXXFLAGS -fhuge-objects"
LIBS="$LIBS -lbind -lsocket"
type_1_byte='char'
type_2_byte='short'
type_4_byte='long'
;;
haiku*)
DEFINES="$DEFINES -DUNIX -DSYSTEM_NOT_SUPPORTING_D_TYPE"
# Needs -lnetwork for the timidity MIDI driver
LIBS="$LIBS -lnetwork"
CXXFLAGS="$CXXFLAGS -fhuge-objects"
type_1_byte='char'
type_2_byte='short'
type_4_byte='long'
;;
solaris*)
DEFINES="$DEFINES -DUNIX -DSOLARIS -DSYSTEM_NOT_SUPPORTING_D_TYPE"
# Needs -lbind -lsocket for the timidity MIDI driver
LIBS="$LIBS -lnsl -lsocket"
;;
irix*)
DEFINES="$DEFINES -DUNIX -DIRIX -DSYSTEM_NOT_SUPPORTING_D_TYPE"
LIBS="$LIBS -lmd "
_ranlib=:
;;
darwin*)
DEFINES="$DEFINES -DUNIX -DMACOSX"
LIBS="$LIBS -framework QuickTime -framework AudioUnit -framework AudioToolbox -framework Carbon -framework CoreMIDI"
;;
mingw*)
DEFINES="$DEFINES -DWIN32 -D__USE_MINGW_ANSI_STDIO=0"
LIBS="$LIBS -lmingw32 -lwinmm"
OBJS="$OBJS scummvmico.o"
;;
cygwin*)
echo ERROR: Cygwin building is not supported by ScummVM anymore. Consider using MinGW.
exit 0
;;
os2-emx*)
DEFINES="$DEFINES -DUNIX"
;;
mint*)
DEFINES="$DEFINES -DUNIX -DSYSTEM_NOT_SUPPORTING_D_TYPE"
;;
amigaos*)
CXXFLAGS="$CXXFLAGS -mcrt=newlib -mstrict-align -mcpu=750 -mtune=7400"
LDFLAGS="$LDFLAGS -mcrt=newlib -use-dynld -Lsobjs:"
type_1_byte='char'
type_2_byte='short'
type_4_byte='long'
;;
dreamcast)
DEFINES="$DEFINES -D__DC__ -DNONSTANDARD_PORT"
;;
wii)
CXXFLAGS="$CXXFLAGS -Os -mrvl -mcpu=750 -meabi -mhard-float"
CXXFLAGS="$CXXFLAGS -ffunction-sections -fdata-sections -fmodulo-sched"
CXXFLAGS="$CXXFLAGS -I$DEVKITPRO/libogc/include"
LDFLAGS="$LDFLAGS -mrvl -mcpu=750 -L$DEVKITPRO/libogc/lib/wii"
;;
gamecube)
CXXFLAGS="$CXXFLAGS -Os -mogc -mcpu=750 -meabi -mhard-float"
CXXFLAGS="$CXXFLAGS -ffunction-sections -fdata-sections -fmodulo-sched"
CXXFLAGS="$CXXFLAGS -I$DEVKITPRO/libogc/include"
LDFLAGS="$LDFLAGS -mogc -mcpu=750 -L$DEVKITPRO/libogc/lib/cube"
;;
nds)
# TODO nds
;;
psp)
CXXFLAGS="$CXXFLAGS -O2 -G0 -I$PSPDEV/psp/sdk/include -D_PSP_FW_VERSION=150"
;;
wince)
CXXFLAGS="$CXXFLAGS -O3 -march=armv4 -mtune=xscale -D_WIN32_WCE=300 -D__ARM__ -D_ARM_ -DUNICODE -DFPM_DEFAULT -DNONSTANDARD_PORT"
CXXFLAGS="$CXXFLAGS -DWIN32 -Dcdecl= -D__cdecl__= -Wno-multichar"
;;
# given this is a shell script assume some type of unix
*)
echo "WARNING: could not establish system type, assuming unix like"
DEFINES="$DEFINES -DUNIX"
;;
esac
if test -n "$_host"; then
# Cross-compiling mode - add your target here if needed
case "$_host" in
linupy|arm-riscos)
echo "Cross-compiling to $_host, forcing endianness, alignment and type sizes"
DEFINES="$DEFINES -DUNIX"
_endian=little
_need_memalign=yes
add_line_to_config_h "#define LINUPY"
type_1_byte='char'
type_2_byte='short'
type_4_byte='int'
;;
arm-linux|arm*-linux-gnueabi|arm-*-linux|*-angstrom-linux)
echo "Cross-compiling to $_host, forcing endianness, alignment and type sizes"
DEFINES="$DEFINES -DUNIX -DUSE_ARM_SMUSH_ASM"
#not true for all ARM systems, but the interesting ones are all LE. Most (if not all) BE arm devices don't have a screen
_endian=little
_need_memalign=yes
type_1_byte='char'
type_2_byte='short'
type_4_byte='int'
add_line_to_config_mk 'USE_ARM_SOUND_ASM = 1'
add_line_to_config_mk 'USE_ARM_SMUSH_ASM = 1'
;;
bfin*)
_need_memalign=yes
;;
*darwin*)
_ranlib=$_host-ranlib
_strip=$_host-strip
;;
gp2xwiz)
echo "Cross-compiling to $_host, forcing endianness, alignment and type sizes"
DEFINES="$DEFINES -DUNIX -DGP2XWIZ -DNDEBUG -DUSE_ARM_SMUSH_ASM -DUSE_ARM_GFX_ASM -DUSE_ARM_SCALER_ASM -DUSE_ARM_COSTUME_ASM"
CXXFLAGS="$CXXFLAGS -mcpu=arm926ej-s -mtune=arm926ej-s"
LDFLAGS="$LDFLAGS"
_endian=little
_need_memalign=yes
type_1_byte='char'
type_2_byte='short'
type_4_byte='int'
_ar="$_host_alias-ar cru"
_ranlib=$_host_alias-ranlib
add_line_to_config_mk 'USE_ARM_SOUND_ASM = 1'
add_line_to_config_mk 'USE_ARM_SMUSH_ASM = 1'
add_line_to_config_mk 'USE_ARM_GFX_ASM = 1'
add_line_to_config_mk 'USE_ARM_SCALER_ASM = 1'
add_line_to_config_mk 'USE_ARM_COSTUME_ASM = 1'
_backend="gp2xwiz"
_build_hq_scalers="no"
_mt32emu="no"
;;
gp2x)
echo "Cross-compiling to $_host, forcing endianness, alignment and type sizes"
DEFINES="$DEFINES -DUNIX -DGP2X -DNDEBUG -DUSE_ARM_SMUSH_ASM -DUSE_ARM_GFX_ASM -DUSE_ARM_SCALER_ASM -DUSE_ARM_COSTUME_ASM"
CXXFLAGS="$CXXFLAGS -march=armv4t"
LDFLAGS="$LDFLAGS -static"
_endian=little
_need_memalign=yes
type_1_byte='char'
type_2_byte='short'
type_4_byte='int'
_ar="$_host_alias-ar cru"
_ranlib=$_host_alias-ranlib
add_line_to_config_mk 'USE_ARM_SOUND_ASM = 1'
add_line_to_config_mk 'USE_ARM_SMUSH_ASM = 1'
add_line_to_config_mk 'USE_ARM_GFX_ASM = 1'
add_line_to_config_mk 'USE_ARM_SCALER_ASM = 1'
add_line_to_config_mk 'USE_ARM_COSTUME_ASM = 1'
_backend="gp2x"
_build_hq_scalers="no"
_mt32emu="no"
;;
neuros)
echo "Cross-compiling to $_host, forcing endianness, alignment and type sizes"
DEFINES="$DEFINES -DUNIX"
_endian=little
_need_memalign=yes
add_line_to_config_h "#define NEUROS"
type_1_byte='char'
type_2_byte='short'
type_4_byte='int'
_backend='null'
_build_hq_scalers="no"
_mt32emu="no"
;;
ppc-amigaos)
echo "Cross-compiling to $_host, forcing endianness, alignment and type sizes"
_endian=big
_need_memalign=yes
type_1_byte='char'
type_2_byte='short'
type_4_byte='long'
;;
m68k-atari-mint)
echo "Cross-compiling to $_host, forcing endianness, alignment and type sizes"
DEFINES="$DEFINES -DUNIX -DSYSTEM_NOT_SUPPORTING_D_TYPE"
_endian=big
_need_memalign=yes
type_1_byte='char'
type_2_byte='short'
type_4_byte='long'
_ranlib=m68k-atari-mint-ranlib
_ar="m68k-atari-mint-ar cru"
;;
*mingw32*)
echo "Cross-compiling to $_host, forcing endianness, alignment and type sizes"
_endian=little
type_1_byte='char'
type_2_byte='short'
type_4_byte='int'
_sdlconfig=$_host-sdl-config
_windres=$_host-windres
_ar="$_host-ar cru"
_ranlib=$_host-ranlib
;;
iphone)
echo "Cross-compiling to $_host, forcing endianness, alignment and type sizes"
DEFINES="$DEFINES -DIPHONE -DUNIX -DUSE_ARM_SMUSH_ASM"
_endian=little
_need_memalign=yes
type_1_byte='char'
type_2_byte='short'
type_4_byte='int'
add_line_to_config_mk 'USE_ARM_SOUND_ASM = 1'
add_line_to_config_mk 'USE_ARM_SMUSH_ASM = 1'
_backend="iphone"
_build_hq_scalers="no"
_ar="$_host_alias-ar cru"
_ranlib=$_host_alias-ranlib
_strip=$_host_alias-strip
;;
wince)
echo "Cross-compiling to $_host, forcing endianness, alignment and type sizes"
LDFLAGS="$LDFLAGS -Wl,-Map,scummvm.exe.map -Wl,--stack,65536"
_endian=little
_need_memalign=yes
type_1_byte='char'
type_2_byte='short'
type_4_byte='int'
add_line_to_config_mk 'USE_TREMOLO = 1'
add_line_to_config_mk 'USE_ARM_SOUND_ASM = 1'
add_line_to_config_mk 'USE_ARM_SMUSH_ASM = 1'
add_line_to_config_mk 'USE_ARM_GFX_ASM = 1'
add_line_to_config_mk 'USE_ARM_COSTUME_ASM = 1'
add_line_to_config_mk 'USE_ARM_SCALER_ASM = 1'
_backend="wince"
_ar="$_host_alias-ar cru"
_ranlib=$_host_alias-ranlib
_strip=$_host_alias-strip
_windres=$_host_alias-windres
_mt32emu="no"
add_line_to_config_mk 'include $(srcdir)/backends/platform/wince/wince.mk'
;;
dreamcast)
echo "Cross-compiling to $_host, forcing endianness, alignment and type sizes"
DEFINES="$DEFINES -DDISABLE_DEFAULT_SAVEFILEMANAGER -DDISABLE_TEXT_CONSOLE -DDISABLE_COMMAND_LINE"
CXXFLAGS="$CXXFLAGS -O3 -Wno-multichar -funroll-loops -fschedule-insns2 -fomit-frame-pointer -fdelete-null-pointer-checks -fno-exceptions"
_endian=little
_need_memalign=yes
type_1_byte='char'
type_2_byte='short'
type_4_byte='int'
_backend="dc"
_build_scalers="no"
_build_hq_scalers="no"
_mad="yes"
_zlib="yes"
_ar="$_host_alias-ar cru"
_ranlib=$_host_alias-ranlib
add_line_to_config_mk 'include $(srcdir)/backends/platform/dc/dreamcast.mk'
;;
wii)
echo "Cross-compiling to $_host, forcing endianness, alignment and type sizes"
_endian=big
_need_memalign=yes
type_1_byte='char'
type_2_byte='short'
type_4_byte='int'
_ar="$_host_alias-ar cru"
_ranlib=$_host_alias-ranlib
_strip=$_host_alias-strip
_backend="wii"
_build_hq_scalers="no"
add_line_to_config_mk 'GAMECUBE = 0'
add_line_to_config_mk 'include $(srcdir)/backends/platform/wii/wii.mk'
add_line_to_config_h "#define DEBUG_WII_USBGECKO"
add_line_to_config_h "/* #define DEBUG_WII_MEMSTATS */"
add_line_to_config_h "/* #define DEBUG_WII_GDB */"
add_line_to_config_h "#define USE_WII_DI"
add_line_to_config_h "#define USE_WII_KBD"
;;
gamecube)
echo "Cross-compiling to $_host, forcing endianness, alignment and type sizes"
_endian=big
_need_memalign=yes
type_1_byte='char'
type_2_byte='short'
type_4_byte='int'
_ar="$_host_alias-ar cru"
_ranlib=$_host_alias-ranlib
_strip=$_host_alias-strip
_backend="wii"
_build_hq_scalers="no"
_mt32emu="no"
add_line_to_config_mk 'GAMECUBE = 1'
add_line_to_config_mk 'include $(srcdir)/backends/platform/wii/wii.mk'
add_line_to_config_h '#define GAMECUBE'
add_line_to_config_h "/* #define DEBUG_WII_USBGECKO */"
add_line_to_config_h "/* #define DEBUG_WII_MEMSTATS */"
add_line_to_config_h "/* #define DEBUG_WII_GDB */"
;;
nds)
echo "Cross-compiling to $_host, forcing endianness, alignment and type sizes"
# TODO: complete this
# TODO: Maybe rename nds -> ds (would be more consistent with other backends)
DEFINES="$DEFINES -DUSE_ARM_SMUSH_ASM"
_endian=little
_need_memalign=yes
type_1_byte='char'
type_2_byte='short'
type_4_byte='int'
_backend="nds"
_build_hq_scalers="no"
_mt32emu="no"
add_line_to_config_mk 'include $(srcdir)/backends/platform/ds/ds.mk'
# TODO: Enable more ARM optimizations -- requires testing!
add_line_to_config_mk 'USE_ARM_SOUND_ASM = 1'
add_line_to_config_mk 'USE_ARM_SMUSH_ASM = 1'
;;
psp)
echo "Cross-compiling to $_host, forcing endianness, alignment and type sizes"
_endian=little
_need_memalign=yes
type_1_byte='char'
type_2_byte='short'
type_4_byte='int'
_ar="$_host_alias-ar cru"
_ranlib=$_host_alias-ranlib
_backend="psp"
_build_scalers="no"
_build_hq_scalers="no"
_mt32emu="no"
add_line_to_config_mk 'include $(srcdir)/backends/platform/psp/psp.mk'
;;
*)
echo "Continuing with auto-detected values ... if you have problems, please add your target to configure."
;;
esac
else
#
# Check whether memory alignment is required
#
echo_n "Alignment required... "
case $_host_cpu in
arm*)
_need_memalign=yes
;;
alpha*)
# Hardcode alignment requirements for Alpha processsors
_need_memalign=yes
;;
sh*)
# Hardcode alignment requirements for SH processsors.
# While these can emulate unaligned memory access, this
# emulation is rather slow.
_need_memalign=yes
;;
mips*)
# Hardcode alignment requirements for MIPS processsors.
# While these can emulate unaligned memory access, this
# emulation is rather slow.
_need_memalign=yes
;;
*)
# Try to auto-detect....
cat > $TMPC << EOF
#include <stdlib.h>
#include <signal.h>
int main(int argc, char **argv) {
unsigned char test[8] = { 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88 };
signal(SIGBUS, exit);
signal(SIGABRT, exit);
signal(SIGSEGV, exit);
if (*((unsigned int *)(test + 1)) != 0x55443322 && *((unsigned int *)(test + 1)) != 0x22334455) {
return 1;
}
return 0;
}
EOF
_need_memalign=yes
cc_check && $TMPO$HOSTEXEEXT && _need_memalign=no
;;
esac
echo "$_need_memalign"
fi
#
# Add the results of the above checks to config.h
#
case $_endian in
big)
add_line_to_config_h '/* #define SCUMM_LITTLE_ENDIAN */'
add_line_to_config_h '#define SCUMM_BIG_ENDIAN'
;;
little)
add_line_to_config_h '#define SCUMM_LITTLE_ENDIAN'
add_line_to_config_h '/* #define SCUMM_BIG_ENDIAN */'
;;
*)
exit 1
;;
esac
add_to_config_h_if_yes $_have_x86 '#define HAVE_X86'
add_to_config_h_if_yes $_need_memalign '#define SCUMM_NEED_ALIGNMENT'
#
# Check whether plugin support is requested and possible
#
echo_n "Checking whether building plugins was requested... "
echo "$_dynamic_modules"
_mak_plugins=
_def_plugin="/* -> plugins disabled */"
if test "$_dynamic_modules" = yes ; then
echo_n "Checking whether building plugins is supported... "
case $_host_os in
linux*)
_def_plugin='
#define PLUGIN_PREFIX "lib"
#define PLUGIN_SUFFIX ".so"
'
_mak_plugins='
DYNAMIC_MODULES := 1
PLUGIN_PREFIX := lib
PLUGIN_SUFFIX := .so
PLUGIN_EXTRA_DEPS =
CXXFLAGS += -DDYNAMIC_MODULES
CXXFLAGS += -fpic
PLUGIN_LDFLAGS += -shared
PRE_OBJS_FLAGS := -Wl,-export-dynamic -Wl,-whole-archive
POST_OBJS_FLAGS := -Wl,-no-whole-archive
LIBS += -ldl
'
;;
freebsd*)
_def_plugin='
#define PLUGIN_PREFIX "lib"
#define PLUGIN_SUFFIX ".so"
'
_mak_plugins='
DYNAMIC_MODULES := 1
PLUGIN_PREFIX := lib
PLUGIN_SUFFIX := .so
PLUGIN_EXTRA_DEPS =
CXXFLAGS += -DDYNAMIC_MODULES
CXXFLAGS += -fpic
PLUGIN_LDFLAGS += -shared
PRE_OBJS_FLAGS := -Wl,-export-dynamic -Wl,-whole-archive
POST_OBJS_FLAGS := -Wl,-no-whole-archive
'
;;
darwin*)
_def_plugin='
#define PLUGIN_PREFIX ""
#define PLUGIN_SUFFIX ".plugin"
'
_mak_plugins='
DYNAMIC_MODULES := 1
PLUGIN_PREFIX :=
PLUGIN_SUFFIX := .plugin
PLUGIN_EXTRA_DEPS = $(EXECUTABLE)
CXXFLAGS += -DDYNAMIC_MODULES
PLUGIN_LDFLAGS += -bundle -bundle_loader $(EXECUTABLE) -exported_symbols_list "$(srcdir)/plugin.exp"
PRE_OBJS_FLAGS := -all_load
POST_OBJS_FLAGS :=
LIBS += -ldl
'
;;
*mingw32*)
_def_plugin='
#define PLUGIN_PREFIX ""
#define PLUGIN_SUFFIX ".dll"
'
_mak_plugins='
DYNAMIC_MODULES := 1
PLUGIN_PREFIX :=
PLUGIN_SUFFIX := .dll
PLUGIN_EXTRA_DEPS = $(EXECUTABLE)
CXXFLAGS += -DDYNAMIC_MODULES
PLUGIN_LDFLAGS := -Wl,--enable-auto-import -shared ./libscummvm.a
PRE_OBJS_FLAGS := -Wl,--whole-archive
POST_OBJS_FLAGS := -Wl,--export-all-symbols -Wl,--no-whole-archive -Wl,--out-implib,./libscummvm.a
'
;;
gp2xwiz*)
_def_plugin='
#define PLUGIN_PREFIX ""
#define PLUGIN_SUFFIX ".plugin"
'
_mak_plugins='
DYNAMIC_MODULES := 1
PLUGIN_PREFIX :=
PLUGIN_SUFFIX := .plugin
PLUGIN_EXTRA_DEPS = $(EXECUTABLE)
CXXFLAGS += -DDYNAMIC_MODULES
CXXFLAGS += -fpic
PLUGIN_LDFLAGS += -shared
PRE_OBJS_FLAGS := -Wl,-export-dynamic -Wl,-whole-archive
POST_OBJS_FLAGS := -Wl,-no-whole-archive
LIBS += -ldl
'
;;
dreamcast)
_def_plugin='
#define PLUGIN_PREFIX ""
#define PLUGIN_SUFFIX ".plg"
'
_mak_plugins='
DYNAMIC_MODULES := 1
PLUGIN_PREFIX :=
PLUGIN_SUFFIX := .plg
PLUGIN_EXTRA_DEPS = $(abspath $(srcdir)/backends/platform/dc/plugin.x $(srcdir)/backends/platform/dc/plugin.syms) $(EXECUTABLE)
CXXFLAGS += -DDYNAMIC_MODULES
PLUGIN_LDFLAGS = -ml -m4-single-only -nostartfiles -Wl,-q,-T$(srcdir)/backends/platform/dc/plugin.x,--just-symbols,$(EXECUTABLE),--retain-symbols-file,$(srcdir)/backends/platform/dc/plugin.syms -L$(ronindir)/lib
PRE_OBJS_FLAGS := -Wl,--whole-archive
POST_OBJS_FLAGS := -Wl,--no-whole-archive
'
;;
*)
_dynamic_modules=no
_mak_plugins=
_def_plugin=
;;
esac
echo "$_dynamic_modules"
fi
#
# Check whether integrated MT-32 emulator support is requested
#
if test "$_mt32emu" = no ; then
_def_mt32emu='#undef USE_MT32EMU'
else
_def_mt32emu='#define USE_MT32EMU'
fi
add_to_config_mk_if_yes "$_mt32emu" 'USE_MT32EMU = 1'
#
# Check whether 16bit color support is requested
#
add_to_config_mk_if_yes "$_16bit" 'ENABLE_RGB_COLOR = 1'
#
# Check whether to enable the (hq) scalers
#
add_to_config_mk_if_no $_build_hq_scalers 'DISABLE_HQ_SCALERS = 1'
add_to_config_mk_if_no $_build_scalers 'DISABLE_SCALERS = 1'
#
# Check for math lib
#
cat > $TMPC << EOF
int main(void) { return 0; }
EOF
cc_check $LDFLAGS $CXXFLAGS -lm && LDFLAGS="$LDFLAGS -lm"
#
# Check for Ogg Vorbis
#
echocheck "Ogg Vorbis"
if test "$_vorbis" = auto ; then
_vorbis=no
cat > $TMPC << EOF
#include <vorbis/codec.h>
int main(void) { vorbis_packet_blocksize(0,0); return 0; }
EOF
cc_check $LDFLAGS $CXXFLAGS $OGG_CFLAGS $OGG_LIBS $VORBIS_CFLAGS $VORBIS_LIBS \
-lvorbisfile -lvorbis -logg && _vorbis=yes
fi
if test "$_vorbis" = yes ; then
_def_vorbis='#define USE_VORBIS'
LIBS="$LIBS $OGG_LIBS $VORBIS_LIBS -lvorbisfile -lvorbis -logg"
INCLUDES="$INCLUDES $OGG_CFLAGS $VORBIS_CFLAGS"
else
_def_vorbis='#undef USE_VORBIS'
fi
add_to_config_mk_if_yes "$_vorbis" 'USE_VORBIS = 1'
echo "$_vorbis"
#
# Check for Tremor
#
echocheck "Tremor"
if test "$_tremor" = auto ; then
_tremor=no
cat > $TMPC << EOF
#include <tremor/ivorbiscodec.h>
int main(void) { vorbis_info_init(0); return 0; }
EOF
cc_check $LDFLAGS $CXXFLAGS $TREMOR_CFLAGS $TREMOR_LIBS -lvorbisidec && \
_tremor=yes
fi
if test "$_tremor" = yes && test "$_vorbis" = no; then
_def_tremor='#define USE_TREMOR'
_def_vorbis='#define USE_VORBIS'
LIBS="$LIBS $TREMOR_LIBS -lvorbisidec"
INCLUDES="$INCLUDES $TREMOR_CFLAGS"
else
if test "$_vorbis" = yes; then
_tremor="no (Ogg Vorbis/Tremor support is mutually exclusive)"
fi
_def_tremor='#undef USE_TREMOR'
fi
add_to_config_mk_if_yes "$_tremor" 'USE_TREMOR = 1'
echo "$_tremor"
#
# Check for FLAC
#
echocheck "FLAC >= 1.0.1"
if test "$_flac" = auto ; then
_flac=no
cat > $TMPC << EOF
#include <FLAC/format.h>
int main(void) { return FLAC__STREAM_SYNC_LEN >> 30; /* guaranteed to be 0 */ }
EOF
if test "$_vorbis" = yes ; then
cc_check $LDFLAGS $CXXFLAGS $FLAC_CFLAGS $FLAC_LIBS $OGG_CFLAGS $OGG_LIBS \
-lFLAC -logg && _flac=yes
else
cc_check $LDFLAGS $CXXFLAGS $FLAC_CFLAGS $FLAC_LIBS \
-lFLAC && _flac=yes
fi
fi
if test "$_flac" = yes ; then
_def_flac='#define USE_FLAC'
if test "$_vorbis" = yes ; then
LIBS="$LIBS $FLAC_LIBS $OGG_LIBS -lFLAC -logg"
else
LIBS="$LIBS $FLAC_LIBS -lFLAC"
fi
INCLUDES="$INCLUDES $FLAC_CFLAGS"
else
_def_flac='#undef USE_FLAC'
fi
add_to_config_mk_if_yes "$_flac" 'USE_FLAC = 1'
echo "$_flac"
#
# Check for MAD (MP3 library)
#
echocheck "MAD"
if test "$_mad" = auto ; then
_mad=no
cat > $TMPC << EOF
#include <mad.h>
int main(void) { return 0; }
EOF
cc_check $LDFLAGS $CXXFLAGS $MAD_CFLAGS $MAD_LIBS -lmad && _mad=yes
fi
if test "$_mad" = yes ; then
_def_mad='#define USE_MAD'
LIBS="$LIBS $MAD_LIBS -lmad"
INCLUDES="$INCLUDES $MAD_CFLAGS"
else
_def_mad='#undef USE_MAD'
fi
add_to_config_mk_if_yes "$_mad" 'USE_MAD = 1'
echo "$_mad"
#
# Check for ALSA
#
echocheck "ALSA >= 0.9"
if test "$_alsa" = auto ; then
_alsa=no
cat > $TMPC << EOF
#include <alsa/asoundlib.h>
int main(void) { return (!(SND_LIB_MAJOR==0 && SND_LIB_MINOR==9)); }
EOF
cc_check $LDFLAGS $CXXFLAGS $ALSA_CFLAGS $ALSA_LIBS -lasound && _alsa=yes
fi
if test "$_alsa" = yes ; then
_def_alsa='#define USE_ALSA'
LIBS="$LIBS $ALSA_LIBS -lasound"
INCLUDES="$INCLUDES $ALSA_CFLAGS"
else
_def_alsa='#undef USE_ALSA'
fi
echo "$_alsa"
#
# Check for ZLib
#
echocheck "zlib"
if test "$_zlib" = auto ; then
_zlib=no
cat > $TMPC << EOF
#include <string.h>
#include <zlib.h>
int main(void) { return strcmp(ZLIB_VERSION, zlibVersion()); }
EOF
cc_check $LDFLAGS $CXXFLAGS $ZLIB_CFLAGS $ZLIB_LIBS -lz && _zlib=yes
fi
if test "$_zlib" = yes ; then
_def_zlib='#define USE_ZLIB'
LIBS="$LIBS $ZLIB_LIBS -lz"
INCLUDES="$INCLUDES $ZLIB_CFLAGS"
else
_def_zlib='#undef USE_ZLIB'
fi
add_to_config_mk_if_yes "$_zlib" 'USE_ZLIB = 1'
echo "$_zlib"
#
# Check for LibMPEG2
#
echocheck "libmpeg2 >= 0.3.2"
if test "$_mpeg2" = auto ; then
_mpeg2=no
cat > $TMPC << EOF
typedef signed $type_1_byte int8_t;
typedef signed $type_2_byte int16_t;
typedef signed $type_4_byte int32_t;
typedef unsigned $type_1_byte uint8_t;
typedef unsigned $type_2_byte uint16_t;
typedef unsigned $type_4_byte uint32_t;
#include <mpeg2dec/mpeg2.h>
int main(void) {
/* mpeg2_state_t first appears in 0.4.0 */
mpeg2_state_t state;
#ifdef MPEG2_RELEASE
if (MPEG2_RELEASE >= MPEG2_VERSION(0, 3, 2))
return 0;
#endif
return 1;
}
EOF
if test -n "$_host"; then
# don't execute while cross compiling
cc_check $LDFLAGS $CXXFLAGS $MPEG2_CFLAGS $MPEG2_LIBS -lmpeg2 && _mpeg2=yes
else
cc_check $LDFLAGS $CXXFLAGS $MPEG2_CFLAGS $MPEG2_LIBS -lmpeg2 && $TMPO$HOSTEXEEXT && _mpeg2=yes
fi
fi
if test "$_mpeg2" = yes ; then
_def_mpeg2='#define USE_MPEG2'
INCLUDES="$INCLUDES $MPEG2_CFLAGS"
LIBS="$LIBS $MPEG2_LIBS -lmpeg2"
else
_def_mpeg2='#undef USE_MPEG2'
fi
add_to_config_mk_if_yes "$_mpeg2" 'USE_MPEG2 = 1'
echo "$_mpeg2"
#
# Check for libfluidsynth
#
echocheck "libfluidsynth"
if test "$_fluidsynth" = auto ; then
_fluidsynth=no
cat > $TMPC << EOF
#include <fluidsynth.h>
int main(void) { return 0; }
EOF
cc_check $LDFLAGS $CXXFLAGS $FLUIDSYNTH_CFLAGS $FLUIDSYNTH_LIBS -lfluidsynth && _fluidsynth=yes
fi
if test "$_fluidsynth" = yes ; then
_def_fluidsynth='#define USE_FLUIDSYNTH'
case $_host_os in
mingw*)
LIBS="$LIBS $FLUIDSYNTH_LIBS -lfluidsynth -ldsound -lwinmm"
;;
*)
LIBS="$LIBS $FLUIDSYNTH_LIBS -lfluidsynth"
;;
esac
INCLUDES="$INCLUDES $FLUIDSYNTH_CFLAGS"
else
_def_fluidsynth='#undef USE_FLUIDSYNTH'
fi
echo "$_fluidsynth"
rm -rf $TMPC $TMPO$HOSTEXEEXT $TMPO.dSYM
#
# Check for readline if text_console is enabled
#
echocheck "readline"
if test "$_text_console" = yes ; then
if test "$_readline" = auto ; then
_readline=no
cat > $TMPC << EOF
#include <stdio.h>
#include <readline/readline.h>
#include <readline/history.h>
int main(void) {
char *x = readline("");
}
EOF
cc_check $LDFLAGS $CXXFLAGS $READLINE_CFLAGS $READLINE_LIBS -lreadline && _readline=yes
fi
echo "$_readline"
rm -rf $TMPC $TMPO$HOSTEXEEXT $TMPO.dSYM
else
_readline=no
echo "skipping (text console disabled)"
fi
if test "$_readline" = yes ; then
_def_readline='#define USE_READLINE'
LIBS="$LIBS $READLINE_LIBS -lreadline"
INCLUDES="$INCLUDES $READLINE_CFLAGS"
else
_def_readline='#undef USE_READLINE'
fi
if test "$_text_console" = yes ; then
_def_text_console='#define USE_TEXT_CONSOLE'
else
_def_text_console='#undef USE_TEXT_CONSOLE'
fi
#
# Check for nasm
#
if test "$_have_x86" = yes ; then
echocheck "nasm"
if test "$_nasm" = no ; then
echo "disabled"
else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$SEPARATOR
for path_dir in $_nasmpath; do
if test -x "$path_dir/nasm$NATIVEEXEEXT" ; then
NASM="$path_dir/nasm$NATIVEEXEEXT"
echo $NASM
break
fi
done
IFS="$ac_save_ifs"
if test x$NASM = x -o x$NASM = x'"$NASM"'; then
echo "not found"
_nasm=no
else
case $_host_os in
os2-emx*)
NASMFLAGS="-f aout"
;;
mingw*)
NASMFLAGS="-f win32"
;;
darwin*)
NASMFLAGS="-f macho"
;;
*)
NASMFLAGS="-f elf"
;;
esac
_nasm=yes
fi
fi
fi
add_to_config_h_if_yes $_nasm '#define USE_NASM'
add_to_config_mk_if_yes $_nasm 'HAVE_NASM = 1'
#
# Enable vkeybd / keymapper
#
if test "$_vkeybd" = yes ; then
DEFINES="$DEFINES -DENABLE_VKEYBD"
fi
if test "$_keymapper" = yes ; then
DEFINES="$DEFINES -DENABLE_KEYMAPPER"
fi
#
# Figure out installation directories
#
test -z "$_bindir" && _bindir="$_prefix/bin"
test -z "$_mandir" && _mandir="$_prefix/share/man"
test -z "$_datadir" && _datadir="$_prefix/share"
test -z "$_libdir" && _libdir="$_prefix/lib"
DEFINES="$DEFINES -DDATA_PATH=\\\"$_datadir/scummvm\\\""
DEFINES="$DEFINES -DPLUGIN_DIRECTORY=\\\"$_libdir/scummvm\\\""
echo_n "Backend... "
echo_n "$_backend"
if test "$_nasm" = yes ; then
echo_n ", assembly routines"
fi
if test "$_16bit" = yes ; then
echo_n ", 16bit color"
fi
if test "$_build_hq_scalers" = yes ; then
echo_n ", HQ scalers"
fi
if test "$_mt32emu" = yes ; then
echo_n ", MT-32 emu"
fi
if test "$_text_console" = yes ; then
echo_n ", text console"
fi
if test "$_vkeybd" = yes ; then
echo_n ", virtual keyboard"
fi
if test "$_keymapper" = yes ; then
echo ", keymapper"
else
echo
fi
#
# Backend related stuff
#
case $_backend in
null)
DEFINES="$DEFINES -DUSE_NULL_DRIVER"
;;
sdl)
find_sdlconfig
INCLUDES="$INCLUDES `$_sdlconfig --prefix="$_sdlpath" --cflags`"
LIBS="$LIBS `$_sdlconfig --prefix="$_sdlpath" --libs`"
DEFINES="$DEFINES -DSDL_BACKEND"
;;
gp2x)
find_sdlconfig
INCLUDES="$INCLUDES `$_sdlconfig --prefix="$_sdlpath" --cflags`"
LIBS="$LIBS `$_sdlconfig --prefix="$_sdlpath" --libs`"
LDFLAGS="$LDFLAGS -static"
CXXFLAGS="$CXXFLAGS -march=armv4t"
;;
gp2xwiz)
find_sdlconfig
INCLUDES="$INCLUDES `$_sdlconfig --prefix="$_sdlpath" --cflags`"
LIBS="$LIBS `$_sdlconfig --prefix="$_sdlpath" --libs`"
LDFLAGS="$LDFLAGS"
CXXFLAGS="$CXXFLAGS -mcpu=arm926ej-s -mtune=arm926ej-s"
;;
iphone)
OBJCFLAGS="$OBJCFLAGS --std=c99"
LIBS="$LIBS -lobjc -framework UIKit -framework CoreGraphics -framework OpenGLES -framework QuartzCore -framework GraphicsServices -framework CoreFoundation -framework Foundation -framework AudioToolbox -framework CoreAudio"
;;
wince)
INCLUDES="$INCLUDES "'-I$(srcdir) -I$(srcdir)/backends/platform/wince -I$(srcdir)/engines -I$(srcdir)/backends/platform/wince/missing/gcc -I$(srcdir)/backends/platform/wince/CEgui -I$(srcdir)/backends/platform/wince/CEkeys'
LIBS="$LIBS -static -lSDL"
;;
dc)
INCLUDES="$INCLUDES "'-I$(srcdir)/backends/platform/dc -isystem $(ronindir)/include'
LDFLAGS="$LDFLAGS -Wl,-Ttext,0x8c010000 -nostartfiles "'$(ronindir)/lib/crt0.o -L$(ronindir)/lib'
LIBS="$LIBS -lronin -lm"
;;
wii)
DEFINES="$DEFINES -D__WII__ -DGEKKO"
case $_host_os in
gamecube)
LIBS="$LIBS -lfat -logc -ldb"
;;
*)
LIBS="$LIBS -ldi -lfat -lwiiuse -lbte -logc -lwiikeyboard -ldb"
;;
esac
;;
nds)
# TODO nds
;;
psp)
DEFINES="$DEFINES -D__PSP__ -DDISABLE_TEXT_CONSOLE -DDISABLE_COMMAND_LINE"
INCLUDES="$INCLUDES -I$PSPDEV/psp/include/SDL"
LIBS="$LIBS -lSDL"
;;
*)
echo "support for $_backend backend not implemented in configure script yet"
exit 1
;;
esac
MODULES="$MODULES backends/platform/$_backend"
#
# Do CXXFLAGS now we know the compiler version
#
if test "$_cxx_major" -ge "3" ; then
case $_host_os in
# newlib-based system include files suppress non-C89 function
# declarations under __STRICT_ANSI__
mingw* | dreamcast | wii | gamecube | psp | wince | amigaos*)
CXXFLAGS="$CXXFLAGS -W -Wno-unused-parameter"
;;
*)
CXXFLAGS="$CXXFLAGS -ansi -W -Wno-unused-parameter"
;;
esac
add_line_to_config_mk 'HAVE_GCC3 = 1'
fi;
if test "$_cxx_major" -ge "4" && test "$_cxx_minor" -ge "3" ; then
CXXFLAGS="$CXXFLAGS -Wno-empty-body"
else
CXXFLAGS="$CXXFLAGS -Wconversion"
fi;
# Some platforms use certain GNU extensions in header files
case $_host_os in
wii | gamecube | psp)
;;
*)
CXXFLAGS="$CXXFLAGS -pedantic"
;;
esac
#
# Engine selection
#
_engines_built_static=""
_engines_built_dynamic=""
_engines_skipped=""
for engine in $_engines; do
if test "`get_engine_sub $engine`" = "no" ; then
# It's a main engine
if test `get_engine_build $engine` = no ; then
isbuilt=no
else
# If dynamic plugins aren't supported, mark
# all the engines as static
if test $_dynamic_modules = no ; then
eval _engine_${engine}_build=static
else
# If it wasn't explicitly marked as static or
# dynamic, use the configured default
if test `get_engine_build $engine` = yes ; then
eval _engine_${engine}_build=${_plugins_default}
fi
fi
# Prepare the defines
if test `get_engine_build $engine` = dynamic ; then
isbuilt=DYNAMIC_PLUGIN
else
eval _engine_${engine}_build=static
isbuilt=STATIC_PLUGIN
fi
fi
# Prepare the information to be shown
prepare_engine_build_strings $engine
else
# It's a subengine, just say yes or no
if test "`get_engine_build $engine`" = "no" ; then
isbuilt=no
else
isbuilt=1
fi
fi
# Save the settings
defname="ENABLE_`echo $engine | tr '[a-z]' '[A-Z]'`"
if test "$isbuilt" = "no" ; then
add_line_to_config_mk "# $defname"
else
add_line_to_config_mk "$defname = $isbuilt"
fi
done
#
# Show which engines ("frontends") are to be built
#
echo
if test -n "$_engines_built_static" ; then
echo "Engines (builtin):"
echo $_engines_built_static | sed 's/@/\
/g
s/#/ /g'
fi
if test -n "$_engines_built_dynamic" ; then
echo "Engines (plugins):"
echo $_engines_built_dynamic | sed 's/@/\
/g
s/#/ /g'
fi
if test -n "$_engines_skipped" ; then
echo "Engines Skipped:"
echo $_engines_skipped | sed 's/@/\
/g
s/#/ /g'
fi
echo
echo "Creating config.h"
cat > config.h << EOF
/* This file is automatically generated by configure */
/* DO NOT EDIT MANUALLY */
#ifndef CONFIG_H
#define CONFIG_H
$_config_h_data
/* Data types */
typedef unsigned $type_1_byte byte;
typedef unsigned int uint;
typedef unsigned $type_1_byte uint8;
typedef unsigned $type_2_byte uint16;
typedef unsigned $type_4_byte uint32;
typedef signed $type_1_byte int8;
typedef signed $type_2_byte int16;
typedef signed $type_4_byte int32;
/* Libs */
$_def_vorbis
$_def_tremor
$_def_flac
$_def_mad
$_def_alsa
$_def_zlib
$_def_mpeg2
$_def_fluidsynth
$_def_readline
/* Options */
$_def_text_console
$_def_mt32emu
/* Plugin settings */
$_def_plugin
#endif /* CONFIG_H */
EOF
echo "Creating config.mk"
cat > config.mk << EOF
# -------- Generated by configure -----------
CXX := $CXX
CXXFLAGS := $CXXFLAGS
LIBS += $LIBS
RANLIB := $_ranlib
STRIP := $_strip
AR := $_ar
WINDRES := $_windres
WIN32PATH=$_win32path
AOS4PATH=$_aos4path
STATICLIBPATH=$_staticlibpath
BACKEND := $_backend
MODULES += $MODULES
MODULE_DIRS += $MODULE_DIRS
EXEEXT := $HOSTEXEEXT
NASM := $NASM
NASMFLAGS := $NASMFLAGS
PREFIX := $_prefix
BINDIR := $_bindir
MANDIR := $_mandir
DATADIR := $_datadir
LIBDIR := $_libdir
$_config_mk_data
INCLUDES += $INCLUDES
OBJS += $OBJS
DEFINES += $DEFINES
LDFLAGS += $LDFLAGS
$_mak_plugins
SAVED_CONFIGFLAGS := $SAVED_CONFIGFLAGS
SAVED_LDFLAGS := $SAVED_LDFLAGS
SAVED_CXX := $SAVED_CXX
SAVED_CXXFLAGS := $SAVED_CXXFLAGS
SAVED_CPPFLAGS := $SAVED_CPPFLAGS
EOF
#
# Create a custom Makefile when building outside the source tree
# TODO: Add a better check than just looking for 'Makefile'
#
if test ! -f Makefile ; then
echo "Creating Makefile"
cat > Makefile << EOF
# -------- Generated by configure -----------
srcdir = $_srcdir
vpath %.h \$(srcdir)
vpath %.cpp \$(srcdir)
vpath %.c \$(srcdir)
vpath %.m \$(srcdir)
vpath %.asm \$(srcdir)
vpath %.s \$(srcdir)
vpath %.S \$(srcdir)
include \$(srcdir)/Makefile
EOF
fi