52 Commits

Author SHA1 Message Date
bruvzg
e37433ee07 Merge pull request #29 from bruvzg/fix_arm64
Fix ARM64 build.
25.3.1-1
2025-12-16 10:55:41 +02:00
Pāvels Nadtočajevs
f66b541698 Fix ARM64 build. 2025-12-15 15:10:38 +02:00
Rémi Verschelde
8bf797f994 Merge pull request #28 from blueskythlikesclouds/input-attachment-to-srv
Convert input attachments to textures when lowering them.
25.3.1
2025-12-12 14:40:56 +01:00
Skyth
809e271095 Convert input attachments to textures when lowering them. 2025-12-12 15:12:10 +03:00
Rémi Verschelde
10efaa3a24 Merge pull request #26 from blueskythlikesclouds/alloc-redirection
Redirect memory allocation functions to Godot NIR bridge.
2025-12-12 13:09:32 +01:00
Skyth
2ec0afddea Redirect memory allocation functions to Godot NIR bridge. 2025-12-12 15:02:15 +03:00
Rémi Verschelde
6e74f88c54 Merge pull request #27 from blueskythlikesclouds/mesa-ver-upgrade
Upgrade Mesa version to 25.3.1.
2025-12-12 12:29:32 +01:00
Skyth
1bdec2ab6a Upgrade Mesa version to 25.3.1. 2025-12-09 17:28:17 +03:00
bruvzg
7719abc192 Merge pull request #23 from blueskythlikesclouds/ndebug-and-no-dxil-opt
Add NDEBUG & disable some DXIL optimizations.
23.1.9-2
2025-11-03 10:44:51 +02:00
bruvzg
e20edfeddb Merge pull request #22 from blueskythlikesclouds/remove-bit-masking
Remove 0xbfffffff bitmask from specialization constants.
2025-11-03 10:41:31 +02:00
bruvzg
2c12ce242a Merge pull request #25 from bruvzg/ci_scons_44
Bump SCons version to fix MSVC detection.
2025-11-01 19:47:05 +02:00
Pāvels Nadtočajevs
6e377555a0 Bump SCons version to fix MSVC detection. 2025-11-01 19:40:12 +02:00
Skyth
c2ae0c3cb6 Remove 0xbfffffff bitmask from specialization constants. 2025-10-31 23:29:43 +03:00
Skyth
eb3eef2b98 Add NDEBUG & disable DXIL optimizations. 2025-10-31 23:05:17 +03:00
bruvzg
c95c0dc8b0 Merge pull request #24 from bruvzg/ci_upd
Update CI images to windows-2022
2025-10-31 21:48:25 +02:00
Pāvels Nadtočajevs
f4466616e6 Update CI images to windows-2022 2025-10-31 21:43:02 +02:00
Rémi Verschelde
226205dac0 Merge pull request #20 from bruvzg/remove_arm32
[CI] Remove 32-bit ARM build.
2024-07-26 13:54:33 +02:00
bruvzg
28a96cc196 [CI] Remove 32-bit ARM build. 2024-07-26 14:36:28 +03:00
Rémi Verschelde
ff659277fb Merge pull request #19 from bruvzg/ci_upload_fix
[CI] Fix upload action.
23.1.9-1
2024-07-18 14:13:04 +02:00
bruvzg
c2b257ae7c [CI] Fix upload action. 2024-07-18 14:36:26 +03:00
Rémi Verschelde
a46efbb83c Merge pull request #16 from bruvzg/ci_set
Setup CI for MSVC, MinGW/GCC and MinGW/LLVM
2024-07-18 10:48:44 +02:00
Rémi Verschelde
4fa39a02b0 Merge pull request #18 from kus04e4ek/master
Add missing imports, remove wildcard and unused imports
2024-07-17 14:20:53 +02:00
Kusok
232dda2a37 Add missing imports, remove wildcard and unused imports 2024-07-16 16:53:40 +08:00
bruvzg
e72737a1a8 Setup CI for MSVC, MinGW/GCC and MinGW/LLVM 2024-07-12 11:44:15 +03:00
Rémi Verschelde
27a49f8601 Merge pull request #15 from RandomShaper/bye_bye_dxil_dll
Remove patch to the no longer needed validation feature
2024-07-11 23:17:32 +02:00
Pedro J. Estébanez
1e66fa02bf Remove patch to the no longer needed validation feature 2024-07-11 10:45:09 +02:00
Rémi Verschelde
e101346d1e Merge pull request #14 from RandomShaper/handle_sc_composite
Handle OpSpecConstantComposite
2024-07-02 15:31:02 +02:00
Pedro J. Estébanez
b6ed19e648 Handle OpSpecConstantComposite 2024-07-02 15:13:54 +02:00
Rémi Verschelde
360d88bb7e Merge pull request #11 from RandomShaper/asan
Add `use_asan` build option
2024-07-02 14:30:35 +02:00
Rémi Verschelde
d3d7cc7a5a Merge pull request #13 from bruvzg/llvm-mingw-win
Fix LLVM/MinGW build on Windows.
2024-06-20 14:04:05 +02:00
bruvzg
97b2e3580c Fix LLVM/MinGW build on Windows. 2024-06-20 14:20:50 +03:00
Rémi Verschelde
7546e0b405 Merge pull request #12 from bruvzg/fix_clang_mingw
Fix LLVM/MinGW build.
2024-06-19 20:46:48 +02:00
bruvzg
c4211d1652 Fix LLVM/MinGW build. 2024-06-19 20:50:10 +03:00
Pedro J. Estébanez
d61034bda2 Add use_asan build option 2024-06-14 14:03:34 +02:00
Rémi Verschelde
0af9607ba4 Merge pull request #10 from bruvzg/add_license
Add missing license file.
2024-04-15 22:32:30 +02:00
bruvzg
ea21cea768 Add missing license file. 2024-04-15 23:25:08 +03:00
Rémi Verschelde
b3565f5cb4 Merge pull request #8 from bruvzg/fix_dxil_load
Fix infinite loop when loading DXIL.dll if library is not found.
2024-02-13 11:29:40 +01:00
bruvzg
8d78553b4f Fix infinite loop when loading DXIL.dll if library is not found. 2024-02-11 17:15:33 +02:00
Rémi Verschelde
4eaadef72f Merge pull request #6 from bruvzg/update_mesa
Update mesa to 23.1.9
23.1.9
2024-01-31 14:03:24 +01:00
Rémi Verschelde
d6fe1ff902 Merge pull request #5 from bruvzg/mesa_no_ex
[MinGW] Disable exceptions.
2024-01-31 13:16:31 +01:00
bruvzg
0985547d67 Update mesa to 23.1.9 2024-01-31 14:08:58 +02:00
bruvzg
9557f078cd [MinGW] Disable exceptions. 2024-01-30 19:13:32 +02:00
Rémi Verschelde
f2e0daf5eb Merge pull request #4 from shana/more-build-options
Allow setting additional defines and an extra suffix from the cli
2024-01-10 14:07:43 +01:00
Andreia Gaita
938501d717 Allow setting additional defines and an extra suffix from the command line
We need to do some builds with additional defines for Xbox because the
dxil validator code uses a different DLL name depending on the active
defines. It's not really worth adding a whole new platform for this,
everything else is just the normal Windows build, so this PR just adds
the ability to pass in additional defines from the CLI, and an option
to set an additional suffix to the binary, so we can tell builds apart.
2024-01-10 13:53:55 +01:00
bruvzg
5435ae8bae Merge pull request #3 from superxkooda/clangarm64
Modifications to get compiled in msys2 on arm64
2024-01-08 09:04:02 +02:00
Michael Anghelone
149bcf6cff Modifications to get compiled in msys2 on arm64
These modifications make it possible to compile within a msys2
clangarm64 environment.

Command used to build:
```
    scons use_mingw=True use_llvm=True arch=arm64
```

The patch file prevents this error from occurring:
```
    gcc -o godot-mesa/src/microsoft/compiler/nir_to_dxil.windows.arm64.o -c -std=c11 -O3 -DMINGW_ENABLED -DWINVER=0x0603 -D_WIN32_WINNT=0x0603 -D__MSVCRT_VERSION__=1792 -DHAVE_STRUCT_TIMESPEC -DWINDOWS_NO_FUTEX -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -DPACKAGE_VERSION=\"23.1.0-devel\" -DPACKAGE_BUGREPORT=\"https://gitlab.freedesktop.org/mesa/mesa/-/issues\" -DPIPE_SUBSYSTEM_WINDOWS_USER -D_USE_MATH_DEFINES -DHAVE_TIMESPEC_GET -DHAVE_STRUCT_TIMESPEC -D_UCRT -Igodot-mesa -Igodot-mesa/bin -Igodot-mesa/include -Igodot-mesa/include/GL -Igodot-mesa/include/GLES -Igodot-mesa/include/GLES2 -Igodot-mesa/include/GLES3 -Igodot-mesa/include/KHR -Igodot-mesa/src -Igodot-mesa/src/c11/impl -Igodot-mesa/src/compiler -Igodot-mesa/src/compiler/glsl -Igodot-mesa/src/compiler/nir -Igodot-mesa/src/compiler/nir/__pycache__ -Igodot-mesa/src/compiler/spirv -Igodot-mesa/src/gallium -Igodot-mesa/src/gallium/include -Igodot-mesa/src/gallium/include/pipe -Igodot-mesa/src/mesa -Igodot-mesa/src/mesa/main -Igodot-mesa/src/mesa/program -Igodot-mesa/src/microsoft -Igodot-mesa/src/microsoft/compiler -Igodot-mesa/src/microsoft/spirv_to_dxil -Igodot-mesa/src/util -Igodot-mesa/src/util/format -Igodot-mesa/src/util/format/__pycache__ -Igodot-mesa/src/util/sha1 -Igodot-mesa/src/vulkan -Igodot-mesa/src/vulkan/runtime -Igodot-mesa/src/vulkan/util -Igodot-mesa/generated/src -Igodot-mesa/generated/src/compiler -Igodot-mesa/generated/src/compiler/nir -Igodot-mesa/generated/src/compiler/nir -Igodot-mesa/generated/src/compiler/nir -Igodot-mesa/generated/src/compiler/nir -Igodot-mesa/generated/src/compiler/spirv -Igodot-mesa/generated/src/util/format -I. -Ivulkan/include godot-mesa/src/microsoft/compiler/nir_to_dxil.c
    =====
    godot-mesa/src/microsoft/compiler/nir_to_dxil.c:5087:7: error: expected expression
     5087 |       const struct dxil_value* value = get_src(ctx, &intr->src[0], 0, nir_type_uint);
          |       ^
    godot-mesa/src/microsoft/compiler/nir_to_dxil.c:5088:45: error: use of undeclared identifier 'value'
     5088 |       store_dest_value(ctx, &intr->dest, 0, value);
          |                                             ^
    2 errors generated.

    =====
    scons: *** [godot-mesa/src/microsoft/compiler/nir_to_dxil.windows.arm64.o] Error 1
    scons: building terminated because of errors.
```

With these change I am able to build on a Surface Pro X without any
issues.

Afterwords compiling godot itself looks like this:
```
$ scons  mingw_prefix=/clangarm64 LINKFLAGS="-lpng -lembree3.dll -L/clangarm64/lib/" CCFLAGS='-I/clangarm64/include/-v' CC=aarch64-w64-mingw32-gcc CXX=aarch64-w64-mingw32-g++ platform=windows builtin_embree=False builtin_libpng=False d3d12=True mesa_libs=<path to godot-nir-static> dxc_path=<path to dxc> opengl3=False vulkan=False use_volk=False
```

embree, and libpng included in the repo proved to be difficult to
compile with. I opted to use the pre compiled versions available through
my package manager.

This was a fun challenge, and I hope it is found to be useful.

PS this only worked on the current master of Godot (v4.3.dev.custom_build [13a0d6e9b]),
the 4.2 branch would not compile.
2024-01-05 16:40:23 -05:00
Yuri Sizov
aa5c9775c7 Merge pull request #2 from bruvzg/mingw_fixes
[MinGW] Rename conflicting file, add missing timespec function implementation.
23.1.0-devel-mingw
2023-12-14 16:18:06 +01:00
bruvzg
d1ca231620 [MinGW] Rename conflicting file, add missing timespec function implementation. 2023-12-14 11:07:37 +02:00
bruvzg
9c0754e4fe Merge pull request #1 from RandomShaper/master
Update Godot patch
23.1.0-devel
2023-12-07 18:04:08 +02:00
Pedro J. Estébanez
46a6ca6a2d Update Godot patch 2023-12-07 14:55:59 +01:00