From 4028c51cda30c51940318580513e46c8c8818e9a Mon Sep 17 00:00:00 2001 From: AashiqMeow12 Date: Sat, 27 Jun 2026 15:38:29 +0500 Subject: [PATCH 1/6] Added premake file. --- premake5.lua | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 premake5.lua diff --git a/premake5.lua b/premake5.lua new file mode 100644 index 000000000..96f6d271c --- /dev/null +++ b/premake5.lua @@ -0,0 +1,38 @@ +roject "yaml-cpp" + kind "StaticLib" + language "C++" + + targetdir ("bin/" .. outputdir .. "/%{prj.name}") + objdir ("bin-int/" .. outputdir .. "/%{prj.name}") + + files + { + "src/**.h", + "src/**.cpp", + + "include/**.h" + } + + includedirs + { + "include" + } + + filter "system:windows" + systemversion "latest" + cppdialect "C++17" + staticruntime "On" + + filter "system:linux" + pic "On" + systemversion "latest" + cppdialect "C++17" + staticruntime "On" + + filter "configurations:Debug" + runtime "Debug" + symbols "on" + + filter "configurations:Release" + runtime "Release" + optimize "on" \ No newline at end of file From da00f1ed4a7148cd8e8fc43ae82cce7a8a0a94eb Mon Sep 17 00:00:00 2001 From: AashiqMeow12 Date: Sat, 27 Jun 2026 15:39:36 +0500 Subject: [PATCH 2/6] Turn off staticruntime. As otherwise, cannot link this library with other dependencies of Hazel engine. --- premake5.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/premake5.lua b/premake5.lua index 96f6d271c..d67db6d02 100644 --- a/premake5.lua +++ b/premake5.lua @@ -21,13 +21,13 @@ roject "yaml-cpp" filter "system:windows" systemversion "latest" cppdialect "C++17" - staticruntime "On" + staticruntime "off" filter "system:linux" pic "On" systemversion "latest" cppdialect "C++17" - staticruntime "On" + staticruntime "off" filter "configurations:Debug" runtime "Debug" From a6be1201d717f06e223bb2cf38ce55742cc9e791 Mon Sep 17 00:00:00 2001 From: AashiqMeow12 Date: Sat, 27 Jun 2026 15:40:16 +0500 Subject: [PATCH 3/6] Added .gitignore. So that buidling Hazel (which includes this repo as a submodule) does not make git think the submodule has changes to commit. Note tha the Hazel build system should really be using "out-of-source" builds instead. --- .gitignore | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitignore b/.gitignore index 2f9d10f06..40eef9761 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,7 @@ build/ /tags /bazel-* +bin +bin-int +yaml-cpp.vcxproj +yaml-cpp.vcxproj.filters \ No newline at end of file From 4ef8fba0d5ee353bd243ca64ea3c26527dad2654 Mon Sep 17 00:00:00 2001 From: AashiqMeow12 Date: Sat, 27 Jun 2026 15:41:25 +0500 Subject: [PATCH 4/6] Added YAML_CPP_STATIC_DEFINE define to premake build script. --- premake5.lua | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/premake5.lua b/premake5.lua index d67db6d02..a8fc612f4 100644 --- a/premake5.lua +++ b/premake5.lua @@ -18,6 +18,11 @@ roject "yaml-cpp" "include" } + defines + { + "YAML_CPP_STATIC_DEFINE" + } + filter "system:windows" systemversion "latest" cppdialect "C++17" From 02a6795412933063a1df24b49839c9590dbf8b80 Mon Sep 17 00:00:00 2001 From: AashiqMeow12 Date: Sat, 27 Jun 2026 15:45:14 +0500 Subject: [PATCH 5/6] Fixed premake file to work easily with Illuminator project. Maybe it isn't needed, we will update this in the future, for now it is okay. --- premake5.lua | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/premake5.lua b/premake5.lua index a8fc612f4..c2ea1b60c 100644 --- a/premake5.lua +++ b/premake5.lua @@ -1,6 +1,8 @@ roject "yaml-cpp" kind "StaticLib" language "C++" + cppdialect "C++17" + staticruntime "on" targetdir ("bin/" .. outputdir .. "/%{prj.name}") objdir ("bin-int/" .. outputdir .. "/%{prj.name}") @@ -25,19 +27,19 @@ roject "yaml-cpp" filter "system:windows" systemversion "latest" - cppdialect "C++17" - staticruntime "off" filter "system:linux" pic "On" systemversion "latest" - cppdialect "C++17" - staticruntime "off" filter "configurations:Debug" runtime "Debug" symbols "on" filter "configurations:Release" + runtime "Release" + optimize "on" + + filter "configurations:Dist" runtime "Release" optimize "on" \ No newline at end of file From e286186f685ac1b00a803586ff0e80a2ab51f44f Mon Sep 17 00:00:00 2001 From: AashiqMeow12 Date: Sat, 27 Jun 2026 16:54:00 +0500 Subject: [PATCH 6/6] Moved define YAML_STATIC_DEFINE to filter:windows in Premake5.lua. --- premake5.lua | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/premake5.lua b/premake5.lua index c2ea1b60c..503105de5 100644 --- a/premake5.lua +++ b/premake5.lua @@ -1,5 +1,6 @@ -roject "yaml-cpp" +project "yaml-cpp" kind "StaticLib" + systemversion "latest" language "C++" cppdialect "C++17" staticruntime "on" @@ -20,17 +21,14 @@ roject "yaml-cpp" "include" } - defines - { - "YAML_CPP_STATIC_DEFINE" - } - filter "system:windows" - systemversion "latest" + defines + { + "YAML_CPP_STATIC_DEFINE" + } filter "system:linux" pic "On" - systemversion "latest" filter "configurations:Debug" runtime "Debug"