Настроил проекты cpputil и cpputil_test. Поправил неправильное преобразование типов в функции ucs4_to_utf8

This commit is contained in:
selim 2014-09-07 16:23:44 +04:00
parent b25c476f7a
commit e2ae2b7fc2
7 changed files with 66 additions and 6 deletions

View File

@ -6,6 +6,10 @@ MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cpputil", "cpputil\cpputil.vcxproj", "{734C1007-190E-4B4D-B01F-F947A3BF12AE}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cpputil_test", "cpputil_test\cpputil_test.vcxproj", "{BB753CD9-B6F2-4C75-BA38-D1255E748CE8}"
ProjectSection(ProjectDependencies) = postProject
{734C1007-190E-4B4D-B01F-F947A3BF12AE} = {734C1007-190E-4B4D-B01F-F947A3BF12AE}
{DC631418-E98C-4851-B178-ED0E1E0361F4} = {DC631418-E98C-4851-B178-ED0E1E0361F4}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gtest", "gtest\gtest.vcxproj", "{DC631418-E98C-4851-B178-ED0E1E0361F4}"
EndProject

View File

@ -46,7 +46,8 @@
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(SolutionDir)\..\src\asm\include;$(SolutionDir)\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
@ -61,7 +62,8 @@
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(SolutionDir)\..\src\asm\include;$(SolutionDir)\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
@ -73,6 +75,18 @@
<ItemGroup>
<Text Include="ReadMe.txt" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\src\logger.cpp" />
<ClCompile Include="..\..\src\log_queue.cpp" />
<ClCompile Include="..\..\src\ustring.cpp" />
<ClCompile Include="..\..\src\utf.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\include\logger.h" />
<ClInclude Include="..\..\include\log_queue.h" />
<ClInclude Include="..\..\include\ustring.h" />
<ClInclude Include="..\..\include\utf.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>

View File

@ -17,4 +17,32 @@
<ItemGroup>
<Text Include="ReadMe.txt" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\src\log_queue.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\src\logger.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\src\ustring.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\src\utf.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\include\log_queue.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\..\include\logger.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\..\include\ustring.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\..\include\utf.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
</Project>

View File

@ -52,10 +52,13 @@
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(SolutionDir)\gtest\include;$(SolutionDir)\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>cpputil.lib;gtest.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(SolutionDir)\Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
@ -67,15 +70,18 @@
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(SolutionDir)\gtest\include;$(SolutionDir)\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalDependencies>cpputil.lib;gtest.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\..\test\main.cpp" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">

View File

@ -14,4 +14,9 @@
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\test\main.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@ -249,7 +249,7 @@ void ucs4_to_utf8(const char32_t* src, char* dst, std::size_t symbols, bool need
shiftLeft = UCS4_SYMBOL_BITS - sBits;
shiftRight = pos*6;
*dst = static_cast<char>((s << shiftLeft) >> (shiftLeft + shiftRight)) | utf8_first_byte_mask(totalBytes);
*dst = static_cast<char>(((s << shiftLeft) >> (shiftLeft + shiftRight)) | utf8_first_byte_mask(totalBytes));
dst += totalBytes;
}

View File

@ -573,16 +573,18 @@ void func(std::size_t n)
int main(int argc, char **argv)
{
//::testing::InitGoogleTest(&argc, argv);
//return RUN_ALL_TESTS();
::testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
//const std::size_t threadsCount = 2;
const std::size_t threadsCount = 2;
//int one = 1;
//double two = 2.5;
//ulog.log("one: %, two: %", one, two);
//ulog.log("Hello world!");
//ulog.log("some string: %", "qwe!");
/*
std::thread threads[threadsCount];
for(std::size_t i = 0; i < threadsCount; ++i)
{
@ -595,4 +597,5 @@ int main(int argc, char **argv)
threads[i].join();
return 0;
*/
}