Skip to content

Commit 7e2121a

Browse files
committed
Re:Make O2FS
1 parent 9943d47 commit 7e2121a

54 files changed

Lines changed: 2925 additions & 1370 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
.idea/
1313

1414
# Build results
15+
[Bb]uild/
1516
[Dd]ebug/
1617
[Dd]ebugPublic/
1718
[Rr]elease/
@@ -22,8 +23,10 @@ bld/
2223
[Bb]in/
2324
[Oo]bj/
2425

25-
# Visual Studio 2015 cache/options directory
26+
# IDE directory
2627
.vs/
28+
.idea/
29+
2730
# Uncomment if you have tasks that create the project's static files in wwwroot
2831
#wwwroot/
2932

@@ -140,7 +143,7 @@ publish/
140143
*.[Pp]ublish.xml
141144
*.azurePubxml
142145

143-
# TODO: Un-comment the next line if you do not want to checkin
146+
# TODO: Un-comment the next line if you do not want to checkin
144147
# your web deploy settings because they may include unencrypted
145148
# passwords
146149
#*.pubxml

CMakeLists.txt

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
# CMake
2+
cmake_minimum_required(VERSION 3.21)
3+
project(O2FS)
4+
5+
# C++ 17
6+
set(CMAKE_CXX_STANDARD 17)
7+
set(CMAKE_CXX_STANDARD_REQUIRED ON)
8+
9+
# Binaries names
10+
set(EXECUTABLE_NAME "O2FS.Launcher")
11+
set(LIBRARY_NAME "O2FS")
12+
13+
# Main directories
14+
file(GLOB_RECURSE SRCS src/O2FS/*.cpp)
15+
file(GLOB_RECURSE HEADERS src/O2FS/*.hpp)
16+
file(GLOB_RECURSE HEADERS include/O2FS/*.hpp include/Logger.hpp)
17+
file(GLOB_RECURSE EXTLIBS_HEADERS extlibs/include/*.hpp)
18+
include_directories(src)
19+
include_directories(include)
20+
include_directories(extlibs/include)
21+
22+
# Launcher directories
23+
file(GLOB_RECURSE LAUNCHER_SRCS src/Launcher/*.cpp)
24+
file(GLOB_RECURSE LAUNCHER_HEADERS include/Launcher/*.hpp include/Logger.hpp)
25+
include_directories(include/Launcher)
26+
27+
# Modules directories
28+
set(MODULES_DIR "${CMAKE_SOURCE_DIR}/extlibs/lib")
29+
set(DETOUR_LIB ${MODULES_DIR}/detours.lib)
30+
31+
# Source and linkage
32+
add_library(${LIBRARY_NAME} SHARED ${SRCS} ${HEADERS} ${EXTLIBS_HEADERS})
33+
add_executable(${EXECUTABLE_NAME} ${LAUNCHER_SRCS} ${LAUNCHER_HEADERS} ${EXTLIBS_HEADERS})
34+
target_link_libraries(${LIBRARY_NAME} ${DETOUR_LIB})
35+
target_link_libraries(${EXECUTABLE_NAME} ${DETOUR_LIB})
36+
37+
# Output directory
38+
set(OUTPUT_DIR "${CMAKE_SOURCE_DIR}/bin/")
39+
file(MAKE_DIRECTORY ${OUTPUT_DIR})
40+
41+
set_target_properties(${EXECUTABLE_NAME} PROPERTIES
42+
RUNTIME_OUTPUT_DIRECTORY_DEBUG ${OUTPUT_DIR}
43+
RUNTIME_OUTPUT_DIRECTORY_RELEASE ${OUTPUT_DIR}
44+
)
45+
set_target_properties(${LIBRARY_NAME} PROPERTIES
46+
RUNTIME_OUTPUT_DIRECTORY_DEBUG ${OUTPUT_DIR}
47+
RUNTIME_OUTPUT_DIRECTORY_RELEASE ${OUTPUT_DIR}
48+
)
49+
set_property(TARGET ${LIBRARY_NAME} PROPERTY MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
50+
set_property(TARGET ${EXECUTABLE_NAME} PROPERTY MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
51+

O2FS.Launcher.vcxproj

Lines changed: 197 additions & 0 deletions
Large diffs are not rendered by default.

O2FS.Launcher.vcxproj.filters

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project ToolsVersion="16.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<ItemGroup>
4+
<ClCompile Include="$(ProjectDir)\src\Launcher\Injector.cpp">
5+
<Filter>Source Files</Filter>
6+
</ClCompile>
7+
<ClCompile Include="$(ProjectDir)\src\Launcher\Process.cpp">
8+
<Filter>Source Files</Filter>
9+
</ClCompile>
10+
<ClCompile Include="$(ProjectDir)\src\Launcher\main.cpp">
11+
<Filter>Source Files</Filter>
12+
</ClCompile>
13+
</ItemGroup>
14+
<ItemGroup>
15+
<ClInclude Include="$(ProjectDir)\include\Launcher\Injector.hpp">
16+
<Filter>Header Files</Filter>
17+
</ClInclude>
18+
<ClInclude Include="$(ProjectDir)\include\Launcher\Process.hpp">
19+
<Filter>Header Files</Filter>
20+
</ClInclude>
21+
<ClInclude Include="$(ProjectDir)\include\Logger.hpp">
22+
<Filter>Header Files</Filter>
23+
</ClInclude>
24+
</ItemGroup>
25+
<ItemGroup>
26+
<CustomBuild Include="$(ProjectDir)\CMakeLists.txt" />
27+
</ItemGroup>
28+
<ItemGroup>
29+
<Filter Include="Header Files">
30+
<UniqueIdentifier>{80A44958-2975-32B8-A79D-93869DD66D68}</UniqueIdentifier>
31+
</Filter>
32+
<Filter Include="Source Files">
33+
<UniqueIdentifier>{73887DB7-1B69-3174-B37F-040EBDCA5326}</UniqueIdentifier>
34+
</Filter>
35+
</ItemGroup>
36+
</Project>

O2FS.sln

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
2+
Microsoft Visual Studio Solution File, Format Version 12.00
3+
# Visual Studio Version 16
4+
VisualStudioVersion = 16.0.31424.327
5+
MinimumVisualStudioVersion = 10.0.40219.1
6+
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "O2FS", "O2FS.vcxproj", "{70485A38-BA8F-3664-81B0-1746D8D1504A}"
7+
EndProject
8+
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "O2FS.Launcher", "O2FS.Launcher.vcxproj", "{8A36756B-9022-3A87-BA2F-207FFEB52A57}"
9+
EndProject
10+
Global
11+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
12+
Debug|x86 = Debug|x86
13+
Release|x86 = Release|x86
14+
EndGlobalSection
15+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
16+
{70485A38-BA8F-3664-81B0-1746D8D1504A}.Debug|x86.ActiveCfg = Debug|Win32
17+
{70485A38-BA8F-3664-81B0-1746D8D1504A}.Debug|x86.Build.0 = Debug|Win32
18+
{70485A38-BA8F-3664-81B0-1746D8D1504A}.Release|x86.ActiveCfg = Release|Win32
19+
{70485A38-BA8F-3664-81B0-1746D8D1504A}.Release|x86.Build.0 = Release|Win32
20+
{8A36756B-9022-3A87-BA2F-207FFEB52A57}.Debug|x86.ActiveCfg = Debug|Win32
21+
{8A36756B-9022-3A87-BA2F-207FFEB52A57}.Debug|x86.Build.0 = Debug|Win32
22+
{8A36756B-9022-3A87-BA2F-207FFEB52A57}.Release|x86.ActiveCfg = Release|Win32
23+
{8A36756B-9022-3A87-BA2F-207FFEB52A57}.Release|x86.Build.0 = Release|Win32
24+
EndGlobalSection
25+
GlobalSection(SolutionProperties) = preSolution
26+
HideSolutionNode = FALSE
27+
EndGlobalSection
28+
GlobalSection(ExtensibilityGlobals) = postSolution
29+
SolutionGuid = {C4D7E5FD-35C7-379A-A70B-4AE44EF27F4E}
30+
EndGlobalSection
31+
EndGlobal

0 commit comments

Comments
 (0)