bare bones cmake & tiny warnings (#1)

* add cmakelist

* fix 2 warnings

* rename libs

* add the multithreaded thing

* combine libpng into render lib

---------

Co-authored-by: gsds <51339266+Patoke@users.noreply.github.com>
This commit is contained in:
alk
2026-04-18 00:41:02 -04:00
committed by GitHub
co-authored by gsds
parent 44e6c12004
commit 576f038dd0
9 changed files with 151 additions and 3 deletions
+4 -1
View File
@@ -435,6 +435,9 @@ FodyWeavers.xsd
extraX64.h
.vscode/
build/
# generated shader headers
VS_PF3_TF2_CB4_NB4_XW1.h
VS_Compressed.h
@@ -446,4 +449,4 @@ PS_Standard.h
PS_TextureProjection.h
PS_ForceLOD.h
PS_ScreenSpace.h
PS_ScreenClear.h
PS_ScreenClear.h
+6
View File
@@ -0,0 +1,6 @@
cmake_minimum_required(VERSION 3.25 FATAL_ERROR)
project(4JLibs LANGUAGES CXX)
# TODO: target selection?
add_subdirectory(Windows_Libs/Dev)
+10
View File
@@ -0,0 +1,10 @@
cmake_minimum_required(VERSION 3.25 FATAL_ERROR)
project(4JLibs.Windows LANGUAGES CXX)
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
add_subdirectory(Input)
add_subdirectory(Profile)
add_subdirectory(Render)
add_subdirectory(Storage)
+26
View File
@@ -0,0 +1,26 @@
cmake_minimum_required(VERSION 3.25 FATAL_ERROR)
project(4JLibs.Windows.Input LANGUAGES CXX)
add_library(${PROJECT_NAME} STATIC
4J_Input.cpp
INP_ForceFeedback.cpp
INP_Keyboard.cpp
INP_Main.cpp
INP_StringCheck.cpp
LinkedList.cpp
stdafx.cpp
)
target_include_directories(${PROJECT_NAME} PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
)
target_precompile_headers(${PROJECT_NAME} PRIVATE
stdafx.h
)
set_target_properties(${PROJECT_NAME} PROPERTIES
PREFIX ""
OUTPUT_NAME "4J_Input"
)
+1 -1
View File
@@ -122,7 +122,7 @@ void CForceFeedback::Tick(void)
LinkedList::_LL_NODE *pTemp = pRumbleNode;
pRumbleNode = pRumbleNode->m_Next;
delete pTemp->m_pvData;
delete pTemp->GetDataAs<RUMBLE_EFFECT>();
delete pTemp;
}
else
+26
View File
@@ -0,0 +1,26 @@
cmake_minimum_required(VERSION 3.25 FATAL_ERROR)
project(4JLibs.Windows.Profile LANGUAGES CXX)
add_library(${PROJECT_NAME} STATIC
4J_Profile.cpp
PRO_AwardManager.cpp
PRO_Data.cpp
PRO_Main.cpp
PRO_RichPresence.cpp
PRO_Sys.cpp
stdafx.cpp
)
target_include_directories(${PROJECT_NAME} PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
)
target_precompile_headers(${PROJECT_NAME} PRIVATE
stdafx.h
)
set_target_properties(${PROJECT_NAME} PROPERTIES
PREFIX ""
OUTPUT_NAME "4J_Profile"
)
+53
View File
@@ -0,0 +1,53 @@
cmake_minimum_required(VERSION 3.25 FATAL_ERROR)
project(4JLibs.Windows.Render LANGUAGES C CXX)
set(LIBPNG_SOURCES
libpng/png.c
libpng/pngerror.c
libpng/pngget.c
libpng/pngmem.c
libpng/pngpread.c
libpng/pngread.c
libpng/pngrio.c
libpng/pngrtran.c
libpng/pngrutil.c
libpng/pngset.c
libpng/pngtest.c
libpng/pngtrans.c
libpng/pngwio.c
libpng/pngwrite.c
libpng/pngwtran.c
libpng/pngwutil.c
)
add_library(${PROJECT_NAME} STATIC
${LIBPNG_SOURCES}
4J_Render.cpp
RendererCBuff.cpp
RendererCore.cpp
RendererMatrix.cpp
RendererState.cpp
RendererTexture.cpp
RendererVertex.cpp
stdafx.cpp
)
target_include_directories(${PROJECT_NAME} PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/zlib
)
target_precompile_headers(${PROJECT_NAME} PRIVATE
stdafx.h
)
set_target_properties(${PROJECT_NAME} PROPERTIES
PREFIX ""
OUTPUT_NAME "4J_Render"
)
set_source_files_properties(${LIBPNG_SOURCES} PROPERTIES
LANGUAGE C
SKIP_PRECOMPILE_HEADERS ON
)
+24
View File
@@ -0,0 +1,24 @@
cmake_minimum_required(VERSION 3.25 FATAL_ERROR)
project(4JLibs.Windows.Storage LANGUAGES C CXX)
add_library(${PROJECT_NAME} STATIC
4J_Storage.cpp
stdafx.cpp
STO_DLC.cpp
STO_Main.cpp
STO_SaveGame.cpp
)
target_include_directories(${PROJECT_NAME} PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
)
target_precompile_headers(${PROJECT_NAME} PRIVATE
stdafx.h
)
set_target_properties(${PROJECT_NAME} PROPERTIES
PREFIX ""
OUTPUT_NAME "4J_Storage"
)
+1 -1
View File
@@ -98,7 +98,7 @@ C4JStorage::ESaveGameState CSaveGame::GetSavesInfo(int iPad, int (*Func)(LPVOID
if (h == INVALID_HANDLE_VALUE)
{
DWORD error = GetLastError();
printf("Error finding save dirs: 0x%08x\n", error);
printf("Error finding save dirs: 0x%08lx\n", error);
}
else
{