aboutsummaryrefslogtreecommitdiff
path: root/project
diff options
context:
space:
mode:
authorjimfcarroll <thecarrolls@jiminger.com>2011-06-23 12:15:31 -0700
committerjimfcarroll <thecarrolls@jiminger.com>2011-06-23 12:15:31 -0700
commitbb8858364ce3fcc64b87cdf1e08136fd5f8cb3dd (patch)
treef64a9aebca68232d5e72fef46af02adbe36ccba9 /project
parentbc4931a5e144354b139105c42cd3a9629e75d26c (diff)
parent995bea06cfa77e1f71363b63568cdc4c9db9c71e (diff)
Merge pull request #209 from jimfcarroll/remove-circ-deps
Step-by-step refactor all threading synchronization mechanisms. This is a significant change that collapses all threading synchronization mechanisms the ThreadLocal down to a small set of boost based classes. It removes the circular dependencies from the threading library with the exception of the Thread class itself, which is next.
Diffstat (limited to 'project')
-rw-r--r--project/BuildDependencies/scripts/boost_d.bat8
-rw-r--r--project/BuildDependencies/scripts/boost_d.txt4
-rw-r--r--project/VS2010Express/XBMC.vcxproj18
-rw-r--r--project/VS2010Express/XBMC.vcxproj.filters32
4 files changed, 26 insertions, 36 deletions
diff --git a/project/BuildDependencies/scripts/boost_d.bat b/project/BuildDependencies/scripts/boost_d.bat
index 293caaa369..76fbfd1dfc 100644
--- a/project/BuildDependencies/scripts/boost_d.bat
+++ b/project/BuildDependencies/scripts/boost_d.bat
@@ -9,4 +9,10 @@ cd %TMP_PATH%
xcopy boost_1_46_1-headers-win32\* "%CUR_PATH%\include\" /E /Q /I /Y
-cd %LOC_PATH%
+copy boost_1_46_1-debug-libs-win32\lib\libboost_thread-vc100-mt-gd.lib "%CUR_PATH%\lib\libboost_thread-vc100-mt-sgd-1_46_1.lib"/Y
+copy boost_1_46_1-libs-win32\lib\libboost_thread-vc100-mt.lib "%CUR_PATH%\lib\libboost_thread-vc100-mt-s-1_46_1.lib" /Y
+
+copy boost_1_46_1-debug-libs-win32\lib\libboost_date_time-vc100-mt-gd.lib "%CUR_PATH%\lib\libboost_date_time-vc100-mt-sgd-1_46_1.lib"/Y
+copy boost_1_46_1-libs-win32\lib\libboost_date_time-vc100-mt.lib "%CUR_PATH%\lib\libboost_date_time-vc100-mt-s-1_46_1.lib" /Y
+
+cd %LOC_PATH% \ No newline at end of file
diff --git a/project/BuildDependencies/scripts/boost_d.txt b/project/BuildDependencies/scripts/boost_d.txt
index 64dcd00b77..dcd5ed3134 100644
--- a/project/BuildDependencies/scripts/boost_d.txt
+++ b/project/BuildDependencies/scripts/boost_d.txt
@@ -1,4 +1,4 @@
; filename mirror of the file
boost_1_46_1-headers-win32.7z http://mirrors.xbmc.org/build-deps/win32/
-;boost_1_46_1-libs-win32.7z http://mirrors.xbmc.org/build-deps/win32/
-;boost_1_46_1-debug-libs-win32.7z http://mirrors.xbmc.org/build-deps/win32/
+boost_1_46_1-libs-win32.7z http://mirrors.xbmc.org/build-deps/win32/
+boost_1_46_1-debug-libs-win32.7z http://mirrors.xbmc.org/build-deps/win32/
diff --git a/project/VS2010Express/XBMC.vcxproj b/project/VS2010Express/XBMC.vcxproj
index a08ea4fe83..e745a3b85f 100644
--- a/project/VS2010Express/XBMC.vcxproj
+++ b/project/VS2010Express/XBMC.vcxproj
@@ -125,7 +125,7 @@
<AdditionalDependencies>SDL.lib;opengl32.lib;DSound.lib;glew32.lib;glu32.lib;winmm.lib;ws2_32.lib;Mpr.lib;Iphlpapi.lib;PowrProf.lib;setupapi.lib;dwmapi.lib;yajl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)XBMC.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\lib\libSDL-WIN32\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <IgnoreSpecificDefaultLibraries>libc;msvcrt;libci;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
+ <IgnoreSpecificDefaultLibraries>libc;msvcrt;libci;msvcprt;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
<DelayLoadDLLs>dwmapi.dll;libmicrohttpd-5.dll;ssh.dll;sqlite3.dll;libsamplerate-0.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)XBMC.pdb</ProgramDatabaseFile>
@@ -166,7 +166,7 @@
<AdditionalDependencies>SDL.lib;D3D9.lib;D3dx9.lib;DInput8.lib;DSound.lib;winmm.lib;ws2_32.lib;Mpr.lib;Iphlpapi.lib;PowrProf.lib;setupapi.lib;dwmapi.lib;strmiids.lib;dxguid.lib;mfuuid.lib;comctl32.lib;yajl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)XBMC.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\lib\libSDL-WIN32\lib;..\..\xbmc\cores\DSPlayer\Libs;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <IgnoreSpecificDefaultLibraries>libc;msvcrt;libcmt;msvcrtd;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
+ <IgnoreSpecificDefaultLibraries>libc;msvcrt;libcmt;msvcrtd;msvcprtd;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
<ModuleDefinitionFile>
</ModuleDefinitionFile>
<DelayLoadDLLs>dwmapi.dll;libmicrohttpd-5.dll;ssh.dll;sqlite3.dll;libsamplerate-0.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
@@ -214,7 +214,7 @@
<AdditionalDependencies>SDL.lib;D3D9.lib;D3dx9.lib;DInput8.lib;DSound.lib;winmm.lib;ws2_32.lib;Mpr.lib;Iphlpapi.lib;PowrProf.lib;setupapi.lib;dwmapi.lib;strmiids.lib;mfuuid.lib;comctl32.lib;yajl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)XBMC.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\lib\libSDL-WIN32\lib;..\..\xbmc\cores\DSPlayer\Libs;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <IgnoreSpecificDefaultLibraries>libc;msvcrt;libci;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
+ <IgnoreSpecificDefaultLibraries>libc;msvcrt;libci;msvcprt;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
<DelayLoadDLLs>dwmapi.dll;libmicrohttpd-5.dll;ssh.dll;sqlite3.dll;libsamplerate-0.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(OutDir)XBMC.pdb</ProgramDatabaseFile>
@@ -255,7 +255,7 @@
<AdditionalDependencies>SDL.lib;D3D9.lib;D3DX9.lib;DInput8.lib;DSound.lib;winmm.lib;ws2_32.lib;Mpr.lib;Iphlpapi.lib;PowrProf.lib;setupapi.lib;dwmapi.lib;yajl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)XBMC.exe</OutputFile>
<AdditionalLibraryDirectories>..\..\lib\libSDL-WIN32\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <IgnoreSpecificDefaultLibraries>libc;msvcrt;libcmt;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
+ <IgnoreSpecificDefaultLibraries>libc;msvcrt;libcmt;msvcprtd;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
<ModuleDefinitionFile>
</ModuleDefinitionFile>
<DelayLoadDLLs>dwmapi.dll;libmicrohttpd-5.dll;ssh.dll;sqlite3.dll;libsamplerate-0.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
@@ -721,13 +721,10 @@
<ClCompile Include="..\..\xbmc\TextureCache.cpp" />
<ClCompile Include="..\..\xbmc\TextureDatabase.cpp" />
<ClCompile Include="..\..\xbmc\threads\Atomics.cpp" />
- <ClCompile Include="..\..\xbmc\threads\CriticalSection.cpp" />
<ClCompile Include="..\..\xbmc\threads\Event.cpp" />
<ClCompile Include="..\..\xbmc\threads\LockFree.cpp" />
- <ClCompile Include="..\..\xbmc\threads\Mutex.cpp" />
- <ClCompile Include="..\..\xbmc\threads\SharedSection.cpp" />
- <ClCompile Include="..\..\xbmc\threads\SingleLock.cpp" />
<ClCompile Include="..\..\xbmc\threads\Thread.cpp" />
+ <ClCompile Include="..\..\xbmc\threads\ThreadLocal.cpp" />
<ClCompile Include="..\..\xbmc\ThumbLoader.cpp" />
<ClCompile Include="..\..\xbmc\ThumbnailCache.cpp" />
<ClCompile Include="..\..\xbmc\URL.cpp" />
@@ -830,7 +827,6 @@
<ClCompile Include="..\..\xbmc\win32\WINFileSMB.cpp" />
<ClCompile Include="..\..\xbmc\win32\WINSMBDirectory.cpp" />
<ClCompile Include="..\..\xbmc\win32\XBMC_PC.cpp" />
- <ClCompile Include="..\..\xbmc\win32\XCriticalSection.cpp" />
<ClCompile Include="..\..\xbmc\cores\DummyVideoPlayer.cpp" />
<ClCompile Include="..\..\xbmc\cores\dvdplayer\DVDAudio.cpp" />
<ClCompile Include="..\..\xbmc\cores\dvdplayer\DVDClock.cpp" />
@@ -1561,13 +1557,14 @@
<ClInclude Include="..\..\xbmc\TextureCache.h" />
<ClInclude Include="..\..\xbmc\TextureDatabase.h" />
<ClInclude Include="..\..\xbmc\threads\Atomics.h" />
+ <ClInclude Include="..\..\xbmc\threads\Condition.h" />
<ClInclude Include="..\..\xbmc\threads\CriticalSection.h" />
<ClInclude Include="..\..\xbmc\threads\Event.h" />
<ClInclude Include="..\..\xbmc\threads\LockFree.h" />
- <ClInclude Include="..\..\xbmc\threads\Mutex.h" />
<ClInclude Include="..\..\xbmc\threads\SharedSection.h" />
<ClInclude Include="..\..\xbmc\threads\SingleLock.h" />
<ClInclude Include="..\..\xbmc\threads\Thread.h" />
+ <ClInclude Include="..\..\xbmc\threads\ThreadLocal.h" />
<ClInclude Include="..\..\xbmc\ThumbLoader.h" />
<ClInclude Include="..\..\xbmc\ThumbnailCache.h" />
<ClInclude Include="..\..\xbmc\URL.h" />
@@ -1674,7 +1671,6 @@
<ClInclude Include="..\..\xbmc\win32\WindowHelper.h" />
<ClInclude Include="..\..\xbmc\win32\WINFileSMB.h" />
<ClInclude Include="..\..\xbmc\win32\WINSMBDirectory.h" />
- <ClInclude Include="..\..\xbmc\win32\XCriticalSection.h" />
<ClInclude Include="..\..\xbmc\cores\DummyVideoPlayer.h" />
<ClInclude Include="..\..\xbmc\cores\IPlayer.h" />
<ClInclude Include="..\..\xbmc\cores\dvdplayer\dvd_config.h" />
diff --git a/project/VS2010Express/XBMC.vcxproj.filters b/project/VS2010Express/XBMC.vcxproj.filters
index 8e0c85122a..7aaf2ad10d 100644
--- a/project/VS2010Express/XBMC.vcxproj.filters
+++ b/project/VS2010Express/XBMC.vcxproj.filters
@@ -255,9 +255,6 @@
<ClCompile Include="..\..\xbmc\win32\XBMC_PC.cpp">
<Filter>win32</Filter>
</ClCompile>
- <ClCompile Include="..\..\xbmc\win32\XCriticalSection.cpp">
- <Filter>win32</Filter>
- </ClCompile>
<ClCompile Include="..\..\xbmc\cores\DummyVideoPlayer.cpp">
<Filter>cores</Filter>
</ClCompile>
@@ -1841,24 +1838,12 @@
<ClCompile Include="..\..\xbmc\threads\Atomics.cpp">
<Filter>threads</Filter>
</ClCompile>
- <ClCompile Include="..\..\xbmc\threads\CriticalSection.cpp">
- <Filter>threads</Filter>
- </ClCompile>
<ClCompile Include="..\..\xbmc\threads\Event.cpp">
<Filter>threads</Filter>
</ClCompile>
<ClCompile Include="..\..\xbmc\threads\LockFree.cpp">
<Filter>threads</Filter>
</ClCompile>
- <ClCompile Include="..\..\xbmc\threads\Mutex.cpp">
- <Filter>threads</Filter>
- </ClCompile>
- <ClCompile Include="..\..\xbmc\threads\SharedSection.cpp">
- <Filter>threads</Filter>
- </ClCompile>
- <ClCompile Include="..\..\xbmc\threads\SingleLock.cpp">
- <Filter>threads</Filter>
- </ClCompile>
<ClCompile Include="..\..\xbmc\threads\Thread.cpp">
<Filter>threads</Filter>
</ClCompile>
@@ -2472,6 +2457,9 @@
<ClCompile Include="..\..\xbmc\guilib\DirtyRegionTracker.cpp">
<Filter>guilib</Filter>
</ClCompile>
+ <ClCompile Include="..\..\xbmc\threads\ThreadLocal.cpp">
+ <Filter>threads</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\xbmc\win32\pch.h">
@@ -2495,9 +2483,6 @@
<ClInclude Include="..\..\xbmc\win32\WINSMBDirectory.h">
<Filter>win32</Filter>
</ClInclude>
- <ClInclude Include="..\..\xbmc\win32\XCriticalSection.h">
- <Filter>win32</Filter>
- </ClInclude>
<ClInclude Include="..\..\xbmc\cores\DummyVideoPlayer.h">
<Filter>cores</Filter>
</ClInclude>
@@ -4336,9 +4321,6 @@
<ClInclude Include="..\..\xbmc\threads\LockFree.h">
<Filter>threads</Filter>
</ClInclude>
- <ClInclude Include="..\..\xbmc\threads\Mutex.h">
- <Filter>threads</Filter>
- </ClInclude>
<ClInclude Include="..\..\xbmc\threads\SharedSection.h">
<Filter>threads</Filter>
</ClInclude>
@@ -4952,6 +4934,12 @@
<ClInclude Include="..\..\xbmc\guilib\DirtyRegionSolvers.h">
<Filter>guilib</Filter>
</ClInclude>
+ <ClInclude Include="..\..\xbmc\threads\Condition.h">
+ <Filter>threads</Filter>
+ </ClInclude>
+ <ClInclude Include="..\..\xbmc\threads\ThreadLocal.h">
+ <Filter>threads</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="..\..\xbmc\win32\XBMC.ico">
@@ -4968,4 +4956,4 @@
<Filter>win32</Filter>
</CustomBuild>
</ItemGroup>
-</Project>
+</Project> \ No newline at end of file