diff options
author | jimfcarroll <thecarrolls@jiminger.com> | 2011-06-23 12:15:31 -0700 |
---|---|---|
committer | jimfcarroll <thecarrolls@jiminger.com> | 2011-06-23 12:15:31 -0700 |
commit | bb8858364ce3fcc64b87cdf1e08136fd5f8cb3dd (patch) | |
tree | f64a9aebca68232d5e72fef46af02adbe36ccba9 /project | |
parent | bc4931a5e144354b139105c42cd3a9629e75d26c (diff) | |
parent | 995bea06cfa77e1f71363b63568cdc4c9db9c71e (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.bat | 8 | ||||
-rw-r--r-- | project/BuildDependencies/scripts/boost_d.txt | 4 | ||||
-rw-r--r-- | project/VS2010Express/XBMC.vcxproj | 18 | ||||
-rw-r--r-- | project/VS2010Express/XBMC.vcxproj.filters | 32 |
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 |