Closing in on a windows build (not quite there yet)

git-svn-id: https://openmw.svn.sourceforge.net/svnroot/openmw/trunk@8 ea6a568a-9f4f-0410-981a-c910a81bb256
actorid
nkorslund 17 years ago
parent 574196697d
commit 93b3054054

@ -21,7 +21,7 @@
*/ */
module bsa.bsatool; module bsatool;
import std.stdio; import std.stdio;

@ -221,4 +221,4 @@ struct FilenameHasher
} }
} }
version(Windows) alias CITextHasher FilenameHasher; version(Windows) alias CITextHash FilenameHasher;

@ -39,8 +39,14 @@ struct IniWriter
void openFile(char[] file) void openFile(char[] file)
{ {
if(ini is null) ini = new File(); if(ini is null) ini = new File();
char[] oldFile = file~".old";
// Windows doesn't support renaming into an existing file
version(Windows)
if(exists(oldFile)) remove(oldFile);
if(exists(file)) if(exists(file))
rename(file, file~".old"); rename(file, oldFile);
ini.open(file, FileMode.OutNew); ini.open(file, FileMode.OutNew);
} }

@ -19,14 +19,12 @@ prebuild += dsss clean niftool
########################### ###########################
# Bsa inspection tool # # Bsa inspection tool #
########################### ###########################
[bsa/bsatool.d] [bsatool.d]
target=bsatool
########################### ###########################
# Esm inspection tool # # Esm inspection tool #
########################### ###########################
[esm/esmtool.d] [esmtool.d]
target=esmtool
# Because of interdepencies between the ESM code and the resource # Because of interdepencies between the ESM code and the resource
# manager, we have to include all the C++ stuff. # manager, we have to include all the C++ stuff.
buildflags = -llOgreMain -llaudiere -llOIS cpp_audiere.o cpp_ogre.o buildflags = -llOgreMain -llaudiere -llOIS cpp_audiere.o cpp_ogre.o
@ -34,8 +32,7 @@ buildflags = -llOgreMain -llaudiere -llOIS cpp_audiere.o cpp_ogre.o
########################### ###########################
# Nif inspection tool # # Nif inspection tool #
########################### ###########################
[nif/niftool.d] [niftool.d]
target=niftool
buildflags = -debug=warnstd -debug=check -debug=statecheck -debug=strict -debug=verbose buildflags = -debug=warnstd -debug=check -debug=statecheck -debug=strict -debug=verbose
# Clean the nif object files to make sure they are recompiled in debug mode # Clean the nif object files to make sure they are recompiled in debug mode
prebuild = dsss clean niftool prebuild = dsss clean niftool

@ -21,7 +21,7 @@
*/ */
module esm.esmtool; module esmtool;
import std.stdio; import std.stdio;

@ -1,44 +1,44 @@
; Don't write your own comments in this file, they ; Don't write your own comments in this file, they
; will disappear when the file is rewritten. ; will disappear when the file is rewritten.
[General] [General]
ESM Directory=data/ ESM Directory=data/
BSA Directory=data/ BSA Directory=data/
SFX Directory=data/Sound/ SFX Directory=data/Sound/
Explore Music Directory=data/Music/Explore/ Explore Music Directory=data/Music/Explore/
Battle Music Directory=data/Music/Battle/ Battle Music Directory=data/Music/Battle/
Screenshots=11 Screenshots=11
Default Cell=Sud Default Cell=Sud
[Controls] [Controls]
Mouse Sensitivity X=0.2 Mouse Sensitivity X=0.20000000298023223877
Mouse Sensitivity Y=0.2 Mouse Sensitivity Y=0.20000000298023223877
Flip Mouse Y Axis=no Flip Mouse Y Axis=no
[Bindings] [Bindings]
; Key bindings. The strings must match exactly. ; Key bindings. The strings must match exactly.
Move Left=a,left Move Left=a,left
Move Right=d,right Move Right=d,right
Turn Left= Turn Left=
Turn Right= Turn Right=
Move Forward=w,up Move Forward=w,up
Move Backward=s,down Move Backward=s,down
Move Up=left_shift Move Up=left_shift
Move Down=left_ctrl Move Down=left_ctrl
Increase Main Volume=numpad_plus Increase Main Volume=numpad_plus
Decrease Main Volume=numpad_minus Decrease Main Volume=numpad_minus
Increase Music Volume=2 Increase Music Volume=2
Decrease Music Volume=1 Decrease Music Volume=1
Increase SFX Volume=4 Increase SFX Volume=4
Decrease SFX Volume=3 Decrease SFX Volume=3
Mute Sound=m Mute Sound=m
Toggle Battle Music=space Toggle Battle Music=space
OGRE Test Action=g OGRE Test Action=g
Pause=pause,p Pause=pause,p
Screen Shot=print_screen Screen Shot=print_screen
Quick Exit=q,escape Quick Exit=q,escape
[Sound] [Sound]
Main Volume=0.7 Main Volume=0.6999999880790710449
Music Volume=0.4 Music Volume=0.40000000596046447754
SFX Volume=0.6 SFX Volume=0.60000002384185791016
Enable Music=yes Enable Music=yes

@ -21,7 +21,7 @@
*/ */
module nif.niftool; module niftool;
import nif.nif; import nif.nif;
import nif.niffile; import nif.niffile;

@ -0,0 +1,23 @@
@echo off
rem See INSTALL.txt for instructions.
rem This batch file assumes you have run nodsss_monster.bat in the
rem Monster directory. It assumes Monster is located in ..\monster,
rem Ogre in ..\ogre and Audiere in ..\audiere
echo Compiling C++ files
g++ -c sound\cpp_audiere.cpp -I..\audiere\include
g++ -c ogre\cpp_ogre.cpp -I..\ogre\include
copy ..\ogre\bin\debug\ogremain_d.dll .
copy ..\ogre\bin\debug\ois_d.dll .
copy ..\ogre\bin\debug\cg.dll .
copy ..\audiere\bin\audiere.dll .
copy \windows\system32\d3dx9_30.dll d3dx9d_30.dll
echo Compiling main program (morro.exe)
gdc morro.d bsa\*.d core\*.d esm\*.d input\*.d nif\*.d ogre\*.d scene\*.d sound\*.d util\*.d cpp_audiere.o cpp_ogre.o ..\monster\monster\util\*.d ..\monster\monster\minibos\*.d ..\monster\monster\minibos\c\*.d ..\monster\monster\minibos\c\windows\*.d -I..\monster ogremain_d.dll ..\audiere\lib\audiere.lib OIS_d.dll -lstdc++ -o morro.exe
echo Setting up the correct Ogre cfg files
copy ogre.cfg.win32 ogre.cfg
copy plugins.cfg.win32 plugins.cfg

@ -1,7 +1,19 @@
Render System=OpenGL Rendering Subsystem Render System=Direct3D9 Rendering Subsystem
[OpenGL Rendering Subsystem] [Direct3D9 Rendering Subsystem]
FSAA=0 Allow NVPerfHUD=No
Full Screen=No Anti aliasing=None
RTT Preferred Mode=FBO Floating-point mode=Fastest
Video Mode=800 x 600 Full Screen=No
Rendering Device=NVIDIA Quadro NVS 135M
VSync=No
Video Mode=800 x 600 @ 32-bit colour
[OpenGL Rendering Subsystem]
Colour Depth=32
Display Frequency=N/A
FSAA=0
Full Screen=No
RTT Preferred Mode=FBO
VSync=No
Video Mode=800 x 600

@ -0,0 +1,7 @@
Render System=OpenGL Rendering Subsystem
[OpenGL Rendering Subsystem]
FSAA=0
Full Screen=No
RTT Preferred Mode=FBO
Video Mode=800 x 600

@ -0,0 +1,19 @@
Render System=Direct3D9 Rendering Subsystem
[Direct3D9 Rendering Subsystem]
Allow NVPerfHUD=No
Anti aliasing=None
Floating-point mode=Fastest
Full Screen=No
Rendering Device=
VSync=No
Video Mode=800 x 600 @ 32-bit colour
[OpenGL Rendering Subsystem]
Colour Depth=32
Display Frequency=60
FSAA=0
Full Screen=No
RTT Preferred Mode=FBO
VSync=No
Video Mode=800 x 600

@ -74,8 +74,12 @@ extern "C" int32_t cpp_configure()
// You can skip this and use root.restoreConfig() to load configuration // You can skip this and use root.restoreConfig() to load configuration
// settings if you were sure there are valid ones saved in ogre.cfg // settings if you were sure there are valid ones saved in ogre.cfg
//if(mRoot->showConfigDialog()) // TODO: This should be controlled through the ini file. It's
if(mRoot->restoreConfig()) // sensible to open the dialoge the first time, and later only
// open it when a command line parameter is given.
if(mRoot->showConfigDialog())
//if(mRoot->restoreConfig())
return 0; return 0;
return 1; return 1;
} }

@ -1,13 +1,14 @@
# Defines plugins to load # Defines plugins to load
# Define plugin folder # Define plugin folder
PluginFolder=/usr/lib/OGRE PluginFolder=..\Ogre\bin\debug\
# Define plugins # Define plugins
Plugin=RenderSystem_GL Plugin=RenderSystem_Direct3D9_d
Plugin=Plugin_ParticleFX Plugin=RenderSystem_GL_d
Plugin=Plugin_BSPSceneManager Plugin=Plugin_ParticleFX_d
Plugin=Plugin_OctreeSceneManager Plugin=Plugin_BSPSceneManager_d
# Plugin=Plugin_CgProgramManager Plugin=Plugin_OctreeSceneManager_d
Plugin=Plugin_CgProgramManager_d

@ -0,0 +1,13 @@
# Defines plugins to load
# Define plugin folder
PluginFolder=/usr/lib/OGRE
# Define plugins
Plugin=RenderSystem_GL
Plugin=Plugin_ParticleFX
Plugin=Plugin_BSPSceneManager
Plugin=Plugin_OctreeSceneManager
# Plugin=Plugin_CgProgramManager

@ -0,0 +1,14 @@
# Defines plugins to load
# Define plugin folder
PluginFolder=..\Ogre\bin\debug\
# Define plugins
Plugin=RenderSystem_Direct3D9_d
Plugin=RenderSystem_GL_d
Plugin=Plugin_ParticleFX_d
Plugin=Plugin_BSPSceneManager_d
Plugin=Plugin_OctreeSceneManager_d
Plugin=Plugin_CgProgramManager_d
Loading…
Cancel
Save