Fixed a bug that caused MTGS to throw "pure virtual function called" errors on rare occasions, and cause crashes in Linux. (Issue 31)

Improved the Win32 build scripts to solve some end case scenarios on some systems/configs, where they would fail due to missing path separators.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@514 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
Jake.Stine 2009-02-17 01:38:02 +00:00
parent 965c8e4b48
commit 68ceb3b8fb
43 changed files with 293 additions and 131 deletions

View File

@ -195,6 +195,7 @@ public:
mtgsThreadObject();
virtual ~mtgsThreadObject();
void Start();
void Close();
void Reset();
void GIFSoftReset( int mask );

View File

@ -188,7 +188,8 @@ typedef void (*GIFRegHandler)(const u32* data);
static GIFRegHandler s_GSHandlers[3] = { RegHandlerSIGNAL, RegHandlerFINISH, RegHandlerLABEL };
mtgsThreadObject::mtgsThreadObject() :
m_RingPos( 0 )
Thread()
, m_RingPos( 0 )
, m_WritePos( 0 )
, m_post_InitDone()
@ -207,12 +208,16 @@ mtgsThreadObject::mtgsThreadObject() :
, m_gsMem( (u8*)m_RingBuffer.GetPtr( m_RingBufferSize ) )
{
memzero_obj( m_path );
}
void mtgsThreadObject::Start()
{
Thread::Start();
// Wait for the thread to finish initialization (it runs GSinit, which can take
// some time since it's creating a new window and all), and then check for errors.
m_post_event.Post(); // tell MTGS we're done here
m_post_InitDone.Wait(); // and wait for MTGS to be done there!
m_post_InitDone.Wait();
if( m_returncode != 0 ) // means the thread failed to init the GS plugin
throw Exception::PluginFailure( "GS", "The GS plugin failed to open/initialize." );
@ -441,9 +446,6 @@ int mtgsThreadObject::Callback()
{
Console::WriteLn("MTGS > Thread Started, Opening GS Plugin...");
// Wait for the MTGS to initialize structures.
m_post_event.Wait();
memcpy_aligned( m_gsMem, PS2MEM_GS, sizeof(m_gsMem) );
GSsetBaseMem( m_gsMem );
@ -1018,6 +1020,7 @@ bool mtgsOpen()
try
{
mtgsThread = new mtgsThreadObject();
mtgsThread->Start();
}
catch( Exception::ThreadCreationError& )
{

View File

@ -29,8 +29,6 @@ namespace Threading
, m_terminated( false )
, m_post_event()
{
if( pthread_create( &m_thread, NULL, _internal_callback, this ) != 0 )
throw Exception::ThreadCreationError();
}
Thread::~Thread()
@ -38,6 +36,12 @@ namespace Threading
Close();
}
void Thread::Start()
{
if( pthread_create( &m_thread, NULL, _internal_callback, this ) != 0 )
throw Exception::ThreadCreationError();
}
void Thread::Close()
{
pthread_cancel( m_thread );

View File

@ -89,6 +89,7 @@ namespace Threading
virtual ~Thread();
Thread();
virtual void Start();
virtual void Close();
// Gets the return code of the thread.

View File

@ -7,16 +7,16 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin
set pcsxoutname=%pcsxoutdir%\%3%4
set pcsxnewname=%pcsxoutdir%\%3-r$WCREV$$WCMODS?m:$%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%~3%4
set pcsxnewname=%pcsxoutdir%\%~3-r$WCREV$$WCMODS?m:$%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %1 %pcsxnewname%
copy /Y %~1 %pcsxoutname%
copy /Y %~1 %pcsxnewname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxnewname%

View File

@ -7,14 +7,14 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin
set pcsxoutname=%pcsxoutdir%%3%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%%~3%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %~1 %pcsxoutname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxoutname%
)

View File

@ -5,14 +5,14 @@ rem
rem ProjectSrcDir - $(ProjectDir)\.. - Directory of project source code.
rem VspropsDir - $(PrjectDir)\vsprops - Directory of this script and its counterparts.
SubWCRev.exe %1 %2\svnrev_template.h %1\svnrev.h
SubWCRev.exe %~1 %~2\svnrev_template.h %~1\svnrev.h
if %ERRORLEVEL% NEQ 0 (
echo Automatic revision update unavailable, using generic template instead.
echo You can safely ignore this message - see svnrev.h for details.
copy /Y %2\svnrev_unknown.h %1\svnrev.h
copy /Y %2\postBuild.unknown %2\postBuild.cmd
copy /Y %~2\svnrev_unknown.h %~1\svnrev.h
copy /Y %~2\postBuild.unknown %~2\postBuild.cmd
) else (
SubWCRev.exe %1 %2\postBuild.tmpl %2\postBuild.cmd
SubWCRev.exe %~1 %~2\postBuild.tmpl %~2\postBuild.cmd
)
rem Always return an errorlevel of 0 -- this allows compilation to continue if SubWCRev failed.

View File

@ -7,16 +7,16 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%3%4
set pcsxnewname=%pcsxoutdir%\%3-r$WCREV$$WCMODS?m:$%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%~3%4
set pcsxnewname=%pcsxoutdir%\%~3-r$WCREV$$WCMODS?m:$%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %1 %pcsxnewname%
copy /Y %~1 %pcsxoutname%
copy /Y %~1 %pcsxnewname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxnewname%

View File

@ -7,14 +7,14 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%%3%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%%~3%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %~1 %pcsxoutname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxoutname%
)

View File

@ -5,14 +5,14 @@ rem
rem ProjectSrcDir - $(ProjectDir)\.. - Directory of project source code.
rem VspropsDir - $(PrjectDir)\vsprops - Directory of this script and its counterparts.
SubWCRev.exe %1 %2\svnrev_template.h %1\svnrev.h
SubWCRev.exe %~1 %~2\svnrev_template.h %~1\svnrev.h
if %ERRORLEVEL% NEQ 0 (
echo Automatic revision update unavailable, using generic template instead.
echo You can safely ignore this message - see svnrev.h for details.
copy /Y %2\svnrev_unknown.h %1\svnrev.h
copy /Y %2\postBuild.unknown %2\postBuild.cmd
copy /Y %~2\svnrev_unknown.h %~1\svnrev.h
copy /Y %~2\postBuild.unknown %~2\postBuild.cmd
) else (
SubWCRev.exe %1 %2\postBuild.tmpl %2\postBuild.cmd
SubWCRev.exe %~1 %~2\postBuild.tmpl %~2\postBuild.cmd
)
rem Always return an errorlevel of 0 -- this allows compilation to continue if SubWCRev failed.

View File

@ -1,2 +0,0 @@
#define SVN_REV $WCREV$
#define SVN_MODS $WCMODS?1:0$

View File

@ -27,6 +27,13 @@
/>
<Tool
Name="VCPreBuildEventTool"
CommandLine="SubWCRev.exe $(ProjectDir) ..\..\common\tsvnrev\svnrev_template.h $(ProjectDir)svnrev.h"
CommandLine=".\vsprops\preBuild.cmd &quot;$(ProjectDir)\&quot; &quot;$(ProjectDir)vsprops&quot;"
/>
<!--
<Tool
Name="VCPostBuildEventTool"
CommandLine=".\vsprops\postBuild.cmd &quot;$(TargetPath)&quot; &quot;$(SolutionDir)&quot; &quot;$(TargetName)&quot; $(TargetExt)"
/>
-->
</VisualStudioPropertySheet>

View File

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="windows-1250"?>
<VisualStudioPropertySheet
ProjectType="Visual C++"
Version="8.00"
Name="plugins"
OutputDirectory="$(ProjectDir)\bin"
IntermediateDirectory="$(ConfigurationName)"
>
<Tool
Name="VCPreBuildEventTool"
CommandLine=".\vsprops\preBuild.cmd &quot;$(ProjectDir)\..&quot; &quot;$(ProjectDir)vsprops&quot;"
/>
<Tool
Name="VCPostBuildEventTool"
CommandLine=".\vsprops\postBuild.cmd &quot;$(TargetPath)&quot; &quot;$(SolutionDir)&quot; &quot;$(TargetName)&quot; $(TargetExt)"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\;&quot;$(ProjectDir)&quot;;..\common;..\3rdparty"
PreprocessorDefinitions="__WIN32__;WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_NO_DEPRECATE"
StructMemberAlignment="5"
RuntimeTypeInfo="false"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="0"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
/>
</VisualStudioPropertySheet>

View File

@ -0,0 +1,24 @@
@echo off
rem
rem Usage: postBuild.cmd SourcePath DestDir DestFile DestExt
rem
rem SourcePath - $(TargetPath) - Fully qualified path of the generated target file.
rem DestDir - $(SolutionDir) - Directory of the destination, usually the same as the solution.
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%~3%4
set pcsxnewname=%pcsxoutdir%\%~3-r$WCREV$$WCMODS?m:$%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %~1 %pcsxoutname%
copy /Y %~1 %pcsxnewname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxnewname%
)
exit 0

View File

@ -0,0 +1,21 @@
@echo off
rem
rem Usage: postBuild.cmd SourcePath DestDir DestFile DestExt
rem
rem SourcePath - $(TargetPath) - Fully qualified path of the generated target file.
rem DestDir - $(SolutionDir) - Directory of the destination, usually the same as the solution.
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%%~3%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %~1 %pcsxoutname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxoutname%
)
set ERRORLEVEL=0

View File

@ -0,0 +1,20 @@
@echo off
rem Usage: preBuild.cmd ProjectSrcDir VspropsDir
rem
rem ProjectSrcDir - $(ProjectDir)\.. - Directory of project source code.
rem VspropsDir - $(PrjectDir)\vsprops - Directory of this script and its counterparts.
SubWCRev.exe %~1 %~2\svnrev_template.h %~1\svnrev.h
if %ERRORLEVEL% NEQ 0 (
echo Automatic revision update unavailable, using generic template instead.
echo You can safely ignore this message - see svnrev.h for details.
copy /Y %~2\svnrev_unknown.h %~1\svnrev.h
copy /Y %~2\postBuild.unknown %~2\postBuild.cmd
) else (
SubWCRev.exe %~1 %~2\postBuild.tmpl %~2\postBuild.cmd
)
rem Always return an errorlevel of 0 -- this allows compilation to continue if SubWCRev failed.
exit 0

View File

@ -0,0 +1,18 @@
// svnrev_template.h --> svnrev.h
//
// This file acts as a template for the automatic SVN revision/version tag.
// It is used by the utility SubWCrev.exe to create an "svnrev.h" file for
// whichever project is being compiled (as indicated by command line options
// passed to SubWCRev.exe during the project's pre-build step).
//
// The SubWCRev.exe utility is part of TortoiseSVN and requires several DLLs
// installed by TortoiseSVN, so it will only be available if you have TortoiseSVN
// installed on your system. If you do not have it installed, a generic template
// is used instead (see svnrev_generic.h). Having TortoiseSVN is handy but not
// necessary. If you do not have it installed, everything will still compile
// fine except without the SVN revision tagged to the application/dll version.
//
// TortoiseSVN can be downloaded from http://tortoisesvn.tigris.org
#define SVN_REV $WCREV$
#define SVN_MODS $WCMODS?1:0$

View File

@ -0,0 +1,23 @@
// svnrev_genric.h --> svnrev.h
//
// This file acts as a placebo for people who do not have TortoiseSVN installed.
// It provides "empty" revision information to the Pcsx2 Playground projects in
// the absence of real revisions derived from the repository being built.
//
// This file does not affect application/dll builds in any significant manner,
// other than the lack of automatic revision tags inserted into the app (which
// is very convenient but hardly necessary).
//
// See svn_template.h for more information on how the process of revision
// templating works.
//
// If you would like to enable automatic revisin tagging, TortoiseSVN can be
// downloaded from http://tortoisesvn.tigris.org
#define SVN_REV_UNKNOWN
// The following defines are included so that code will still compile even if it
// doesn't check for the SVN_REV_UNKNOWN define.
#define SVN_REV 0
#define SVN_MODS ""

View File

@ -56,6 +56,7 @@
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)\$(ProjectName)-dbg.dll"
ModuleDefinitionFile=".\GSdx.def"
DelayLoadDLLs=""
DataExecutionPrevention="0"
@ -121,6 +122,7 @@
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)\$(ProjectName).dll"
ModuleDefinitionFile=".\GSdx.def"
DelayLoadDLLs=""
DataExecutionPrevention="0"
@ -185,6 +187,7 @@
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)\$(ProjectName)-dbg.dll"
ModuleDefinitionFile=".\GSdx.def"
DelayLoadDLLs=""
DataExecutionPrevention="0"
@ -250,6 +253,7 @@
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)\$(ProjectName).dll"
ModuleDefinitionFile=".\GSdx.def"
DelayLoadDLLs=""
DataExecutionPrevention="0"
@ -315,6 +319,7 @@
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)\$(ProjectName).dll"
ModuleDefinitionFile=".\GSdx.def"
DelayLoadDLLs=""
DataExecutionPrevention="0"
@ -379,6 +384,7 @@
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)\$(ProjectName)-dbg.dll"
ModuleDefinitionFile=".\GSdx.def"
DelayLoadDLLs=""
DataExecutionPrevention="0"
@ -443,6 +449,7 @@
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)\$(ProjectName)-dbg.dll"
ModuleDefinitionFile=".\GSdx.def"
DelayLoadDLLs=""
DataExecutionPrevention="0"
@ -508,6 +515,7 @@
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)\$(ProjectName).dll"
ModuleDefinitionFile=".\GSdx.def"
DelayLoadDLLs=""
DataExecutionPrevention="0"

View File

@ -7,16 +7,16 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%3%4
set pcsxnewname=%pcsxoutdir%\%3-r$WCREV$$WCMODS?m:$%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%~3%4
set pcsxnewname=%pcsxoutdir%\%~3-r$WCREV$$WCMODS?m:$%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %1 %pcsxnewname%
copy /Y %~1 %pcsxoutname%
copy /Y %~1 %pcsxnewname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxnewname%

View File

@ -7,14 +7,14 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%%3%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%%~3%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %~1 %pcsxoutname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxoutname%
)

View File

@ -5,14 +5,14 @@ rem
rem ProjectSrcDir - $(ProjectDir)\.. - Directory of project source code.
rem VspropsDir - $(PrjectDir)\vsprops - Directory of this script and its counterparts.
SubWCRev.exe %1 %2\svnrev_template.h %1\svnrev.h
SubWCRev.exe %~1 %~2\svnrev_template.h %~1\svnrev.h
if %ERRORLEVEL% NEQ 0 (
echo Automatic revision update unavailable, using generic template instead.
echo You can safely ignore this message - see svnrev.h for details.
copy /Y %2\svnrev_unknown.h %1\svnrev.h
copy /Y %2\postBuild.unknown %2\postBuild.cmd
copy /Y %~2\svnrev_unknown.h %~1\svnrev.h
copy /Y %~2\postBuild.unknown %~2\postBuild.cmd
) else (
SubWCRev.exe %1 %2\postBuild.tmpl %2\postBuild.cmd
SubWCRev.exe %~1 %~2\postBuild.tmpl %~2\postBuild.cmd
)
rem Always return an errorlevel of 0 -- this allows compilation to continue if SubWCRev failed.

View File

@ -7,16 +7,16 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%3%4
set pcsxnewname=%pcsxoutdir%\%3-r$WCREV$$WCMODS?m:$%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%~3%4
set pcsxnewname=%pcsxoutdir%\%~3-r$WCREV$$WCMODS?m:$%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %1 %pcsxnewname%
copy /Y %~1 %pcsxoutname%
copy /Y %~1 %pcsxnewname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxnewname%

View File

@ -7,14 +7,14 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%%3%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%%~3%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %~1 %pcsxoutname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxoutname%
)

View File

@ -5,14 +5,14 @@ rem
rem ProjectSrcDir - $(ProjectDir)\.. - Directory of project source code.
rem VspropsDir - $(PrjectDir)\vsprops - Directory of this script and its counterparts.
SubWCRev.exe %1 %2\svnrev_template.h %1\svnrev.h
SubWCRev.exe %~1 %~2\svnrev_template.h %~1\svnrev.h
if %ERRORLEVEL% NEQ 0 (
echo Automatic revision update unavailable, using generic template instead.
echo You can safely ignore this message - see svnrev.h for details.
copy /Y %2\svnrev_unknown.h %1\svnrev.h
copy /Y %2\postBuild.unknown %2\postBuild.cmd
copy /Y %~2\svnrev_unknown.h %~1\svnrev.h
copy /Y %~2\postBuild.unknown %~2\postBuild.cmd
) else (
SubWCRev.exe %1 %2\postBuild.tmpl %2\postBuild.cmd
SubWCRev.exe %~1 %~2\postBuild.tmpl %~2\postBuild.cmd
)
rem Always return an errorlevel of 0 -- this allows compilation to continue if SubWCRev failed.

View File

@ -7,16 +7,16 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%3%4
set pcsxnewname=%pcsxoutdir%\%3-r$WCREV$$WCMODS?m:$%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%~3%4
set pcsxnewname=%pcsxoutdir%\%~3-r$WCREV$$WCMODS?m:$%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %1 %pcsxnewname%
copy /Y %~1 %pcsxoutname%
copy /Y %~1 %pcsxnewname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxnewname%

View File

@ -7,14 +7,14 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%%3%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%%~3%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %~1 %pcsxoutname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxoutname%
)

View File

@ -5,14 +5,14 @@ rem
rem ProjectSrcDir - $(ProjectDir)\.. - Directory of project source code.
rem VspropsDir - $(PrjectDir)\vsprops - Directory of this script and its counterparts.
SubWCRev.exe %1 %2\svnrev_template.h %1\svnrev.h
SubWCRev.exe %~1 %~2\svnrev_template.h %~1\svnrev.h
if %ERRORLEVEL% NEQ 0 (
echo Automatic revision update unavailable, using generic template instead.
echo You can safely ignore this message - see svnrev.h for details.
copy /Y %2\svnrev_unknown.h %1\svnrev.h
copy /Y %2\postBuild.unknown %2\postBuild.cmd
copy /Y %~2\svnrev_unknown.h %~1\svnrev.h
copy /Y %~2\postBuild.unknown %~2\postBuild.cmd
) else (
SubWCRev.exe %1 %2\postBuild.tmpl %2\postBuild.cmd
SubWCRev.exe %~1 %~2\postBuild.tmpl %~2\postBuild.cmd
)
rem Always return an errorlevel of 0 -- this allows compilation to continue if SubWCRev failed.

View File

@ -7,16 +7,16 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%3%4
set pcsxnewname=%pcsxoutdir%\%3-r$WCREV$$WCMODS?m:$%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%~3%4
set pcsxnewname=%pcsxoutdir%\%~3-r$WCREV$$WCMODS?m:$%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %1 %pcsxnewname%
copy /Y %~1 %pcsxoutname%
copy /Y %~1 %pcsxnewname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxnewname%

View File

@ -7,14 +7,14 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%%3%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%%~3%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %~1 %pcsxoutname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxoutname%
)

View File

@ -5,14 +5,14 @@ rem
rem ProjectSrcDir - $(ProjectDir)\.. - Directory of project source code.
rem VspropsDir - $(PrjectDir)\vsprops - Directory of this script and its counterparts.
SubWCRev.exe %1 %2\svnrev_template.h %1\svnrev.h
SubWCRev.exe %~1 %~2\svnrev_template.h %~1\svnrev.h
if %ERRORLEVEL% NEQ 0 (
echo Automatic revision update unavailable, using generic template instead.
echo You can safely ignore this message - see svnrev.h for details.
copy /Y %2\svnrev_unknown.h %1\svnrev.h
copy /Y %2\postBuild.unknown %2\postBuild.cmd
copy /Y %~2\svnrev_unknown.h %~1\svnrev.h
copy /Y %~2\postBuild.unknown %~2\postBuild.cmd
) else (
SubWCRev.exe %1 %2\postBuild.tmpl %2\postBuild.cmd
SubWCRev.exe %~1 %~2\postBuild.tmpl %~2\postBuild.cmd
)
rem Always return an errorlevel of 0 -- this allows compilation to continue if SubWCRev failed.

View File

@ -7,16 +7,16 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%3%4
set pcsxnewname=%pcsxoutdir%\%3-r$WCREV$$WCMODS?m:$%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%~3%4
set pcsxnewname=%pcsxoutdir%\%~3-r$WCREV$$WCMODS?m:$%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %1 %pcsxnewname%
copy /Y %~1 %pcsxoutname%
copy /Y %~1 %pcsxnewname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxnewname%

View File

@ -7,14 +7,14 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%%3%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%%~3%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %~1 %pcsxoutname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxoutname%
)

View File

@ -5,14 +5,14 @@ rem
rem ProjectSrcDir - $(ProjectDir)\.. - Directory of project source code.
rem VspropsDir - $(PrjectDir)\vsprops - Directory of this script and its counterparts.
SubWCRev.exe %1 %2\svnrev_template.h %1\svnrev.h
SubWCRev.exe %~1 %~2\svnrev_template.h %~1\svnrev.h
if %ERRORLEVEL% NEQ 0 (
echo Automatic revision update unavailable, using generic template instead.
echo You can safely ignore this message - see svnrev.h for details.
copy /Y %2\svnrev_unknown.h %1\svnrev.h
copy /Y %2\postBuild.unknown %2\postBuild.cmd
copy /Y %~2\svnrev_unknown.h %~1\svnrev.h
copy /Y %~2\postBuild.unknown %~2\postBuild.cmd
) else (
SubWCRev.exe %1 %2\postBuild.tmpl %2\postBuild.cmd
SubWCRev.exe %~1 %~2\postBuild.tmpl %~2\postBuild.cmd
)
rem Always return an errorlevel of 0 -- this allows compilation to continue if SubWCRev failed.

View File

@ -7,16 +7,16 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%3%4
set pcsxnewname=%pcsxoutdir%\%3-r$WCREV$$WCMODS?m:$%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%~3%4
set pcsxnewname=%pcsxoutdir%\%~3-r$WCREV$$WCMODS?m:$%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %1 %pcsxnewname%
copy /Y %~1 %pcsxoutname%
copy /Y %~1 %pcsxnewname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxnewname%

View File

@ -7,14 +7,14 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%%3%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%%~3%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %~1 %pcsxoutname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxoutname%
)

View File

@ -5,14 +5,14 @@ rem
rem ProjectSrcDir - $(ProjectDir)\.. - Directory of project source code.
rem VspropsDir - $(PrjectDir)\vsprops - Directory of this script and its counterparts.
SubWCRev.exe %1 %2\svnrev_template.h %1\svnrev.h
SubWCRev.exe %~1 %~2\svnrev_template.h %~1\svnrev.h
if %ERRORLEVEL% NEQ 0 (
echo Automatic revision update unavailable, using generic template instead.
echo You can safely ignore this message - see svnrev.h for details.
copy /Y %2\svnrev_unknown.h %1\svnrev.h
copy /Y %2\postBuild.unknown %2\postBuild.cmd
copy /Y %~2\svnrev_unknown.h %~1\svnrev.h
copy /Y %~2\postBuild.unknown %~2\postBuild.cmd
) else (
SubWCRev.exe %1 %2\postBuild.tmpl %2\postBuild.cmd
SubWCRev.exe %~1 %~2\postBuild.tmpl %~2\postBuild.cmd
)
rem Always return an errorlevel of 0 -- this allows compilation to continue if SubWCRev failed.

View File

@ -7,16 +7,16 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%3%4
set pcsxnewname=%pcsxoutdir%\%3-r$WCREV$$WCMODS?m:$%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%~3%4
set pcsxnewname=%pcsxoutdir%\%~3-r$WCREV$$WCMODS?m:$%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %1 %pcsxnewname%
copy /Y %~1 %pcsxoutname%
copy /Y %~1 %pcsxnewname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxnewname%

View File

@ -7,14 +7,14 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%%3%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%%~3%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %~1 %pcsxoutname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxoutname%
)

View File

@ -5,14 +5,14 @@ rem
rem ProjectSrcDir - $(ProjectDir)\.. - Directory of project source code.
rem VspropsDir - $(PrjectDir)\vsprops - Directory of this script and its counterparts.
SubWCRev.exe %1 %2\svnrev_template.h %1\svnrev.h
SubWCRev.exe %~1 %~2\svnrev_template.h %~1\svnrev.h
if %ERRORLEVEL% NEQ 0 (
echo Automatic revision update unavailable, using generic template instead.
echo You can safely ignore this message - see svnrev.h for details.
copy /Y %2\svnrev_unknown.h %1\svnrev.h
copy /Y %2\postBuild.unknown %2\postBuild.cmd
copy /Y %~2\svnrev_unknown.h %~1\svnrev.h
copy /Y %~2\postBuild.unknown %~2\postBuild.cmd
) else (
SubWCRev.exe %1 %2\postBuild.tmpl %2\postBuild.cmd
SubWCRev.exe %~1 %~2\postBuild.tmpl %~2\postBuild.cmd
)
rem Always return an errorlevel of 0 -- this allows compilation to continue if SubWCRev failed.

View File

@ -7,16 +7,16 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%3%4
set pcsxnewname=%pcsxoutdir%\%3-r$WCREV$$WCMODS?m:$%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%\%~3%4
set pcsxnewname=%pcsxoutdir%\%~3-r$WCREV$$WCMODS?m:$%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %1 %pcsxnewname%
copy /Y %~1 %pcsxoutname%
copy /Y %~1 %pcsxnewname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxnewname%

View File

@ -7,14 +7,14 @@ rem DestDir - $(SolutionDir) - Directory of the destination, usually the sam
rem DestFile - Base filename of the target/dest, without extension!
rem DestExt - Extension of the target/dest!
set pcsxoutdir=%2\bin\plugins
set pcsxoutname=%pcsxoutdir%%3%4
set pcsxoutdir=%~2\bin\plugins
set pcsxoutname=%pcsxoutdir%%~3%4
IF NOT EXIST %pcsxoutdir% (
md %pcsxoutdir%
)
copy /Y %1 %pcsxoutname%
copy /Y %~1 %pcsxoutname%
if ERRORLEVEL 0 (
echo Target copied to %pcsxoutname%
)

View File

@ -5,14 +5,14 @@ rem
rem ProjectSrcDir - $(ProjectDir)\.. - Directory of project source code.
rem VspropsDir - $(PrjectDir)\vsprops - Directory of this script and its counterparts.
SubWCRev.exe %1 %2\svnrev_template.h %1\svnrev.h
SubWCRev.exe %~1 %~2\svnrev_template.h %~1\svnrev.h
if %ERRORLEVEL% NEQ 0 (
echo Automatic revision update unavailable, using generic template instead.
echo You can safely ignore this message - see svnrev.h for details.
copy /Y %2\svnrev_unknown.h %1\svnrev.h
copy /Y %2\postBuild.unknown %2\postBuild.cmd
copy /Y %~2\svnrev_unknown.h %~1\svnrev.h
copy /Y %~2\postBuild.unknown %~2\postBuild.cmd
) else (
SubWCRev.exe %1 %2\postBuild.tmpl %2\postBuild.cmd
SubWCRev.exe %~1 %~2\postBuild.tmpl %~2\postBuild.cmd
)
rem Always return an errorlevel of 0 -- this allows compilation to continue if SubWCRev failed.