diff --git a/.github/workflows/msvc.yml b/.github/workflows/msvc.yml
index 3ed09fb9..89aca044 100644
--- a/.github/workflows/msvc.yml
+++ b/.github/workflows/msvc.yml
@@ -16,8 +16,6 @@ jobs:
- uses: microsoft/setup-msbuild@v1.0.2
- name: Integrate vcpkg
run: vcpkg integrate install
- - name: Build vcpkg libraries
- run: vcpkg install freetype glfw3 capstone[arm,arm64,x86] --triplet x64-windows-static
- name: Profiler GUI Debug
run: msbuild .\profiler\build\win32\Tracy.vcxproj /property:Configuration=Debug /property:Platform=x64
- name: Profiler GUI Release
diff --git a/.gitignore b/.gitignore
index c930fe63..40921279 100644
--- a/.gitignore
+++ b/.gitignore
@@ -29,6 +29,7 @@ profiler/build/win32/Tracy.aps
# include the vcpkg install script but not the files it produces
vcpkg/*
!vcpkg/install_vcpkg_dependencies.bat
+/vcpkg_installed
.deps/
.dirstamp
.vscode/
diff --git a/capture/build/win32/capture.vcxproj b/capture/build/win32/capture.vcxproj
index 569b3214..7da266f7 100644
--- a/capture/build/win32/capture.vcxproj
+++ b/capture/build/win32/capture.vcxproj
@@ -44,6 +44,9 @@
+
+ true
+
Level3
@@ -54,12 +57,11 @@
TRACY_NO_STATISTICS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32_LEAN_AND_MEAN;NOMINMAX;_USE_MATH_DEFINES;%(PreprocessorDefinitions)
AdvancedVectorExtensions2
stdcpplatest
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include;..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include\capstone;$(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone
+ $(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone;..\..\..\vcpkg_installed\$(VcpkgTriplet)\$(VcpkgTriplet)\include\capstone
- ws2_32.lib;capstone.lib;%(AdditionalDependencies)
+ ws2_32.lib;%(AdditionalDependencies)
Console
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\debug\lib
@@ -74,14 +76,13 @@
TRACY_NO_STATISTICS;NDEBUG;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32_LEAN_AND_MEAN;NOMINMAX;_USE_MATH_DEFINES;%(PreprocessorDefinitions)
AdvancedVectorExtensions2
stdcpplatest
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include;..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include\capstone;$(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone
+ $(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone;..\..\..\vcpkg_installed\$(VcpkgTriplet)\$(VcpkgTriplet)\include\capstone
true
true
- ws2_32.lib;capstone.lib;%(AdditionalDependencies)
+ ws2_32.lib;%(AdditionalDependencies)
Console
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\lib
diff --git a/csvexport/build/win32/csvexport.vcxproj b/csvexport/build/win32/csvexport.vcxproj
index f5457414..349c5101 100644
--- a/csvexport/build/win32/csvexport.vcxproj
+++ b/csvexport/build/win32/csvexport.vcxproj
@@ -44,6 +44,9 @@
+
+ true
+
Level3
@@ -54,12 +57,11 @@
_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32_LEAN_AND_MEAN;NOMINMAX;_USE_MATH_DEFINES;%(PreprocessorDefinitions)
AdvancedVectorExtensions2
stdcpplatest
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include;..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include\capstone;$(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone
+ $(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone;..\..\..\vcpkg_installed\$(VcpkgTriplet)\$(VcpkgTriplet)\include\capstone
- ws2_32.lib;capstone.lib;%(AdditionalDependencies)
+ ws2_32.lib;%(AdditionalDependencies)
Console
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\debug\lib
@@ -74,14 +76,13 @@
NDEBUG;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32_LEAN_AND_MEAN;NOMINMAX;_USE_MATH_DEFINES;%(PreprocessorDefinitions)
AdvancedVectorExtensions2
stdcpplatest
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include;..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include\capstone;$(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone
+ $(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone;..\..\..\vcpkg_installed\$(VcpkgTriplet)\$(VcpkgTriplet)\include\capstone
true
true
- ws2_32.lib;capstone.lib;%(AdditionalDependencies)
+ ws2_32.lib;%(AdditionalDependencies)
Console
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\lib
diff --git a/import-chrome/build/win32/import-chrome.vcxproj b/import-chrome/build/win32/import-chrome.vcxproj
index 8a7758ab..62719133 100644
--- a/import-chrome/build/win32/import-chrome.vcxproj
+++ b/import-chrome/build/win32/import-chrome.vcxproj
@@ -44,6 +44,9 @@
+
+ true
+
Level3
@@ -54,12 +57,11 @@
TRACY_NO_STATISTICS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32_LEAN_AND_MEAN;NOMINMAX;_USE_MATH_DEFINES;%(PreprocessorDefinitions)
AdvancedVectorExtensions2
stdcpplatest
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include;..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include\capstone;$(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone
+ $(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone;..\..\..\vcpkg_installed\$(VcpkgTriplet)\$(VcpkgTriplet)\include\capstone
- ws2_32.lib;capstone.lib;%(AdditionalDependencies)
+ ws2_32.lib;%(AdditionalDependencies)
Console
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\debug\lib
@@ -74,14 +76,13 @@
TRACY_NO_STATISTICS;NDEBUG;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32_LEAN_AND_MEAN;NOMINMAX;_USE_MATH_DEFINES;%(PreprocessorDefinitions)
AdvancedVectorExtensions2
stdcpplatest
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include;..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include\capstone;$(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone
+ $(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone;..\..\..\vcpkg_installed\$(VcpkgTriplet)\$(VcpkgTriplet)\include\capstone
true
true
- ws2_32.lib;capstone.lib;%(AdditionalDependencies)
+ ws2_32.lib;%(AdditionalDependencies)
Console
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\lib
diff --git a/manual/tracy.tex b/manual/tracy.tex
index 705dc906..95f8ec43 100644
--- a/manual/tracy.tex
+++ b/manual/tracy.tex
@@ -748,11 +748,13 @@ There are two ways you can run \texttt{vcpkg} to install the dependencies for Tr
vcpkg\install_vcpkg_dependencies.bat
\end{lstlisting}
This writes files only to the \texttt{vcpkg\textbackslash{}vcpkg} directory and makes no other changes on your machine.
-\item System-wide installation -- install \texttt{vcpkg} by following the instructions on its website, and then execute the following commands:
+\item System-wide installation with Manifest mode -- install \texttt{vcpkg} by following the instructions on its website, make sure that the environment variable \texttt{VCPKG\_ROOT} is set to the path where you have clone the repository, and then execute the following command:
\begin{lstlisting}[language=sh]
vcpkg integrate install
-vcpkg install --triplet x64-windows-static freetype glfw3 capstone[arm,arm64,x86]
\end{lstlisting}
+After this step, you can use any Visual Studio project files to build as usual.
+Dependencies will be installed automatically based on vcpkg manifest listing (the \texttt{vcpkg.json} file at repository root).
+For more information about vcpkg manifest mode in Visual Studio, you can read more details at the following address: \url{https://vcpkg.io/en/docs/users/manifests.html#msbuild-integration}.
\end{itemize}
\paragraph{Unix}
diff --git a/profiler/build/win32/Tracy.vcxproj b/profiler/build/win32/Tracy.vcxproj
index ceeaee4d..99a896ac 100644
--- a/profiler/build/win32/Tracy.vcxproj
+++ b/profiler/build/win32/Tracy.vcxproj
@@ -51,13 +51,16 @@
static
MultiThreadedDLL
+
+ true
+
Level3
Disabled
true
_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32_LEAN_AND_MEAN;NOMINMAX;_USE_MATH_DEFINES;IMGUI_ENABLE_FREETYPE;%(PreprocessorDefinitions)
- ..\..\..\imgui;..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include;..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include\capstone;$(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone;%(AdditionalIncludeDirectories)
+ ..\..\..\imgui;$(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone;..\..\..\vcpkg_installed\$(VcpkgTriplet)\$(VcpkgTriplet)\include\capstone;%(AdditionalIncludeDirectories)
true
false
true
@@ -67,9 +70,8 @@
Fast
- brotlicommon-static.lib;brotlidec-static.lib;ws2_32.lib;freetyped.lib;glfw3.lib;libpng16d.lib;zlibd.lib;bz2d.lib;capstone.lib;%(AdditionalDependencies)
+ ws2_32.lib;%(AdditionalDependencies)
Windows
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\debug\lib
true
@@ -83,7 +85,7 @@
true
true
NDEBUG;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32_LEAN_AND_MEAN;NOMINMAX;_USE_MATH_DEFINES;IMGUI_ENABLE_FREETYPE;%(PreprocessorDefinitions)
- ..\..\..\imgui;..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include;..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include\capstone;$(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone;%(AdditionalIncludeDirectories)
+ ..\..\..\imgui;$(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone;..\..\..\vcpkg_installed\$(VcpkgTriplet)\$(VcpkgTriplet)\include\capstone;%(AdditionalIncludeDirectories)
true
true
AdvancedVectorExtensions2
@@ -94,9 +96,8 @@
true
true
- brotlicommon-static.lib;brotlidec-static.lib;ws2_32.lib;freetype.lib;glfw3.lib;libpng16.lib;zlib.lib;bz2.lib;capstone.lib;%(AdditionalDependencies)
+ ws2_32.lib;%(AdditionalDependencies)
Windows
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\lib
true
diff --git a/update/build/win32/update.vcxproj b/update/build/win32/update.vcxproj
index 0091ba47..dbe88685 100644
--- a/update/build/win32/update.vcxproj
+++ b/update/build/win32/update.vcxproj
@@ -44,6 +44,9 @@
+
+ true
+
Level3
@@ -54,12 +57,11 @@
TRACY_NO_STATISTICS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32_LEAN_AND_MEAN;NOMINMAX;_USE_MATH_DEFINES;%(PreprocessorDefinitions)
AdvancedVectorExtensions2
stdcpplatest
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include;..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include\capstone;$(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone
+ $(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone;..\..\..\vcpkg_installed\$(VcpkgTriplet)\$(VcpkgTriplet)\include\capstone
- ws2_32.lib;capstone.lib;%(AdditionalDependencies)
+ ws2_32.lib;%(AdditionalDependencies)
Console
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\debug\lib
@@ -74,14 +76,13 @@
TRACY_NO_STATISTICS;NDEBUG;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32_LEAN_AND_MEAN;NOMINMAX;_USE_MATH_DEFINES;%(PreprocessorDefinitions)
AdvancedVectorExtensions2
stdcpplatest
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include;..\..\..\vcpkg\vcpkg\installed\x64-windows-static\include\capstone;$(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone
+ $(VcpkgRoot)\installed\$(VcpkgTriplet)\include\capstone;..\..\..\vcpkg_installed\$(VcpkgTriplet)\$(VcpkgTriplet)\include\capstone
true
true
- ws2_32.lib;capstone.lib;%(AdditionalDependencies)
+ ws2_32.lib;%(AdditionalDependencies)
Console
- ..\..\..\vcpkg\vcpkg\installed\x64-windows-static\lib
diff --git a/vcpkg.json b/vcpkg.json
new file mode 100644
index 00000000..1218c585
--- /dev/null
+++ b/vcpkg.json
@@ -0,0 +1,12 @@
+{
+ "$schema": "https://raw.githubusercontent.com/microsoft/vcpkg/master/scripts/vcpkg.schema.json",
+ "name": "tracy",
+ "version-semver": "0.8.0",
+ "description": "C++ frame profiler",
+ "homepage": "https://github.com/wolfpld/tracy",
+ "dependencies": [
+ { "name": "capstone", "features":[ "arm", "arm64", "x86" ] },
+ "freetype",
+ "glfw3"
+ ]
+}