Fix windows builds

- Fixes build error for windows debug 32bit.
- Allows building windows release with PTY enabled.
- Updates godot-cpp.
This commit is contained in:
Leroy Hopson 2021-07-18 16:06:38 +07:00
parent 84243cd824
commit 8bc3a13adb
No known key found for this signature in database
GPG key ID: D2747312A6DB51AA
5 changed files with 25 additions and 12 deletions

View file

@ -123,7 +123,7 @@ elif env['platform'] == 'javascript':
env['OBJSUFFIX'] = '.bc'
env['PROGPREFIX'] = ''
env['PROGSUFFIX'] = ''
env['LIBSUFFIX'] = '.bc'
env['LIBSUFFIX'] = '.a'
env['LIBPREFIXES'] = ['$LIBPREFIX']
env['LIBSUFFIXES'] = ['$LIBSUFFIX']
env.Replace(SHLINKFLAGS='$LINKFLAGS')
@ -162,11 +162,10 @@ elif env['platform'] == 'windows':
# On Windows using MSVC.
if host_platform == 'windows':
env.Append(LINKFLAGS=['/W3', '/GR'])
if env['target'] == 'debug':
env.Append(CCFLAGS=['/Z7', '/Od', '/EHsc', '/D_DEBUG', '/MDd'])
elif env['target'] == 'release':
env.Append(CCFLAGS=['/O2', '/EHsc', '/DNDEBUG', '/MT'])
env.Append(CCFLAGS=['/O2', '/EHsc', '/DNDEBUG', '/MD'])
# On Windows, Linux, or MacOS using MinGW.
elif host_platform == 'linux' or host_platform == 'osx':
@ -227,7 +226,9 @@ Default(libtsm)
# Build libgodot-xterm.
env.Append(CXXFLAGS=['-std=c++14'])
if env['platform'] != 'windows':
env.Append(CXXFLAGS=['-std=c++14'])
env.Append(CPPPATH=[
'src/',
'thirdparty/libtsm/build/src/tsm',
@ -288,7 +289,7 @@ if env['platform'] == 'linux':
libsuffix = "a"
suffix = "so"
elif env['platform'] == 'javascript':
libsuffix = "bc"
libsuffix = "a"
suffix = "wasm"
elif env['platform'] == 'windows':
libsuffix = "lib"

View file

@ -64,7 +64,13 @@ scons generate_bindings=yes target=$target -j$nproc
cd ${LIBUV_DIR}
mkdir build || true
cd build
cmake .. -DCMAKE_BUILD_TYPE=$target -DBUILD_SHARED_LIBS=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=TRUE
args="-DCMAKE_BUILD_TYPE=$target -DBUILD_SHARED_LIBS=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=TRUE"
if [ "$target" == "release" ]; then
args="$args -DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreadedDLL"
else
args="$args -DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreadedDebugDLL"
fi
cmake .. $args
cd ..
cmake --build build --config $target -j$nproc

@ -1 +1 @@
Subproject commit b8eebe5eb61f1b22d2d829cccef264138b106cdb
Subproject commit 26d4df4e174124e1174c624d770661b1394fcf5f