Browse Source

Make compilable under vs2010, add build instructions, delete solutions as auto-generated, tune premake4 files.

pull/1/head
Tarmo Pikaro 13 years ago committed by triton
parent
commit
dd0209275b
  1. 91
      Building.txt
  2. 8
      build/Parser.lua
  3. 127
      build/Parser.vcxproj
  4. 12
      build/Parser.vcxproj.filters
  5. 13
      build/Parser.vcxproj.user
  6. 224
      build/cxxi.sln
  7. BIN
      build/premake4.exe
  8. 15
      build/premake4.lua
  9. 69
      src/Bridge/CxxBridge.csproj
  10. 4
      src/Generator/CodeGenerator.cs
  11. 133
      src/Generator/Generator.csproj
  12. 22
      src/Generator/Generator.csproj.user
  13. 10
      src/Generator/Types/TypeMap.cs
  14. 3
      src/Parser/Parser.cpp
  15. 2
      src/Parser/Parser.h

91
Building.txt

@ -0,0 +1,91 @@ @@ -0,0 +1,91 @@
Building cxxi project on Windows using Visual Studio 2010
---------------------------------------------------------
Prerequisites:
--------------
- Install cmake
http://www.cmake.org/
I have 2.8.8 version
- Install Tortoise Git
http://code.google.com/p/tortoisegit/
I've installed it into "C:\Program Files (x86)"
- Install Tortoise SVN
I've installed with command line toolset.
Building:
---------
1. LLVM & clang
---------------
> mkdir cppreflect & chdir cppreflect
> svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm
( I've used revision: -r 172262 )
(Referred instructions
http://llvm.org/docs/GettingStarted.html#checkout )
> cd llvm/tools
> svn co http://llvm.org/svn/llvm-project/cfe/trunk clang
> cd ../..
(I've used revision: -r 172262)
(Referred instructions:
http://clang.llvm.org/get_started.html )
Don't close console yet - and -
Press (Windows)+R - Start cmake-gui.
- Browse soure code - pinpoint to newly added path.
(I for example had: E:/projects_prototype/cppreflect/llvm )
In where to build binaries - select llvm path with /build - like
for me: E:/projects_prototype/cppreflect/llvm/build
Press configure - select "Visual Studio 10" - Ok.
Wait for configure to complete and press "Generate".
Go with explorer into build folder and open LLVM.sln with Visual studio.
Right click on 'clang' project and build it.
For development purposes - it's recommended to use 'Debug' / Win32
because release builds have optimizations enabled - re-compiling
same source code will be slow.
If you're not planning to develop cxxi further - 'Release' is your
configuration.
It's not recommended to build everything - since it will consume more
your time - runs tests and do everything you don't want it to do.
2. cxxi
---------------
In console window type:
> set PATH=C:\Program Files (x86)\Git\bin;%PATH%
> git clone https://github.com/tapika/cxxi.git cxxi_trunk
> cd cxxi_trunk\build
> premake4.exe vs2010
Use explorer and go to into the same folder cxxi_trunk\build -
and open Cxxi.sln from there.
Compile code.
Compiled binaries will be located in
cxxi_trunk\bin
Have Fun.

8
build/Parser.lua

@ -1,9 +1,11 @@ @@ -1,9 +1,11 @@
project "Parser"
kind "ConsoleApp"
kind "SharedLib"
language "C++"
location "."
platforms { "x32" }
flags { common_flags }
flags { common_flags, "Managed" }
configuration "vs*"
buildoptions { common_msvc_copts, "/clr" }
@ -27,7 +29,7 @@ project "Parser" @@ -27,7 +29,7 @@ project "Parser"
configuration "Debug"
libdirs { "../../LLVM/build/lib/Debug" }
configuration "Release"
libdirs { "../../LLVM/build/lib/RelWithDebInfo" }

127
build/Parser.vcxproj

@ -1,127 +0,0 @@ @@ -1,127 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{C8BF56CF-4CD2-324A-9092-43F508104956}</ProjectGuid>
<RootNamespace>Parser</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">bin\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">obj\Debug\</IntDir>
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Parser_d</TargetName>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">bin\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">obj\Release\</IntDir>
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Parser</TargetName>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<AdditionalOptions>/wd4146 /wd4244 /wd4800 /wd4345 /wd4355 /wd4996 /wd4624 /wd4291 /clr %(AdditionalOptions)</AdditionalOptions>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\deps\llvm\include;..\deps\llvm\build\include;..\deps\llvm\tools\clang\include;..\deps\llvm\build\tools\clang\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>false</MinimalRebuild>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<ProgramDataBaseFileName>$(OutDir)Parser_d.pdb</ProgramDataBaseFileName>
<ExceptionHandling>false</ExceptionHandling>
<AdditionalUsingDirectories>$(TargetDir);%(AdditionalUsingDirectories)</AdditionalUsingDirectories>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>..\..\..\LLVM\include;..\..\..\LLVM\build\include;..\..\..\LLVM\tools\clang\include;..\..\..\LLVM\build\tools\clang\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ResourceCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>LLVMSupport.lib;LLVMAsmParser.lib;LLVMMC.lib;LLVMMCParser.lib;LLVMX86AsmParser.lib;LLVMX86AsmPrinter.lib;LLVMX86Desc.lib;LLVMX86Info.lib;LLVMX86Utils.lib;clangAnalysis.lib;clangBasic.lib;clangAST.lib;clangDriver.lib;clangEdit.lib;clangFrontend.lib;clangLex.lib;clangParse.lib;clangSema.lib;clangSerialization.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
<AdditionalLibraryDirectories>..\deps\llvm\build\lib\Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<EntryPointSymbol>
</EntryPointSymbol>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<AdditionalOptions>/wd4146 /wd4244 /wd4800 /wd4345 /wd4355 /wd4996 /wd4624 /wd4291 /clr %(AdditionalOptions)</AdditionalOptions>
<Optimization>Full</Optimization>
<AdditionalIncludeDirectories>..\..\..\LLVM\include;..\..\..\LLVM\build\include;..\..\..\LLVM\tools\clang\include;..\..\..\LLVM\build\tools\clang\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>false</MinimalRebuild>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<ProgramDataBaseFileName>$(OutDir)Parser.pdb</ProgramDataBaseFileName>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>..\..\..\LLVM\include;..\..\..\LLVM\build\include;..\..\..\LLVM\tools\clang\include;..\..\..\LLVM\build\tools\clang\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ResourceCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalDependencies>LLVMSupport.lib;LLVMMC.lib;clangAnalysis.lib;clangBasic.lib;clangAST.lib;clangDriver.lib;clangEdit.lib;clangFrontend.lib;clangLex.lib;clangParse.lib;clangSema.lib;clangSerialization.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)Parser.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\..\LLVM\build\lib\RelWithDebInfo;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<EntryPointSymbol>mainCRTStartup</EntryPointSymbol>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="..\src\Parser\CXXABI.h" />
<ClInclude Include="..\src\Parser\Interop.h" />
<ClInclude Include="..\src\Parser\Parser.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\src\Parser\Main.cpp" />
<ClCompile Include="..\src\Parser\Parser.cpp" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

12
build/Parser.vcxproj.filters

@ -1,12 +0,0 @@ @@ -1,12 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<ClInclude Include="..\src\Parser\CXXABI.h" />
<ClInclude Include="..\src\Parser\Interop.h" />
<ClInclude Include="..\src\Parser\Parser.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\src\Parser\Main.cpp" />
<ClCompile Include="..\src\Parser\Parser.cpp" />
</ItemGroup>
</Project>

13
build/Parser.vcxproj.user

@ -1,13 +0,0 @@ @@ -1,13 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LocalDebuggerWorkingDirectory>..\..\bin</LocalDebuggerWorkingDirectory>
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
<LocalDebuggerCommandArguments></LocalDebuggerCommandArguments>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LocalDebuggerWorkingDirectory>..\..\bin</LocalDebuggerWorkingDirectory>
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
<LocalDebuggerCommandArguments></LocalDebuggerCommandArguments>
</PropertyGroup>
</Project>

224
build/cxxi.sln

@ -1,224 +0,0 @@ @@ -1,224 +0,0 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Cxxi", "src\Mono.Cxxi\Mono.Cxxi.csproj", "{4A864586-93C5-4DC1-8A80-F094A88506D7}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests", "tests\Tests.csproj", "{3C290CBE-CA39-47F6-B3A0-ACD16C5A38C8}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "gcc-generator", "src\gcc-generator\gcc-generator.csproj", "{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Legacy", "Legacy", "{CC1EED48-730C-417A-9390-525BBCB518DA}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bridge", "..\src\Bridge\Bridge.csproj", "{6BEB8FA2-97AA-40B7-AB92-42F6EDDC4490}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Generator", "..\src\Generator\Generator.csproj", "{73499B8E-A6A4-42FF-AB8A-754CE2780777}"
ProjectSection(ProjectDependencies) = postProject
{C8BF56CF-4CD2-324A-9092-43F508104956} = {C8BF56CF-4CD2-324A-9092-43F508104956}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Runtime", "..\src\Runtime\Runtime.csproj", "{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Generator.Tests", "..\src\Generator.Tests\Generator.Tests.csproj", "{3EC927F3-5F8D-4D5D-B230-901ED2BB5D32}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Examples", "Examples", "{018A0BF1-788C-4366-BC67-8C4E7D14F5B3}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Clang", "..\examples\Clang\Clang.csproj", "{5439BC03-FA91-4D93-9EA0-4E550C1610F3}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Flood", "..\examples\Flood\Flood.csproj", "{28455425-1A80-458E-952C-5B0069866AAD}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SDL", "..\examples\SDL\SDL.csproj", "{8D642354-FBD5-4551-95A6-09D369B83167}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Parser", "Parser.vcxproj", "{C8BF56CF-4CD2-324A-9092-43F508104956}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|Mixed Platforms = Debug|Mixed Platforms
Debug|Win32 = Debug|Win32
Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
Release|Mixed Platforms = Release|Mixed Platforms
Release|Win32 = Release|Win32
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{4A864586-93C5-4DC1-8A80-F094A88506D7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4A864586-93C5-4DC1-8A80-F094A88506D7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4A864586-93C5-4DC1-8A80-F094A88506D7}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
{4A864586-93C5-4DC1-8A80-F094A88506D7}.Debug|Mixed Platforms.Build.0 = Debug|x86
{4A864586-93C5-4DC1-8A80-F094A88506D7}.Debug|Win32.ActiveCfg = Debug|x86
{4A864586-93C5-4DC1-8A80-F094A88506D7}.Debug|x86.ActiveCfg = Debug|x86
{4A864586-93C5-4DC1-8A80-F094A88506D7}.Debug|x86.Build.0 = Debug|x86
{4A864586-93C5-4DC1-8A80-F094A88506D7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4A864586-93C5-4DC1-8A80-F094A88506D7}.Release|Any CPU.Build.0 = Release|Any CPU
{4A864586-93C5-4DC1-8A80-F094A88506D7}.Release|Mixed Platforms.ActiveCfg = Release|x86
{4A864586-93C5-4DC1-8A80-F094A88506D7}.Release|Mixed Platforms.Build.0 = Release|x86
{4A864586-93C5-4DC1-8A80-F094A88506D7}.Release|Win32.ActiveCfg = Release|x86
{4A864586-93C5-4DC1-8A80-F094A88506D7}.Release|x86.ActiveCfg = Release|x86
{4A864586-93C5-4DC1-8A80-F094A88506D7}.Release|x86.Build.0 = Release|x86
{3C290CBE-CA39-47F6-B3A0-ACD16C5A38C8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3C290CBE-CA39-47F6-B3A0-ACD16C5A38C8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3C290CBE-CA39-47F6-B3A0-ACD16C5A38C8}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
{3C290CBE-CA39-47F6-B3A0-ACD16C5A38C8}.Debug|Mixed Platforms.Build.0 = Debug|x86
{3C290CBE-CA39-47F6-B3A0-ACD16C5A38C8}.Debug|Win32.ActiveCfg = Debug|x86
{3C290CBE-CA39-47F6-B3A0-ACD16C5A38C8}.Debug|x86.ActiveCfg = Debug|x86
{3C290CBE-CA39-47F6-B3A0-ACD16C5A38C8}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3C290CBE-CA39-47F6-B3A0-ACD16C5A38C8}.Release|Any CPU.Build.0 = Release|Any CPU
{3C290CBE-CA39-47F6-B3A0-ACD16C5A38C8}.Release|Mixed Platforms.ActiveCfg = Release|x86
{3C290CBE-CA39-47F6-B3A0-ACD16C5A38C8}.Release|Mixed Platforms.Build.0 = Release|x86
{3C290CBE-CA39-47F6-B3A0-ACD16C5A38C8}.Release|Win32.ActiveCfg = Release|x86
{3C290CBE-CA39-47F6-B3A0-ACD16C5A38C8}.Release|x86.ActiveCfg = Release|x86
{3C290CBE-CA39-47F6-B3A0-ACD16C5A38C8}.Release|x86.Build.0 = Release|x86
{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401}.Debug|Mixed Platforms.Build.0 = Debug|x86
{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401}.Debug|Win32.ActiveCfg = Debug|x86
{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401}.Debug|x86.ActiveCfg = Debug|x86
{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401}.Debug|x86.Build.0 = Debug|x86
{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401}.Release|Any CPU.ActiveCfg = Release|Any CPU
{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401}.Release|Any CPU.Build.0 = Release|Any CPU
{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401}.Release|Mixed Platforms.ActiveCfg = Release|x86
{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401}.Release|Mixed Platforms.Build.0 = Release|x86
{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401}.Release|Win32.ActiveCfg = Release|x86
{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401}.Release|x86.ActiveCfg = Release|x86
{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401}.Release|x86.Build.0 = Release|x86
{6BEB8FA2-97AA-40B7-AB92-42F6EDDC4490}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6BEB8FA2-97AA-40B7-AB92-42F6EDDC4490}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6BEB8FA2-97AA-40B7-AB92-42F6EDDC4490}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{6BEB8FA2-97AA-40B7-AB92-42F6EDDC4490}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{6BEB8FA2-97AA-40B7-AB92-42F6EDDC4490}.Debug|Win32.ActiveCfg = Debug|Any CPU
{6BEB8FA2-97AA-40B7-AB92-42F6EDDC4490}.Debug|x86.ActiveCfg = Debug|Any CPU
{6BEB8FA2-97AA-40B7-AB92-42F6EDDC4490}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6BEB8FA2-97AA-40B7-AB92-42F6EDDC4490}.Release|Any CPU.Build.0 = Release|Any CPU
{6BEB8FA2-97AA-40B7-AB92-42F6EDDC4490}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{6BEB8FA2-97AA-40B7-AB92-42F6EDDC4490}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{6BEB8FA2-97AA-40B7-AB92-42F6EDDC4490}.Release|Win32.ActiveCfg = Release|Any CPU
{6BEB8FA2-97AA-40B7-AB92-42F6EDDC4490}.Release|x86.ActiveCfg = Release|Any CPU
{73499B8E-A6A4-42FF-AB8A-754CE2780777}.Debug|Any CPU.ActiveCfg = Debug|x86
{73499B8E-A6A4-42FF-AB8A-754CE2780777}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
{73499B8E-A6A4-42FF-AB8A-754CE2780777}.Debug|Mixed Platforms.Build.0 = Debug|x86
{73499B8E-A6A4-42FF-AB8A-754CE2780777}.Debug|Win32.ActiveCfg = Debug|x86
{73499B8E-A6A4-42FF-AB8A-754CE2780777}.Debug|Win32.Build.0 = Debug|x86
{73499B8E-A6A4-42FF-AB8A-754CE2780777}.Debug|x86.ActiveCfg = Debug|x86
{73499B8E-A6A4-42FF-AB8A-754CE2780777}.Debug|x86.Build.0 = Debug|x86
{73499B8E-A6A4-42FF-AB8A-754CE2780777}.Release|Any CPU.ActiveCfg = Release|x86
{73499B8E-A6A4-42FF-AB8A-754CE2780777}.Release|Mixed Platforms.ActiveCfg = Release|x86
{73499B8E-A6A4-42FF-AB8A-754CE2780777}.Release|Mixed Platforms.Build.0 = Release|x86
{73499B8E-A6A4-42FF-AB8A-754CE2780777}.Release|Win32.ActiveCfg = Release|x86
{73499B8E-A6A4-42FF-AB8A-754CE2780777}.Release|Win32.Build.0 = Release|x86
{73499B8E-A6A4-42FF-AB8A-754CE2780777}.Release|x86.ActiveCfg = Release|x86
{73499B8E-A6A4-42FF-AB8A-754CE2780777}.Release|x86.Build.0 = Release|x86
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Debug|Mixed Platforms.Build.0 = Debug|x86
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Debug|Win32.ActiveCfg = Debug|x86
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Debug|Win32.Build.0 = Debug|x86
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Debug|x86.ActiveCfg = Debug|x86
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Debug|x86.Build.0 = Debug|x86
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Release|Any CPU.Build.0 = Release|Any CPU
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Release|Mixed Platforms.ActiveCfg = Release|x86
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Release|Mixed Platforms.Build.0 = Release|x86
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Release|Win32.ActiveCfg = Release|x86
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Release|Win32.Build.0 = Release|x86
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Release|x86.ActiveCfg = Release|x86
{6EE1E3FF-B737-4874-B7BC-D1B5297E162C}.Release|x86.Build.0 = Release|x86
{3EC927F3-5F8D-4D5D-B230-901ED2BB5D32}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3EC927F3-5F8D-4D5D-B230-901ED2BB5D32}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3EC927F3-5F8D-4D5D-B230-901ED2BB5D32}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{3EC927F3-5F8D-4D5D-B230-901ED2BB5D32}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{3EC927F3-5F8D-4D5D-B230-901ED2BB5D32}.Debug|Win32.ActiveCfg = Debug|Any CPU
{3EC927F3-5F8D-4D5D-B230-901ED2BB5D32}.Debug|x86.ActiveCfg = Debug|Any CPU
{3EC927F3-5F8D-4D5D-B230-901ED2BB5D32}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3EC927F3-5F8D-4D5D-B230-901ED2BB5D32}.Release|Any CPU.Build.0 = Release|Any CPU
{3EC927F3-5F8D-4D5D-B230-901ED2BB5D32}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{3EC927F3-5F8D-4D5D-B230-901ED2BB5D32}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{3EC927F3-5F8D-4D5D-B230-901ED2BB5D32}.Release|Win32.ActiveCfg = Release|Any CPU
{3EC927F3-5F8D-4D5D-B230-901ED2BB5D32}.Release|x86.ActiveCfg = Release|Any CPU
{5439BC03-FA91-4D93-9EA0-4E550C1610F3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5439BC03-FA91-4D93-9EA0-4E550C1610F3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5439BC03-FA91-4D93-9EA0-4E550C1610F3}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{5439BC03-FA91-4D93-9EA0-4E550C1610F3}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{5439BC03-FA91-4D93-9EA0-4E550C1610F3}.Debug|Win32.ActiveCfg = Debug|Any CPU
{5439BC03-FA91-4D93-9EA0-4E550C1610F3}.Debug|x86.ActiveCfg = Debug|Any CPU
{5439BC03-FA91-4D93-9EA0-4E550C1610F3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5439BC03-FA91-4D93-9EA0-4E550C1610F3}.Release|Any CPU.Build.0 = Release|Any CPU
{5439BC03-FA91-4D93-9EA0-4E550C1610F3}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{5439BC03-FA91-4D93-9EA0-4E550C1610F3}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{5439BC03-FA91-4D93-9EA0-4E550C1610F3}.Release|Win32.ActiveCfg = Release|Any CPU
{5439BC03-FA91-4D93-9EA0-4E550C1610F3}.Release|x86.ActiveCfg = Release|Any CPU
{28455425-1A80-458E-952C-5B0069866AAD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{28455425-1A80-458E-952C-5B0069866AAD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{28455425-1A80-458E-952C-5B0069866AAD}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{28455425-1A80-458E-952C-5B0069866AAD}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{28455425-1A80-458E-952C-5B0069866AAD}.Debug|Win32.ActiveCfg = Debug|Any CPU
{28455425-1A80-458E-952C-5B0069866AAD}.Debug|x86.ActiveCfg = Debug|Any CPU
{28455425-1A80-458E-952C-5B0069866AAD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{28455425-1A80-458E-952C-5B0069866AAD}.Release|Any CPU.Build.0 = Release|Any CPU
{28455425-1A80-458E-952C-5B0069866AAD}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{28455425-1A80-458E-952C-5B0069866AAD}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{28455425-1A80-458E-952C-5B0069866AAD}.Release|Win32.ActiveCfg = Release|Any CPU
{28455425-1A80-458E-952C-5B0069866AAD}.Release|x86.ActiveCfg = Release|Any CPU
{8D642354-FBD5-4551-95A6-09D369B83167}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8D642354-FBD5-4551-95A6-09D369B83167}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8D642354-FBD5-4551-95A6-09D369B83167}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{8D642354-FBD5-4551-95A6-09D369B83167}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{8D642354-FBD5-4551-95A6-09D369B83167}.Debug|Win32.ActiveCfg = Debug|Any CPU
{8D642354-FBD5-4551-95A6-09D369B83167}.Debug|x86.ActiveCfg = Debug|Any CPU
{8D642354-FBD5-4551-95A6-09D369B83167}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8D642354-FBD5-4551-95A6-09D369B83167}.Release|Any CPU.Build.0 = Release|Any CPU
{8D642354-FBD5-4551-95A6-09D369B83167}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{8D642354-FBD5-4551-95A6-09D369B83167}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{8D642354-FBD5-4551-95A6-09D369B83167}.Release|Win32.ActiveCfg = Release|Any CPU
{8D642354-FBD5-4551-95A6-09D369B83167}.Release|x86.ActiveCfg = Release|Any CPU
{C8BF56CF-4CD2-324A-9092-43F508104956}.Debug|Any CPU.ActiveCfg = Debug|Win32
{C8BF56CF-4CD2-324A-9092-43F508104956}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
{C8BF56CF-4CD2-324A-9092-43F508104956}.Debug|Mixed Platforms.Build.0 = Debug|Win32
{C8BF56CF-4CD2-324A-9092-43F508104956}.Debug|Win32.ActiveCfg = Debug|Win32
{C8BF56CF-4CD2-324A-9092-43F508104956}.Debug|Win32.Build.0 = Debug|Win32
{C8BF56CF-4CD2-324A-9092-43F508104956}.Debug|x86.ActiveCfg = Debug|Win32
{C8BF56CF-4CD2-324A-9092-43F508104956}.Debug|x86.Build.0 = Debug|Win32
{C8BF56CF-4CD2-324A-9092-43F508104956}.Release|Any CPU.ActiveCfg = Release|Win32
{C8BF56CF-4CD2-324A-9092-43F508104956}.Release|Mixed Platforms.ActiveCfg = Release|Win32
{C8BF56CF-4CD2-324A-9092-43F508104956}.Release|Mixed Platforms.Build.0 = Release|Win32
{C8BF56CF-4CD2-324A-9092-43F508104956}.Release|Win32.ActiveCfg = Release|Win32
{C8BF56CF-4CD2-324A-9092-43F508104956}.Release|Win32.Build.0 = Release|Win32
{C8BF56CF-4CD2-324A-9092-43F508104956}.Release|x86.ActiveCfg = Release|Win32
{C8BF56CF-4CD2-324A-9092-43F508104956}.Release|x86.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{3C290CBE-CA39-47F6-B3A0-ACD16C5A38C8} = {CC1EED48-730C-417A-9390-525BBCB518DA}
{AD0F9378-789C-4AF1-B0DD-6DD9A63C3401} = {CC1EED48-730C-417A-9390-525BBCB518DA}
{4A864586-93C5-4DC1-8A80-F094A88506D7} = {CC1EED48-730C-417A-9390-525BBCB518DA}
{5439BC03-FA91-4D93-9EA0-4E550C1610F3} = {018A0BF1-788C-4366-BC67-8C4E7D14F5B3}
{28455425-1A80-458E-952C-5B0069866AAD} = {018A0BF1-788C-4366-BC67-8C4E7D14F5B3}
{8D642354-FBD5-4551-95A6-09D369B83167} = {018A0BF1-788C-4366-BC67-8C4E7D14F5B3}
EndGlobalSection
GlobalSection(MonoDevelopProperties) = preSolution
StartupItem = src\generator\generator.csproj
Policies = $0
$0.TextStylePolicy = $3
$1.inheritsSet = null
$1.scope = text/x-csharp
$0.CSharpFormattingPolicy = $2
$2.NamespaceBraceStyle = EndOfLine
$2.ClassBraceStyle = EndOfLine
$2.InterfaceBraceStyle = EndOfLine
$2.StructBraceStyle = EndOfLine
$2.EnumBraceStyle = EndOfLine
$2.inheritsSet = Mono
$2.inheritsScope = text/x-csharp
$2.scope = text/x-csharp
$3.FileWidth = 120
$3.TabWidth = 4
$3.RemoveTrailingWhitespace = True
$3.inheritsSet = Mono
$3.inheritsScope = text/plain
$3.scope = text/plain
name = CPPInterop
EndGlobalSection
EndGlobal

BIN
build/premake4.exe

Binary file not shown.

15
build/premake4.lua

@ -19,18 +19,19 @@ solution "Cxxi" @@ -19,18 +19,19 @@ solution "Cxxi"
"Release"
}
location (action)
objdir (action .. "/obj/")
targetdir (action .. "/lib/")
targetdir (action .. "/bin/")
debugdir (action .. "/bin/")
objdir ( "../obj/" .. action)
targetdir ("../bin/")
debugdir ( "../bin/")
platforms { "x32" }
configuration "Debug"
defines { "DEBUG" }
targetsuffix "_d"
configuration "Release"
defines { "NDEBUG" }
flags { "Optimize" }
dofile "Parser.lua"
include "Parser.lua"
include "../src/Bridge/Bridge.lua"
include "../src/Generator/Generator.lua"

69
src/Bridge/CxxBridge.csproj

@ -1,69 +0,0 @@ @@ -1,69 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{6BEB8FA2-97AA-40B7-AB92-42F6EDDC4490}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Bridge</RootNamespace>
<AssemblyName>Bridge</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>..\..\build\bin\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="ASTVisitor.cs" />
<Compile Include="Class.cs" />
<Compile Include="Comment.cs" />
<Compile Include="Conversions.cs" />
<Compile Include="Declaration.cs" />
<Compile Include="Delegate.cs" />
<Compile Include="Enumeration.cs" />
<Compile Include="Field.cs" />
<Compile Include="Function.cs" />
<Compile Include="Library.cs" />
<Compile Include="Method.cs" />
<Compile Include="Namespace.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Property.cs" />
<Compile Include="Template.cs" />
<Compile Include="Type.cs" />
<Compile Include="Variable.cs" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

4
src/Generator/CodeGenerator.cs

@ -198,7 +198,7 @@ namespace Cxxi @@ -198,7 +198,7 @@ namespace Cxxi
foreach (var type in types)
{
var attrs = type.GetCustomAttributes<LibraryTransformAttribute>();
var attrs = type.GetCustomAttributes( typeof(LibraryTransformAttribute), true);
if (attrs == null) continue;
Console.WriteLine("Found library transform: {0}", type.Name);
@ -207,7 +207,7 @@ namespace Cxxi @@ -207,7 +207,7 @@ namespace Cxxi
}
catch (Exception ex)
{
Console.WriteLine("Error: assembly '{0}' could not be loaded", path);
Console.WriteLine("Error: assembly '{0}' could not be loaded: {1}", path, ex.Message);
return false;
}

133
src/Generator/Generator.csproj

@ -1,133 +0,0 @@ @@ -1,133 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{73499B8E-A6A4-42FF-AB8A-754CE2780777}</ProjectGuid>
<OutputType>Exe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Cxxi</RootNamespace>
<AssemblyName>Generator</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<TargetFrameworkProfile>
</TargetFrameworkProfile>
<FileAlignment>512</FileAlignment>
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>..\..\build\bin\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<UseVSHostingProcess>true</UseVSHostingProcess>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<PlatformTarget>x86</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>..\..\build\bin\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup>
<StartupObject>
</StartupObject>
</PropertyGroup>
<ItemGroup>
<Reference Include="Parser_d">
<HintPath>..\..\build\bin\Parser_d.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
</ItemGroup>
<ItemGroup>
<Compile Include="Generators\Generator.cs" />
<Compile Include="Types\Checker.cs" />
<Compile Include="Pass.cs" />
<Compile Include="PassBuilder.cs" />
<Compile Include="Transforms\Transform.cs" />
<Compile Include="Utils\Glob.cs" />
<Compile Include="Generators\CLI\CLIHeadersTemplate.cs" />
<Compile Include="Generators\CLI\CLIMarshal.cs" />
<Compile Include="Generators\CLI\CLISourcesTemplate.cs" />
<Compile Include="Generators\Template.cs" />
<Compile Include="Utils\Options.cs" />
<Compile Include="CodeGenerator.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Generators\CLI\CLIHelpers.cs" />
<Compile Include="Generators\CSharp\CSharpHelpers.cs" />
<Compile Include="LibraryHelpers.cs" />
<Compile Include="Types\Types.cs" />
<Compile Include="Transforms\Renames.cs" />
<Compile Include="Types\Std\Stdlib.cs" />
<Compile Include="Types\TypeMap.cs" />
<Compile Include="Utils\Utils.cs" />
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
<None Include="packages.config" />
<None Include="Generators\CSharp\CSharpModule.tt" />
</ItemGroup>
<ItemGroup>
<Service Include="{508349B6-6B84-4DF5-91F0-309BEEBAD82D}" />
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include=".NETFramework,Version=v4.0,Profile=Client">
<Visible>False</Visible>
<ProductName>Microsoft .NET Framework 4 Client Profile %28x86 and x64%29</ProductName>
<Install>true</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Windows.Installer.4.5">
<Visible>False</Visible>
<ProductName>Windows Installer 4.5</ProductName>
<Install>true</Install>
</BootstrapperPackage>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Bridge\CxxBridge.csproj">
<Project>{6beb8fa2-97aa-40b7-ab92-42f6eddc4490}</Project>
<Name>CxxBridge</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

22
src/Generator/Generator.csproj.user

@ -1,22 +0,0 @@ @@ -1,22 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
<EnableUnmanagedDebugging>true</EnableUnmanagedDebugging>
<StartArguments>-ns=Flood -outdir=C:\Development\flood2\src\EngineManaged -IC:\development\flood2 -IC:\development\flood2\inc -assembly=Flood.dll Flood/Flood.cpp</StartArguments>
<StartWorkingDirectory>C:\Development\cxxi2\build\bin\</StartWorkingDirectory>
</PropertyGroup>
<PropertyGroup>
<ProjectView>ProjectFiles</ProjectView>
<PublishUrlHistory>publish\</PublishUrlHistory>
<InstallUrlHistory />
<SupportUrlHistory />
<UpdateUrlHistory />
<BootstrapperUrlHistory />
<ErrorReportUrlHistory />
<FallbackCulture>en-US</FallbackCulture>
<VerifyUploadedFiles>false</VerifyUploadedFiles>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
<StartWorkingDirectory>C:\Development\cxxi2\build\bin\</StartWorkingDirectory>
</PropertyGroup>
</Project>

10
src/Generator/Types/TypeMap.cs

@ -96,8 +96,14 @@ namespace Cxxi.Types @@ -96,8 +96,14 @@ namespace Cxxi.Types
foreach (var attr in attrs)
{
Console.WriteLine("Found typemap: {0}", attr.Type);
TypeMaps[attr.Type] = typeMap;
var attrs = typeMap.GetCustomAttributes(typeof(TypeMapAttribute), true);
if (attrs == null) continue;
foreach (TypeMapAttribute attr in attrs)
{
Console.WriteLine("Found typemap: {0}", attr.Type);
TypeMaps[attr.Type] = typeMap;
}
}
}
}

3
src/Parser/Parser.cpp

@ -109,7 +109,8 @@ void Parser::Setup(ParserOptions^ Opts) @@ -109,7 +109,8 @@ void Parser::Setup(ParserOptions^ Opts)
C->getHeaderSearchOpts().AddPath(GetClangBuiltinIncludeDir(),
clang::frontend::System, false, false, true);
#ifdef _WIN32
#if defined(WithClangWindowsSystemIncludeDirsPatch)
std::vector<std::string> SystemDirs
= clang::driver::GetWindowsSystemIncludeDirs();
clang::HeaderSearchOptions& HSOpts = C->getHeaderSearchOpts();

2
src/Parser/Parser.h

@ -24,7 +24,7 @@ @@ -24,7 +24,7 @@
#include <string>
#include <cstdarg>
#using <Bridge.dll>
#using <../bin/Bridge.dll>
#include <vcclr.h>
#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof(arr[0]))

Loading…
Cancel
Save