Commit Graph

133 Commits

Author SHA1 Message Date
ec9b5c982e Replaced Windows SpiderMonkey library with a threadsafe build of version 1.6.
Fixed linking with wxWidgets.
Enabled RTTI for non-engine packages.
Fixed wxJS for Windows.
Fixed failure to load on Windows 2000 due to IsWow64Process import.
Fixed trivial warnings.

This was SVN commit r5155.
2007-06-09 02:40:48 +00:00
4fbaea3780 # fix for exceptions when not running in debugger
move exception-specific stuff into wseh. it now grabs the entry point
and wraps it in a __try block (but only for the main EXE).
this works around issues with the previous SEH registration code
(exceptions weren't caught in release mode when not running in debugger)

This was SVN commit r5151.
2007-06-08 17:44:24 +00:00
2405a98b58 fix for immediate exit in autobuilt EXE
(problem was the vc7 linker stripping out stuff that we needed)

This was SVN commit r5149.
2007-06-07 19:32:13 +00:00
914e5f7c2f Rename stdafx.h to precompiled.h
This was SVN commit r5146.
2007-06-05 18:35:05 +00:00
4e83672579 # Added scripting support to the scenario editor UI
Added modified version of wxJavaScript.
Added Atlas script interface.
Rewrote the Map sidebar in JS.

This was SVN commit r5144.
2007-06-05 18:16:55 +00:00
db189468a9 (update-workspace required)
found another means of doing startup/shutdown that doesn't require
hooking and allows init callbacks to use CRT functions (avoiding
problems similar to the recent rash of pre-libc bugs). also, callback
registration no longer needs ugly #pragma syntax.

remove 'Detours' (evil and no longer needed)

This was SVN commit r5137.
2007-06-04 00:00:57 +00:00
c3de4710d3 Reverted update-workspaces.bat
This was SVN commit r5127.
2007-06-02 15:24:20 +00:00
cf89464e64 # autobuilder fix
detours is configured as a static lib, which would require using the
same compiler, but we have several in action.
fix: include a stripped down version of its code in the main source tree

This was SVN commit r5126.
2007-06-02 12:43:42 +00:00
6b6b6198f9 # Linux ICC compatibility.
Don't disable PCH in AtlasUI for non-GCC builds.
Prevented some excessive warnings ("implicitly-signed bit field of
length 1").
Removed (wcs|str)nlen functions on OS_UNIX, since they were already
removed from the .h.

This was SVN commit r5125.
2007-06-01 00:34:36 +00:00
d90975ee1e # Slightly improved Linux compatibility for Atlas.
Properly enabled PCH in GCC.
But wx 2.8 (with anonymous namespaces) and GCC <4.2 and PCH conflict, so
PCH is disabled when building AtlasUI on broken compiler versions.
Removed media player, because it's useless and makes building harder.
Removed unnecessary wx linking.

This was SVN commit r5122.
2007-05-31 01:47:17 +00:00
7fe6c3d77f add detours library for API hooking.
(update aken driver while at it)

This was SVN commit r5107.
2007-05-28 15:01:29 +00:00
349d9b9afe add whrt dir, remove winmm delayload and dsound dependency
(workspace must be updated)

This was SVN commit r5095.
2007-05-26 17:17:47 +00:00
9d2acce9d8 # SwEng/cleanup
- deleted most old libraries/headers in codepit to avoid confusion (they
are now in SVN anyway). updated required-libraries-linux.txt accordingly
- moved rand() into separate file, out of lib.cpp
- removed CGUIScrollBarStyle.cpp to avoid empty-file warning
- wxwidgets.h: remove redundant #pragma lib and include wxw PCH
- move openal-specific stuff to external_libraries/openal.h
- cpu, bsd: macosx is-a bsd, so only test OS_BSD

This was SVN commit r5082.
2007-05-18 00:14:26 +00:00
7d4af5979b Fixes for the Mac.
# The engine now builds and runs on Mac OS X.

Most changes were localized to the sysdep/ folder and the build system.
This
is what porting should be like! Hopefully nothing breaks on the other
platforms though ;-)

This was SVN commit r5081.
2007-05-17 03:37:49 +00:00
31a60bf1d8 - debug version of xerces libs and updated headers
- update premake for wxw 2.8 and make some required fixes in
VideoRecorder.cpp

This was SVN commit r5068.
2007-05-13 10:27:48 +00:00
d69a0c52bb update OpenAL include/lib from SDK (nothing really changed in the header)
add crypto++ to libraries (will later be used for checksums)

This was SVN commit r5058.
2007-05-11 09:41:46 +00:00
b918fec071 add new directories
This was SVN commit r5033.
2007-05-05 17:36:24 +00:00
Seth
3c1bcde78f Replaced
#include <malloc.h>
with
#include <stdlib.h>

Because it caused some build errors on the Mac OS X

This was SVN commit r5002.
2007-04-28 16:23:50 +00:00
ab22765232 add new source dir (requires rebuilding workspace)
This was SVN commit r4996.
2007-04-25 18:32:07 +00:00
ccf4425f75 # Linux fixes
update-workspaces.sh: Ensure 'gcc' directory exists, to avoid confusing
errors.
extern_libs.lua: Don't use libraries/ (except for cxxtest and fcollada)
on Linux. Changed to native EOL.

This was SVN commit r4991.
2007-04-24 20:41:54 +00:00
58aaff1ff2 explain how/where to build premake
This was SVN commit r4987.
2007-04-23 08:34:16 +00:00
49efe728fd Added binaries and some example data for COLLADA conversion.
Added FCollada 3.02 library files (but Collada*.dll is not built by
default since it doesn't work in VS2003 (because the FCollada*.dll files
use the VC80 CRT)).
Changed Premake to use optimize-speed instead of optimize, since the
latter does /Ox (in MSVC) which is kind of unofficially deprecated.

This was SVN commit r4935.
2007-03-01 22:34:38 +00:00
236224eea9 # Updated video encoding library.
(in particular the one file that I'd forgotten about when updating the
rest)

This was SVN commit r4928.
2007-02-25 22:08:31 +00:00
c2b119e721 # Linux fixes.
Disabled CONFIG_USE_MMGR by default, since it seems unnecessary and it
makes debug builds slow (extremely slow under Valgrind) due to symbol
lookups when allocating memory.
Fixed minor warnings and errors.

This was SVN commit r4927.
2007-02-25 21:11:57 +00:00
27b6ffe2d6 # housekeeping
sorry, update-workspaces + rebuild is necessary (moved boost/utility
into PCH)

- ps/ : committed additional documentation on behalf of Joe.
- lib/ : HAVE_C99 - replace with specific e.g. HAVE_NPRINTF; intended to
help with MacOSX compat (by no longer requiring us to lie about
STDC_VERSION)
- NO_COPY_CTOR -> boost::noncopyable

This was SVN commit r4825.
2007-02-01 01:34:17 +00:00
8a9ddae60b Oops, I broke GCC PCH a month ago. Fixed, and added a comment so I now know why it does what it does.
Also, updated the dependency checking so it rebuilds the PCH file when
included files change.

This was SVN commit r4813.
2007-01-26 21:16:49 +00:00
3573c4a4e3 # Optimisations for Linux
GCC: Don't export symbols from DSOs by default - see
http://gcc.gnu.org/wiki/Visibility

This was SVN commit r4812.
2007-01-26 18:26:45 +00:00
2d4f5478de Added ICC-Linux PCH support in Premake. (It's much more like the MSVC approach than the GCC one.)
Passed --have-std to CxxTest so it always adds the same code before
including precompiled.h, so that the PCH is usable.

This was SVN commit r4736.
2007-01-04 03:22:23 +00:00
0bdc1c22c8 # Made the Atlas scenario editor partly work on Linux.
- Made the canvas get shown before it's used.
 - Added some bits of SDL initialisation so that SDL_GL_GetProcAddress
is happy.
SnapSplitterWindow: fixed virtual override.

This was SVN commit r4735.
2007-01-03 15:45:13 +00:00
1926317975 # Linux/ICC fixes
- added "--icc" Premake flag, to disable PCH and set different warning
flags
 - added required headers
 - changed debug_warn to not generate constant-expression-in-conditional
warnings
 - changed FAM popup-warning into a log message, so it's not so
irritating
 - Atlas: pass around wxGLCanvas instead of wxGLContext, because the
context is sometimes just NULL

This was SVN commit r4733.
2007-01-02 18:11:00 +00:00
ebfd7910cf fixes: (after testing on other machine)
- add newly added dirs to premake.lua
- self_test is in lowlevel project and thus doesn't have cxxtest include
path set => must not include self_test.h
- wposix: make each _CRTIMP declaration extern "C" (can't rely on
definition of _CRTIMP, nor that the header is wrapped in extern "C" {})

This was SVN commit r4730.
2007-01-01 22:54:42 +00:00
8b7d1fcfb3 * Moved command-line options list from system.cfg into readme.txt. Updated the list to reflect reality. Removed -novbo option because you can use the .cfg file instead.
* Changed log files to trigger standards mode in Firefox (to be
consistent with other browsers), by making it valid HTML5. Changed the
font and some spacing.
 * Made CLogger default to ignoring messages if it hasn't been
initialised yet, instead of crashing.
 * Added leak reporting to the unit tests.
 * Renamed mods/_tests to mods/_test.xero, since it's only used by
Xeromyces and the other tests use mods/_test.otherstuff instead.
 * Fixed Atlas compilation on Windows.
 * Moved Atlas's DLL-loading code into a separate class, so it can be
shared.

This was SVN commit r4707.
2006-12-20 03:09:21 +00:00
13f2e3ca0c Tried compiling with ICC9 on Linux, which raised various issues:
* Fixed some bugs with incorrect macro usage (SDL_BYTE_ORDER vs
SDL_BYTEORDER, {MSC,GCC}_VER vs {MSC,GCC}_VERSION, OS_WIN/OS_UNIX in
projects where they're not defined).
 * Removed some redundant declarations of g_Console.
 * Removed some unnecessary semicolons.
 * Removed some unused variables.
 * Added throw specification to operator new.

This was SVN commit r4698.
2006-12-16 01:01:15 +00:00
cbafd43eea # Changed handling of command-line arguments.
* Added CmdLineArgs, which does the parsing then lets various pieces of
code check for whatever arguments they want.
 * Made Atlas exit out of main() cleanly, instead of calling exit()
itself.
 * Disabled the global exception-catching in unit tests, via a
entry_noSEH, so it doesn't make debugging harder.
 * Added nice printing of CStr in unit test failure messages, and added
comparison of vector vs constant array.

This was SVN commit r4688.
2006-12-09 14:39:52 +00:00
da266ebcb8 GCC compatibility for COLLADA converter
This was SVN commit r4683.
2006-12-06 17:39:49 +00:00
8fa6b12568 # Initial COLLADA support.
Just does static geometry at the moment.

This was SVN commit r4680.
2006-12-06 00:06:05 +00:00
2c71c22045 # Added basic video recording.
* Included FFmpeg library for video encoding. (LGPL, dynamically
linked.)
 * Added 'record' button to cinematics - plays the selected track at a
fixed framerate, and saves the output to a video file (preferably
MPEG4). Slightly lacking in reliability and features (fixed at 640x480,
no choice of codec, probably crashes horribly if any problems occur
while encoding, etc).
 * Moved icon bitmaps out of mods directory. Added 'record' icon.

This was SVN commit r4676.
2006-12-05 02:35:00 +00:00
e6cab9495e Generate documentation for all source (except tools), with more sensible project hierarchy
This was SVN commit r4669.
2006-12-01 20:42:30 +00:00
4d8133f785 # Fixes for MSVC
Use _WIN32/__WXMSW__ instead of OS_WIN.

This was SVN commit r4668.
2006-12-01 20:34:28 +00:00
835003d525 # Fixes for GCC
Renamed 'not' to 'negated', since 'not' is special in C++. Added some
includes, etc.

This was SVN commit r4665.
2006-11-29 23:37:10 +00:00
35ac7776ee GCC PCH support: closes #155, and decreases build times by a BUNCH!
Changed the default to generating PCH's for all platforms and added a
premake
command line option --without-pch, in case it breaks somewhere (but
AFAIK, Mac's
use recent enough versions of GCC, so it should be fine).

# Added support for precompiled headers into the Linux build system.
Build times are now significantly reduced (up to 50%!)

This was SVN commit r4642.
2006-11-12 19:46:47 +00:00
05c9525fdc update-workspaces.sh: generate atlas makefiles by default
*.lua: some extra libraries and options to make atlas work
premake:
- fixed #156 (creation of spurious dirs with strange permissions)
- implemented the "run" project kind to run the tests automatically
- changed the clean target for cxxtestgen projects to delete the
generated .cpp
files so that a make clean all actually regenerates the tests.

This was SVN commit r4639.
2006-11-12 03:39:40 +00:00
de0f893c18 Recompiled Premake on Windows. Added some headers so HAVE_PCH=0 works in MSVC.
This was SVN commit r4442.
2006-09-30 21:36:19 +00:00
d0dd86d0b4 # Fixed unit test build system on Linux
This was SVN commit r4441.
2006-09-30 21:09:02 +00:00
2763d3a311 Made CxxTest work a bit more on Linux
This was SVN commit r4438.
2006-09-30 18:47:24 +00:00
dave
b899ff6823 Premake need to be changed to create makefiles which work on OSX
updated the lua to handle os x project files

This was SVN commit r4293.
2006-09-04 16:33:47 +00:00
35e91718c5 # Added tool for viewing models and animations outside the game.
Atlas: Added ActorViewer. Moved GL canvas into separate class for shared
use. Disabled message-handling callback while blocked on the game, and
stopped creating dialog boxes inside the game thread in order to avoid
deadlocks (hopefully). Support multiple Views (for independent sets of
camera/update/render code). Recalculate territory boundaries when
necessary. Changed default list of animations to match those currently
used by actors.
# Tidied up more code.
Moved some more #includes out of .h files, to minimise unnecessary
compilation.
MathUtil: Deleted unused/unuseful macros (M_PI (use PI instead), M_PI_2
(use PI/2), MAX3, ABS (use abs)).
ObjectManager: Removed some ScEd-specific things.
Unit: Moved creation out of UnitManager, so units can be created without
adding to the manager. Changed CStr8 to the more conventional CStr.
app_hooks: Removed warning for setting multiple times.
win: Restored SEH catcher.
GameSetup, GameView: Removed RenderNoCull, because it doesn't seem to do
what it says it does ("force renderer to load everything") since we're
loading-on-demand most stuff and it doesn't seem especially useful since
we'd prefer to minimise loading times (but feel free to correct me if
I'm wrong). (And because it crashes when things need to be initialised
in a different order, so it's easier to remove than to understand and
fix it.)
PatchRData, Renderer: Work sensibly when there's no game (hence no LOS
manager, water, etc).
LOSManager: Use entity position instead of actor position when possible.
TerritoryManager: Allow delayed recalculations (so Atlas can issue lots
of move+recalculate commands per frame).
Cinematic: Non-pointer wxTimer, so it doesn't leak and doesn't have to
be deleted manually.

This was SVN commit r4261.
2006-08-28 17:36:42 +00:00
bc24974496 # sweng
forward declare SDL_event. remove SDL dependency of network code.
refs #140

This was SVN commit r4252.
2006-08-26 21:52:18 +00:00
4114d24d3e (pt2 - tortoiseSVN didn't want to do "recursive commit of dir deletion")
This was SVN commit r4250.
2006-08-26 20:26:17 +00:00
e53242284f # Updates to unit-testing system.
Premake: Changed to use PCH when compiling tests.
CxxTest: Got rid of /Wp64 warnings. Changed TS_ASSERT_STR_EQUALS to
print both strings on failure.
win_internal: Added the bits that CxxTest::Win32Gui needs (because
Win32Gui is now compiled with PCH and uses our sysdep headers).
Disabled test_cache_policies, because it took long enough for me to read
its name.

This was SVN commit r4237.
2006-08-22 21:38:53 +00:00