hotfix: Windows build attempt

This commit is contained in:
John McCardle 2025-07-09 23:33:09 -04:00
parent d11f76ac43
commit 665689c550
3 changed files with 41 additions and 5 deletions

36
build_windows.bat Normal file
View File

@ -0,0 +1,36 @@
@echo off
REM Windows build script for McRogueFace
REM Run this over SSH without Visual Studio GUI
echo Building McRogueFace for Windows...
REM Clean previous build
if exist build_win rmdir /s /q build_win
mkdir build_win
cd build_win
REM Generate Visual Studio project files with CMake
REM Use -G to specify generator, -A for architecture
REM Visual Studio 2022 = "Visual Studio 17 2022"
REM Visual Studio 2019 = "Visual Studio 16 2019"
cmake -G "Visual Studio 17 2022" -A x64 ..
if errorlevel 1 (
echo CMake configuration failed!
exit /b 1
)
REM Build using MSBuild (comes with Visual Studio)
REM You can also use cmake --build . --config Release
msbuild McRogueFace.sln /p:Configuration=Release /p:Platform=x64 /m
if errorlevel 1 (
echo Build failed!
exit /b 1
)
echo Build completed successfully!
echo Executable location: build_win\Release\mcrogueface.exe
REM Alternative: Using cmake to build (works with any generator)
REM cmake --build . --config Release --parallel
cd ..

View File

@ -30,7 +30,7 @@ PyObject* PyTimer::pynew(PyTypeObject* type, PyObject* args, PyObject* kwds) {
} }
int PyTimer::init(PyTimerObject* self, PyObject* args, PyObject* kwds) { int PyTimer::init(PyTimerObject* self, PyObject* args, PyObject* kwds) {
static char* kwlist[] = {"name", "callback", "interval", NULL}; static const char* kwlist[] = {"name", "callback", "interval", NULL};
const char* name = nullptr; const char* name = nullptr;
PyObject* callback = nullptr; PyObject* callback = nullptr;
int interval = 0; int interval = 0;

View File

@ -967,7 +967,7 @@ int UIGrid::set_perspective(PyUIGridObject* self, PyObject* value, void* closure
// Python API implementations for TCOD functionality // Python API implementations for TCOD functionality
PyObject* UIGrid::py_compute_fov(PyUIGridObject* self, PyObject* args, PyObject* kwds) PyObject* UIGrid::py_compute_fov(PyUIGridObject* self, PyObject* args, PyObject* kwds)
{ {
static char* kwlist[] = {"x", "y", "radius", "light_walls", "algorithm", NULL}; static const char* kwlist[] = {"x", "y", "radius", "light_walls", "algorithm", NULL};
int x, y, radius = 0; int x, y, radius = 0;
int light_walls = 1; int light_walls = 1;
int algorithm = FOV_BASIC; int algorithm = FOV_BASIC;
@ -994,7 +994,7 @@ PyObject* UIGrid::py_is_in_fov(PyUIGridObject* self, PyObject* args)
PyObject* UIGrid::py_find_path(PyUIGridObject* self, PyObject* args, PyObject* kwds) PyObject* UIGrid::py_find_path(PyUIGridObject* self, PyObject* args, PyObject* kwds)
{ {
static char* kwlist[] = {"x1", "y1", "x2", "y2", "diagonal_cost", NULL}; static const char* kwlist[] = {"x1", "y1", "x2", "y2", "diagonal_cost", NULL};
int x1, y1, x2, y2; int x1, y1, x2, y2;
float diagonal_cost = 1.41f; float diagonal_cost = 1.41f;
@ -1022,7 +1022,7 @@ PyObject* UIGrid::py_find_path(PyUIGridObject* self, PyObject* args, PyObject* k
PyObject* UIGrid::py_compute_dijkstra(PyUIGridObject* self, PyObject* args, PyObject* kwds) PyObject* UIGrid::py_compute_dijkstra(PyUIGridObject* self, PyObject* args, PyObject* kwds)
{ {
static char* kwlist[] = {"root_x", "root_y", "diagonal_cost", NULL}; static const char* kwlist[] = {"root_x", "root_y", "diagonal_cost", NULL};
int root_x, root_y; int root_x, root_y;
float diagonal_cost = 1.41f; float diagonal_cost = 1.41f;
@ -1073,7 +1073,7 @@ PyObject* UIGrid::py_compute_astar_path(PyUIGridObject* self, PyObject* args, Py
int x1, y1, x2, y2; int x1, y1, x2, y2;
float diagonal_cost = 1.41f; float diagonal_cost = 1.41f;
static char* kwlist[] = {"x1", "y1", "x2", "y2", "diagonal_cost", NULL}; static const char* kwlist[] = {"x1", "y1", "x2", "y2", "diagonal_cost", NULL};
if (!PyArg_ParseTupleAndKeywords(args, kwds, "iiii|f", kwlist, if (!PyArg_ParseTupleAndKeywords(args, kwds, "iiii|f", kwlist,
&x1, &y1, &x2, &y2, &diagonal_cost)) { &x1, &y1, &x2, &y2, &diagonal_cost)) {