minor platform dependent fixes to allow compilation under Xenon
This commit is contained in:
@@ -42,8 +42,10 @@ MsvcGenSubDir TOP msvc 7 : 7 ;
|
||||
MsvcGenSubDir TOP msvc 71 : 71 ;
|
||||
MsvcGenSubDir TOP msvc sn71 : sn71 ;
|
||||
MsvcGenSubDir TOP msvc 8 : 8 ;
|
||||
MsvcGenSubDir TOP msvc xenon8 : xenon8 ;
|
||||
MsvcGenTemplateDir TOP mk msvcgen ;
|
||||
MsvcGenWorkspace bullet ;
|
||||
MsvcGenWorkspace bullet : : "grp.+_(?!bullet$)" ;
|
||||
MsvcGenWorkspace bullet_corelib : libbulletcollision libbulletdynamics libbulletmath libbulletmultithreaded : "grp.+_(?!bullet_corelib$)" ;
|
||||
|
||||
# Set project-specific compiler and linker options for msvcgen.
|
||||
MsvcGenConfig GL.AVAILABLE : yes ;
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
#
|
||||
#==============================================================================
|
||||
|
||||
MSVCGEN_SUPPORTED_VERSIONS = 6 7 71 8 sn71 ;
|
||||
MSVCGEN_SUPPORTED_VERSIONS = 6 7 71 8 sn71 xenon8 ;
|
||||
MSVCGEN_BUILD_ROOT ?= [ ConcatDirs $(BUILDTOP) out ] ;
|
||||
MSVCGEN_BUILD_TEMP ?= [ ConcatDirs $(MSVCGEN_BUILD_ROOT) msvcgen ] ;
|
||||
|
||||
@@ -435,6 +435,7 @@ MSVCGEN_STRIP_ROOT = $(MSVCGEN_BUILD_ROOT)/ $(TOP)/ ;
|
||||
# of protecting only "." since it arises frequently.)
|
||||
MSVCGEN_SED_PROTECT = "$(SED) 's:\\.:\\\\\\.:g'" ;
|
||||
|
||||
MSVC_PLATFORM_SUFFIX = ;
|
||||
MSVC_VERSION ?= 7 ;
|
||||
if $(MSVC_VERSION) = 6
|
||||
{
|
||||
@@ -445,13 +446,14 @@ if $(MSVC_VERSION) = 6
|
||||
MSVC_FORCE_CRLF = yes ;
|
||||
MSVC_TEMPLATE_SUFFIX = 6 ;
|
||||
}
|
||||
else if $(MSVC_VERSION) = 7 || $(MSVC_VERSION) = 71 || $(MSVC_VERSION) = 8 || $(MSVC_VERSION) = sn71
|
||||
else if $(MSVC_VERSION) = 7 || $(MSVC_VERSION) = 71 || $(MSVC_VERSION) = 8 || $(MSVC_VERSION) = sn71 || $(MSVC_VERSION) = xenon8
|
||||
{
|
||||
SUFPRJ = vcproj ;
|
||||
SUFWSP = sln ;
|
||||
MSVC_SUFLIB = liiixxiib ;
|
||||
MSVC_SUFEXE = exe ;
|
||||
|
||||
|
||||
|
||||
MSVC_FORCE_CRLF = no ;
|
||||
MSVC_TEMPLATE_SUFFIX = 7 ;
|
||||
if $(MSVC_VERSION) = 7
|
||||
@@ -477,6 +479,13 @@ else if $(MSVC_VERSION) = 7 || $(MSVC_VERSION) = 71 || $(MSVC_VERSION) = 8 || $(
|
||||
MSVC_SUFLIB = a ;
|
||||
MSVC_SUFEXE = elf ;
|
||||
}
|
||||
else if $(MSVC_VERSION) = xenon8
|
||||
{
|
||||
MSVC_FORMATVERSION_PRJ = 8.00 ;
|
||||
MSVC_FORMATVERSION_WSP = 9.00 ;
|
||||
MSVC_TEMPLATE_SUFFIX = xenon8 ;
|
||||
MSVC_PLATFORM_SUFFIX = _xenon_ ;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -732,6 +741,7 @@ rule MsvcProject
|
||||
"librarydelay|$(MSVC.LIBRARY_DELAY.$(type))"
|
||||
"msvcversion|$(MSVC_VERSION)"
|
||||
"static|$($(rawname)_STATIC)"
|
||||
"platformsuffix|$(MSVC_PLATFORM_SUFFIX)"
|
||||
$(MSVCGEN_VARIABLES)
|
||||
: notfile : $(respdir) ;
|
||||
MsvcRmTemps msvcgen : $(respfile) ;
|
||||
|
||||
@@ -102,7 +102,7 @@
|
||||
[% END %]
|
||||
|
||||
[% MACRO linker_common BLOCK -%]
|
||||
OutputFile="[% path([my.doc.buildroot.0, my.doc.target.0]) %]"
|
||||
OutputFile="[% path([my.doc.buildroot.0, glue([my.doc.target.0, my.doc.platformsuffix.0])]) %]"
|
||||
[% END %]
|
||||
|
||||
[% MACRO linker_app_release(subsys) BLOCK -%]
|
||||
@@ -138,8 +138,11 @@
|
||||
[% END %]
|
||||
|
||||
[% MACRO library_outfile(suffix) BLOCK -%]
|
||||
OutputFile="[% worklibout %]\[% my.doc.project.0 %][% suffix %].lib"
|
||||
OutputFile="[% worklibout %]\[% my.doc.project.0 %][% my.doc.platformsuffix.0 %][% suffix %].lib"
|
||||
[% END %]
|
||||
[% MACRO librarian_library_release GET library_outfile('') %]
|
||||
[% MACRO librarian_library_debug GET library_outfile('_d') %]
|
||||
[% MACRO librarian_group GET library_outfile('') %]
|
||||
[% MACRO postbuild_library BLOCK -%]
|
||||
CommandLine="xcopy /r /y $(TARGETPATH) $(PROJECTDIR)..\..\lib\"
|
||||
[% END %]
|
||||
|
||||
147
mk/msvcgen/projectxenon8.tlib
Normal file
147
mk/msvcgen/projectxenon8.tlib
Normal file
@@ -0,0 +1,147 @@
|
||||
[% FILTER null;
|
||||
#==============================================================================
|
||||
# TemplateToolkit2 template for MSVC7 project (vcproj) file.
|
||||
# Copyright (C) 2004 by Eric Sunshine <sunshine@sunshineco.com>
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Library General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or (at your
|
||||
# option) any later version.
|
||||
#
|
||||
# This library 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 Library General Public
|
||||
# License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Library General Public License
|
||||
# along with this library; if not, write to the Free Software Foundation,
|
||||
# Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
#
|
||||
#==============================================================================
|
||||
PROCESS macros.tlib;
|
||||
PROCESS control.tlib;
|
||||
PROCESS projectx7.tlib;
|
||||
|
||||
MACRO composedefs(defs) GET compose('defines', defs, ';');
|
||||
MACRO composedirs(tag, seed) GET composepaths(${"build.${tag}key"},seed,';');
|
||||
|
||||
my = {};
|
||||
load(respfile, 'doc');
|
||||
FOREACH f IN my.doc.customize; PROCESS $f | null; END;
|
||||
|
||||
files = striproots(filter(my.doc.file).split('\|')).split('\|').sort;
|
||||
END -%]
|
||||
<?xml version="1.0" encoding = "Windows-1252"?>
|
||||
<VisualStudioProject
|
||||
ProjectType="Visual C++"
|
||||
Version="[% my.doc.formatversion.0 %]"
|
||||
Name="[% my.doc.project.0 %]"
|
||||
ProjectGUID="{[% guid(my.doc.project.0) %]}"
|
||||
SccProjectName=""
|
||||
SccLocalPath="">
|
||||
<Platforms>
|
||||
<Platform
|
||||
Name="Xbox 360"/>
|
||||
</Platforms>
|
||||
<Configurations>
|
||||
[% FOREACH build IN builds -%]
|
||||
<Configuration
|
||||
Name="[% build.name %]|Xbox 360"
|
||||
OutputDirectory="[% workbuild([]) %]"
|
||||
IntermediateDirectory="[% workbuild([]) %]"
|
||||
[% interpolate('global') -%]
|
||||
UseOfMFC="0"
|
||||
ATLMinimizesCRunTimeLibraryUsage="FALSE">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
[% interpolate('compiler') -%]
|
||||
PreprocessorDefinitions="
|
||||
[%- composedefs(['WIN32','_XBOX']) %]"
|
||||
OptimizeForProcessor="1"
|
||||
ExceptionHandling="0"
|
||||
AdditionalOptions="[% flags(compose('cflags', [], ' ')) | html %] [% flags(compose('cflags7', [], ' ')) | html %]"
|
||||
AdditionalIncludeDirectories="[% composedirs('incdirs', ['.']) %]"
|
||||
PrecompiledHeaderFile="[% workbuild([my.doc.project.0,'.pch']) %]"
|
||||
AssemblerListingLocation="[% workbuild([]) %]"
|
||||
ObjectFile="[% workbuild([]) %]"
|
||||
ProgramDataBaseFileName="[% workbuild([my.doc.rawtarget.0,'.pdb']) %]"
|
||||
WarningLevel="3"
|
||||
SuppressStartupBanner="TRUE"
|
||||
Detect64BitPortabilityProblems="TRUE"
|
||||
TreatWChar_tAsBuiltInType="false"
|
||||
CompileAs="0"/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
[% interpolate('linker') -%]
|
||||
AdditionalOptions="[% flags(compose('lflags', [], ' ')) | html %] [% flags(compose('lflags7', [], ' ')) | html %]"
|
||||
AdditionalDependencies="[% compose('libs', [], ' ') %]"
|
||||
IgnoreImportLibrary="TRUE"
|
||||
SuppressStartupBanner="TRUE"
|
||||
GenerateManifest="false"
|
||||
AdditionalLibraryDirectories="[% composedirs('libdirs', []) %]"
|
||||
ProgramDatabaseFile="[% workbuild([my.doc.rawtarget.0,'.pdb']) %]"
|
||||
TargetMachine="1"/>
|
||||
<Tool
|
||||
Name="VCLibrarianTool"
|
||||
[% interpolate('librarian') -%]
|
||||
SuppressStartupBanner="TRUE"/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"
|
||||
PreprocessorDefinitions="[% composedefs([]) %]"
|
||||
MkTypLibCompatible="TRUE"
|
||||
SuppressStartupBanner="TRUE"
|
||||
TargetEnvironment="1"
|
||||
TypeLibraryName="[% workbuild([my.doc.project.0,'.tlb']) %]"/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"
|
||||
[% interpolate('postbuild') -%]
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="[% composedefs([glue (['PROJECTGEN_VERSION', my.doc.msvcversion.0], '=')]) %]"
|
||||
AdditionalIncludeDirectories="[% composedirs('incdirs', ['.']) %]"
|
||||
Culture="1033"/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"/>
|
||||
<Tool
|
||||
Name="VCWebDeploymentTool"/>
|
||||
</Configuration>
|
||||
[% END -%]
|
||||
</Configurations>
|
||||
<Files>
|
||||
[%- FOREACH group IN groups %]
|
||||
[%- items = files.grep(group.types) %]
|
||||
[%- IF items.size > 0 %]
|
||||
<Filter
|
||||
Name="[% group.name %]"
|
||||
Filter="">
|
||||
[%- FOREACH file IN items %]
|
||||
<File
|
||||
RelativePath="[% path([my.doc.sourceroot.0, file]) %]">
|
||||
[%- IF my.doc.static %]
|
||||
[%- UNLESS file.match('\\.(h|hpp|rc)$') %]
|
||||
[%- FOREACH build IN builds %]
|
||||
<FileConfiguration
|
||||
Name="[% build.name %]|Win32">
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
ObjectFile="[% workbuild([file.replace('/', '_'), '.obj']) %]"/>
|
||||
</FileConfiguration>
|
||||
[%- END %]
|
||||
[%- END %]
|
||||
[%- END %]
|
||||
</File>
|
||||
[%- END %]
|
||||
</Filter>
|
||||
[%- END %]
|
||||
[%- END %]
|
||||
</Files>
|
||||
<Globals>
|
||||
</Globals>
|
||||
</VisualStudioProject>
|
||||
66
mk/msvcgen/workspacexenon8.tlib
Normal file
66
mk/msvcgen/workspacexenon8.tlib
Normal file
@@ -0,0 +1,66 @@
|
||||
[% FILTER null;
|
||||
#==============================================================================
|
||||
# TemplateToolkit2 template for MSVC7 solution (sln) file.
|
||||
# Copyright (C) 2004 by Eric Sunshine <sunshine@sunshineco.com>
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Library General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or (at your
|
||||
# option) any later version.
|
||||
#
|
||||
# This library 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 Library General Public
|
||||
# License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Library General Public License
|
||||
# along with this library; if not, write to the Free Software Foundation,
|
||||
# Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
#
|
||||
#==============================================================================
|
||||
PROCESS macros.tlib;
|
||||
PROCESS control.tlib;
|
||||
|
||||
my = {};
|
||||
load(respfile, 'doc');
|
||||
FOREACH f IN my.doc.customize; PROCESS $f | null; END;
|
||||
|
||||
projects = filter(my.doc.project).split('\|').sort;
|
||||
guids = {};
|
||||
FOREACH project IN projects;
|
||||
guids.$project = guid(project);
|
||||
END;
|
||||
END -%]
|
||||
Microsoft Visual Studio Solution File, Format Version [% my.doc.formatversion.0 %]
|
||||
# Visual C++ Express 2005
|
||||
[% FOREACH project IN projects -%]
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "[% project %]", "
|
||||
[%- project %].vcproj", "{[% guids.$project %]}"
|
||||
EndProject
|
||||
[% END -%]
|
||||
Global
|
||||
GlobalSection(SolutionConfiguration) = preSolution
|
||||
[% n = 0; FOREACH build IN builds -%]
|
||||
ConfigName.[% n; n = n + 1 %] = [% build.name %]
|
||||
[% END -%]
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectDependencies) = postSolution
|
||||
[% FOREACH project IN projects; g = guids.$project; n = 0 -%]
|
||||
[% FOREACH dep IN filter(my.doc.$project).split('\|').sort -%]
|
||||
{[% g %]}.[% n; n = n + 1 %] = {[% guids.$dep %]}
|
||||
[% END -%]
|
||||
[% END -%]
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfiguration) = postSolution
|
||||
[% FOREACH project IN projects; g = guids.$project -%]
|
||||
[% FOREACH build IN builds -%]
|
||||
{[% g %]}.[% build.name %].ActiveCfg = [% build.name %]|Xbox 360
|
||||
{[% g %]}.[% build.name %].Build.0 = [% build.name %]|Xbox 360
|
||||
[% END -%]
|
||||
[% END -%]
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityAddIns) = postSolution
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
@@ -49,8 +49,13 @@ typedef uint64_t __int64;
|
||||
#define NOWINRES
|
||||
#define NOMCX
|
||||
#define NOIME
|
||||
#ifdef _XBOX
|
||||
#include <Xtl.h>
|
||||
#else
|
||||
#include <windows.h>
|
||||
#endif
|
||||
#include <time.h>
|
||||
|
||||
#else
|
||||
#include <sys/time.h>
|
||||
#endif
|
||||
@@ -704,3 +709,4 @@ std::string btProfiler::createStatsString(BlockTimingMethod method)
|
||||
|
||||
#endif //QUICK_PROF_H
|
||||
|
||||
|
||||
|
||||
@@ -35,6 +35,11 @@ subject to the following restrictions:
|
||||
#pragma warning(disable:4786)
|
||||
#define SIMD_FORCE_INLINE __forceinline
|
||||
#define ATTRIBUTE_ALIGNED16(a) __declspec(align(16)) a
|
||||
#ifdef _XBOX
|
||||
#define BT_USE_VMX128
|
||||
#else
|
||||
#define BT_USE_SSE
|
||||
#endif
|
||||
#endif //__MINGW32__
|
||||
|
||||
#include <assert.h>
|
||||
|
||||
Reference in New Issue
Block a user