mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2024-11-25 22:01:01 +00:00
Merge branch SRB2:next into setflip
This commit is contained in:
commit
e5d16e7112
26 changed files with 738 additions and 249 deletions
4
.gitattributes
vendored
4
.gitattributes
vendored
|
@ -1,15 +1,17 @@
|
||||||
#Source code
|
#Source code
|
||||||
|
/Makefile text=auto
|
||||||
/src/*.c text=auto
|
/src/*.c text=auto
|
||||||
/src/*.h text=auto
|
/src/*.h text=auto
|
||||||
/src/*.s text=auto
|
/src/*.s text=auto
|
||||||
/src/*.m text=auto
|
/src/*.m text=auto
|
||||||
/src/*.xpm text=auto
|
/src/*.xpm text=auto
|
||||||
/src/Makefile text=auto
|
/src/Makefile text=auto
|
||||||
|
/tools/Makefile text=auto
|
||||||
/src/Make*.cfg text=auto
|
/src/Make*.cfg text=auto
|
||||||
/src/CMakeLists.txt text=auto
|
/src/CMakeLists.txt text=auto
|
||||||
|
*.mk -whitespace text=auto
|
||||||
# Windows EOL
|
# Windows EOL
|
||||||
*.cs -crlf -whitespace
|
*.cs -crlf -whitespace
|
||||||
*.mk -crlf -whitespace
|
|
||||||
*.bat -crlf -whitespace
|
*.bat -crlf -whitespace
|
||||||
*.dev -crlf -whitespace
|
*.dev -crlf -whitespace
|
||||||
*.dsp -crlf -whitespace
|
*.dsp -crlf -whitespace
|
||||||
|
|
434
.gitlab-ci.yml
Normal file
434
.gitlab-ci.yml
Normal file
|
@ -0,0 +1,434 @@
|
||||||
|
variables:
|
||||||
|
GIT_STRATEGY: clone
|
||||||
|
GIT_CLONE_PATH: $CI_BUILDS_DIR/$CI_CONCURRENT_ID/$CI_PROJECT_PATH
|
||||||
|
|
||||||
|
default:
|
||||||
|
image: debian:stable-slim
|
||||||
|
|
||||||
|
cache:
|
||||||
|
- key: ccache-$CI_PROJECT_PATH_SLUG-$CI_JOB_NAME_SLUG
|
||||||
|
fallback_keys:
|
||||||
|
- cache-$CI_PROJECT_PATH_SLUG-$CI_DEFAULT_BRANCH
|
||||||
|
- cache-$CI_PROJECT_PATH_SLUG-default
|
||||||
|
paths:
|
||||||
|
- ccache
|
||||||
|
- ccache_statslog
|
||||||
|
|
||||||
|
- key: apt-$CI_JOB_IMAGE
|
||||||
|
paths:
|
||||||
|
- apt-cache
|
||||||
|
unprotect: true
|
||||||
|
|
||||||
|
before_script:
|
||||||
|
- - |
|
||||||
|
# debconf
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:debconf[collapsed=true]\r\e[0KSetup debconf's environment"
|
||||||
|
- export DEBIAN_FRONTEND="noninteractive"
|
||||||
|
- export DEBIAN_PRIORITY="low"
|
||||||
|
- export DEBCONF_NONINTERACTIVE_SEEN="true"
|
||||||
|
- |
|
||||||
|
# debconf
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:debconf\r\e[0K"
|
||||||
|
- - |
|
||||||
|
# dpkg_aa
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:dpkg_aa[collapsed=true]\r\e[0KAdding architectures to dpkg"
|
||||||
|
- dpkg --add-architecture i386
|
||||||
|
- dpkg --add-architecture amd64
|
||||||
|
- dpkg --add-architecture arm64
|
||||||
|
- |
|
||||||
|
# dpkg_aa
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:dpkg_aa\r\e[0K"
|
||||||
|
- - |
|
||||||
|
# apt_conf
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_conf[collapsed=true]\r\e[0KSetting up APT conf"
|
||||||
|
- export APT_CACHE_DIR=`pwd`/apt-cache
|
||||||
|
- mkdir --parents --verbose $APT_CACHE_DIR/partial/
|
||||||
|
- touch /etc/apt/apt.conf.d/99build
|
||||||
|
- |
|
||||||
|
# apt.conf
|
||||||
|
echo Adding options to apt.conf':'
|
||||||
|
- |
|
||||||
|
# APT::Install-Recommends
|
||||||
|
echo APT::Install-Recommends "false"\; | tee --append /etc/apt/apt.conf.d/99build
|
||||||
|
- |
|
||||||
|
# quit
|
||||||
|
echo quiet "1"\; | tee --append /etc/apt/apt.conf.d/99build
|
||||||
|
- |
|
||||||
|
# APT::Get::Assume-Yes
|
||||||
|
echo APT::Get::Assume-Yes "true"\; | tee --append /etc/apt/apt.conf.d/99build
|
||||||
|
- |
|
||||||
|
# Dir::Cache::Archives
|
||||||
|
echo Dir::Cache::Archives "$APT_CACHE_DIR"\; | tee --append /etc/apt/apt.conf.d/99build
|
||||||
|
- |
|
||||||
|
# apt_conf
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_conf\r\e[0K"
|
||||||
|
- - |
|
||||||
|
# apt_update
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_update[collapsed=true]\r\e[0KUpdating APT listing"
|
||||||
|
- apt-get update
|
||||||
|
- |
|
||||||
|
# apt_update
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_update\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# apt_pre
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_pre[collapsed=true]\r\e[0KInstalling pre packages"
|
||||||
|
- apt-get install apt-utils
|
||||||
|
- |
|
||||||
|
# apt_pre
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_pre\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# apt_upgrade
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_upgrade[collapsed=true]\r\e[0KUpdating existing packages"
|
||||||
|
- apt-get upgrade
|
||||||
|
- |
|
||||||
|
# apt_update
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_upgrade\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# apt_common
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_common[collapsed=true]\r\e[0KInstalling common packages"
|
||||||
|
- apt-get install make git ccache nasm
|
||||||
|
- |
|
||||||
|
# apt_common
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_common\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# ccache_config
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:ccache_config[collapsed=true]\r\e[0KSetting up ccache config"
|
||||||
|
- mkdir --parents --verbose ~/.ccache/
|
||||||
|
- touch ~/.ccache/ccache.conf
|
||||||
|
- |
|
||||||
|
# cache.conf
|
||||||
|
echo Adding ccache configution option
|
||||||
|
- |
|
||||||
|
# base_dir
|
||||||
|
echo base_dir = $PWD | tee --append ~/.ccache/ccache.conf
|
||||||
|
- |
|
||||||
|
# cache_dir
|
||||||
|
echo cache_dir = $PWD/ccache | tee --append ~/.ccache/ccache.conf
|
||||||
|
- |
|
||||||
|
# compiler_check
|
||||||
|
echo compiler_check = content | tee --append ~/.ccache/ccache.conf
|
||||||
|
- |
|
||||||
|
# stats_log
|
||||||
|
echo stats_log = $PWD/ccache_statslog | tee --append ~/.ccache/ccache.conf
|
||||||
|
- |
|
||||||
|
# max_size
|
||||||
|
echo max_size = 50M | tee --append ~/.ccache/ccache.conf
|
||||||
|
- |
|
||||||
|
# ccache_config
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:ccache_config\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# cache_reset
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:ccache_reset[collapsed=true]\r\e[0KResetting ccache statistics"
|
||||||
|
- ccache --zero-stats
|
||||||
|
- ccache --show-stats
|
||||||
|
- |
|
||||||
|
# ccache_reset
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:ccache_reset\r\e[0K"
|
||||||
|
|
||||||
|
artifacts:
|
||||||
|
paths:
|
||||||
|
- "bin/"
|
||||||
|
- "src/comptime.h"
|
||||||
|
name: "$CI_PROJECT_PATH_SLUG-$CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA-$CI_JOB_NAME_SLUG"
|
||||||
|
|
||||||
|
after_script:
|
||||||
|
- - |
|
||||||
|
# apt_clean
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_clean[collapsed=true]\r\e[0KCleaning of unneeded APT packages"
|
||||||
|
- apt-get autoclean
|
||||||
|
- |
|
||||||
|
# apt_clean
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_clean\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# ccache_stats
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:ccache_stats[collapsed=true]\r\e[0Kccache statistics:"
|
||||||
|
- ccache --show-stats --verbose
|
||||||
|
- ccache --show-log-stats --verbose
|
||||||
|
- |
|
||||||
|
# ccahe_stats
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:ccache_stats\r\e[0K"
|
||||||
|
|
||||||
|
stages:
|
||||||
|
- build
|
||||||
|
|
||||||
|
Debian testing GCC:
|
||||||
|
stage: build
|
||||||
|
image: debian:testing-slim
|
||||||
|
|
||||||
|
allow_failure: true
|
||||||
|
|
||||||
|
artifacts:
|
||||||
|
name: "$CI_PROJECT_PATH_SLUG-$CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA-testing-gcc"
|
||||||
|
|
||||||
|
variables:
|
||||||
|
CC: gcc
|
||||||
|
LDFLAGS: -Wl,-fuse-ld=gold
|
||||||
|
|
||||||
|
script:
|
||||||
|
- - |
|
||||||
|
# apt_toolchain
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_toolchain[collapsed=true]\r\e[0KInstalling toolchain packages"
|
||||||
|
- apt-get install gcc
|
||||||
|
- |
|
||||||
|
# apt_toolchain
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_toolchain\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# apt_development
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_development[collapsed=true]\r\e[0KInstalling development packages"
|
||||||
|
- apt-get install libsdl2-mixer-dev libpng-dev libcurl4-openssl-dev libgme-dev libopenmpt-dev
|
||||||
|
- |
|
||||||
|
# apt_development
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_development\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# make
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:make[collapsed=false]\r\e[0KCompiling SRB2"
|
||||||
|
- make --directory=src --keep-going CCACHE=1 ERRORMODE=1 NONX86=1 || make --directory=src --keep-going CCACHE=1 ERRORMODE=1 NONX86=1
|
||||||
|
- |
|
||||||
|
# make
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:make\r\e[0K"
|
||||||
|
|
||||||
|
Windows x86:
|
||||||
|
stage: build
|
||||||
|
|
||||||
|
artifacts:
|
||||||
|
paths:
|
||||||
|
- "bin/"
|
||||||
|
- "src/comptime.h"
|
||||||
|
expose_as: "Win32"
|
||||||
|
name: "$CI_PROJECT_PATH_SLUG-$CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA-Win32"
|
||||||
|
|
||||||
|
variables:
|
||||||
|
PREFIX: i686-w64-mingw32
|
||||||
|
|
||||||
|
script:
|
||||||
|
- - |
|
||||||
|
# apt_toolchain
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_toolchain[collapsed=true]\r\e[0KInstalling toolchain packages"
|
||||||
|
- apt-get install gcc-mingw-w64-i686-win32
|
||||||
|
- |
|
||||||
|
# apt_toolchain
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_toolchain\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# make
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:make[collapsed=false]\r\e[0KCompiling SRB2"
|
||||||
|
- make --directory=src --keep-going CCACHE=1 ERRORMODE=1 MINGW=1 SDL=1 || make --directory=src --keep-going CCACHE=1 ERRORMODE=1 MINGW=1 SDL=1
|
||||||
|
- |
|
||||||
|
# make
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:make\r\e[0K"
|
||||||
|
|
||||||
|
Debian stable:amd64:
|
||||||
|
stage: build
|
||||||
|
|
||||||
|
artifacts:
|
||||||
|
paths:
|
||||||
|
- "bin/"
|
||||||
|
- "src/comptime.h"
|
||||||
|
expose_as: "Debian amd64"
|
||||||
|
name: "$CI_PROJECT_PATH_SLUG-$CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA-x86-64"
|
||||||
|
|
||||||
|
variables:
|
||||||
|
CC: x86_64-linux-gnu-gcc
|
||||||
|
LDFLAGS: -Wl,-fuse-ld=gold
|
||||||
|
OBJCOPY: x86_64-linux-gnu-objcopy
|
||||||
|
OBJDUMP: x86_64-linux-gnu-objdump
|
||||||
|
PKG_CONFIG_PATH: /usr/lib/x86_64-linux-gnu/pkgconfig
|
||||||
|
|
||||||
|
script:
|
||||||
|
- - |
|
||||||
|
# apt_toolchain
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_toolchain[collapsed=true]\r\e[0KInstalling toolchain packages"
|
||||||
|
- apt-get install gcc-x86-64-linux-gnu || apt-get install gcc
|
||||||
|
- |
|
||||||
|
# apt_toolchain
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_toolchain\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# apt_development
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_development[collapsed=true]\r\e[0KInstalling development packages"
|
||||||
|
- apt-get install libsdl2-mixer-dev:amd64 libpng-dev:amd64 libcurl4-openssl-dev:amd64 libgme-dev:amd64 libopenmpt-dev:amd64
|
||||||
|
- |
|
||||||
|
# apt_development
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_development\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# make
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:make[collapsed=false]\r\e[0KCompiling SRB2"
|
||||||
|
- make --directory=src --keep-going CCACHE=1 ERRORMODE=1 LINUX64=1 || make --directory=src --keep-going CCACHE=1 ERRORMODE=1 LINUX64=1
|
||||||
|
- |
|
||||||
|
# make
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:make\r\e[0K"
|
||||||
|
|
||||||
|
Debian stable:i386:
|
||||||
|
stage: build
|
||||||
|
|
||||||
|
artifacts:
|
||||||
|
paths:
|
||||||
|
- "bin/"
|
||||||
|
- "src/comptime.h"
|
||||||
|
expose_as: "Debian i386"
|
||||||
|
name: "$CI_PROJECT_PATH_SLUG-$CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA-i686"
|
||||||
|
|
||||||
|
variables:
|
||||||
|
CC: i686-linux-gnu-gcc
|
||||||
|
OBJCOPY: i686-linux-gnu-objcopy
|
||||||
|
OBJDUMP: i686-linux-gnu-objdump
|
||||||
|
PKG_CONFIG_PATH: /usr/lib/i386-linux-gnu/pkgconfig
|
||||||
|
|
||||||
|
script:
|
||||||
|
- - |
|
||||||
|
# apt_toolchain
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_toolchain[collapsed=true]\r\e[0KInstalling toolchain packages"
|
||||||
|
- apt-get install gcc-i686-linux-gnu || apt-get install gcc
|
||||||
|
- |
|
||||||
|
# apt_toolchain
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_toolchain\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# apt_development
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_development[collapsed=true]\r\e[0KInstalling development packages"
|
||||||
|
- apt-get install libsdl2-mixer-dev:i386 libpng-dev:i386 libcurl4-openssl-dev:i386 libgme-dev:i386 libopenmpt-dev:i386
|
||||||
|
- |
|
||||||
|
# apt_development
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_development\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# make
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:make[collapsed=false]\r\e[0KCompiling SRB2"
|
||||||
|
- make --directory=src --keep-going CCACHE=1 ERRORMODE=1 LINUX=1 || make --directory=src --keep-going CCACHE=1 ERRORMODE=1 LINUX=1
|
||||||
|
- |
|
||||||
|
# make
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:make\r\e[0K"
|
||||||
|
|
||||||
|
Debian stable:arm64:
|
||||||
|
stage: build
|
||||||
|
|
||||||
|
artifacts:
|
||||||
|
paths:
|
||||||
|
- "bin/"
|
||||||
|
- "src/comptime.h"
|
||||||
|
expose_as: "Debian arm64"
|
||||||
|
name: "$CI_PROJECT_PATH_SLUG-$CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA-aarch64"
|
||||||
|
|
||||||
|
variables:
|
||||||
|
CC: aarch64-linux-gnu-gcc
|
||||||
|
LDFLAGS: -Wl,-fuse-ld=gold
|
||||||
|
OBJCOPY: aarch64-linux-gnu-objcopy
|
||||||
|
OBJDUMP: aarch64-linux-gnu-objdump
|
||||||
|
PKG_CONFIG_PATH: /usr/lib/aarch64-linux-gnu/pkgconfig
|
||||||
|
|
||||||
|
script:
|
||||||
|
- - |
|
||||||
|
# apt_toolchain
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_toolchain[collapsed=true]\r\e[0KInstalling toolchain packages"
|
||||||
|
- apt-get install gcc-aarch64-linux-gnu || apt-get install gcc
|
||||||
|
- |
|
||||||
|
# apt_toolchain
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_toolchain\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# apt_development
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_development[collapsed=true]\r\e[0KInstalling development packages"
|
||||||
|
- apt-get install libsdl2-mixer-dev:arm64 libpng-dev:arm64 libcurl4-openssl-dev:arm64 libgme-dev:arm64 libopenmpt-dev:arm64
|
||||||
|
- |
|
||||||
|
# apt_development
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_development\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# make
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:make[collapsed=false]\r\e[0KCompiling SRB2"
|
||||||
|
- make --directory=src --keep-going CCACHE=1 ERRORMODE=1 LINUX64=1 ERRORMODE=1 NONX86=1 || make --directory=src --keep-going CCACHE=1 ERRORMODE=1 LINUX64=1 NONX86=1
|
||||||
|
- |
|
||||||
|
# make
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:make\r\e[0K"
|
||||||
|
|
||||||
|
Windows x64:
|
||||||
|
stage: build
|
||||||
|
|
||||||
|
artifacts:
|
||||||
|
paths:
|
||||||
|
- "bin/"
|
||||||
|
- "src/comptime.h"
|
||||||
|
expose_as: "Win64"
|
||||||
|
name: "$CI_PROJECT_PATH_SLUG-$CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA-Win64"
|
||||||
|
|
||||||
|
variables:
|
||||||
|
PREFIX: x86_64-w64-mingw32
|
||||||
|
|
||||||
|
script:
|
||||||
|
- - |
|
||||||
|
# apt_toolchain
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_toolchain[collapsed=true]\r\e[0KInstalling toolchain packages"
|
||||||
|
- apt-get install gcc-mingw-w64-x86-64-win32
|
||||||
|
- |
|
||||||
|
# apt_toolchain
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_toolchain\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# make
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:make[collapsed=false]\r\e[0KCompiling SRB2"
|
||||||
|
- make --directory=src --keep-going CCACHE=1 ERRORMODE=1 MINGW64=1 SDL=1 || make --directory=src --keep-going CCACHE=1 ERRORMODE=1 MINGW64=1 SDL=1
|
||||||
|
- |
|
||||||
|
# make
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:make\r\e[0K"
|
||||||
|
|
||||||
|
Debian stable Clang:
|
||||||
|
stage: build
|
||||||
|
|
||||||
|
allow_failure: true
|
||||||
|
|
||||||
|
artifacts:
|
||||||
|
name: "$CI_PROJECT_PATH_SLUG-$CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA-clang"
|
||||||
|
|
||||||
|
variables:
|
||||||
|
CC: clang
|
||||||
|
WFLAGS: -Wno-cast-align
|
||||||
|
CFLAGS: -Wno-cast-align
|
||||||
|
LDFLAGS: -Wl,-fuse-ld=gold
|
||||||
|
|
||||||
|
script:
|
||||||
|
- - |
|
||||||
|
# apt_toolchain
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_toolchain[collapsed=true]\r\e[0KInstalling toolchain packages"
|
||||||
|
- apt-get install clang
|
||||||
|
- |
|
||||||
|
# apt_toolchain
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_toolchain\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# apt_development
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_development[collapsed=true]\r\e[0KInstalling development packages"
|
||||||
|
- apt-get install libsdl2-mixer-dev libpng-dev libcurl4-openssl-dev libgme-dev libopenmpt-dev
|
||||||
|
- |
|
||||||
|
# apt_development
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_development\r\e[0K"
|
||||||
|
|
||||||
|
- - |
|
||||||
|
# make
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:make[collapsed=false]\r\e[0KCompiling SRB2"
|
||||||
|
- make --directory=src --keep-going CCACHE=1 ERRORMODE=1 NONX86=1 || make --directory=src --keep-going CCACHE=1 ERRORMODE=1 NONX86=1
|
||||||
|
- |
|
||||||
|
# make
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:make\r\e[0K"
|
||||||
|
|
||||||
|
Debian testing Clang:
|
||||||
|
extends: Debian stable Clang
|
||||||
|
|
||||||
|
image: debian:testing-slim
|
||||||
|
|
||||||
|
artifacts:
|
||||||
|
name: "$CI_PROJECT_PATH_SLUG-$CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA-testing-clang"
|
||||||
|
|
||||||
|
variables:
|
||||||
|
CC: clang
|
||||||
|
WFLAGS: -Wno-cast-align -Wno-deprecated-non-prototype
|
||||||
|
CFLAGS: -Wno-cast-align -Wno-deprecated-non-prototype
|
||||||
|
LDFLAGS: -Wl,-fuse-ld=gold
|
|
@ -3,12 +3,12 @@ ifdef ComSpec
|
||||||
COMSPEC=$(ComSpec)
|
COMSPEC=$(ComSpec)
|
||||||
endif
|
endif
|
||||||
ifdef COMSPEC
|
ifdef COMSPEC
|
||||||
OBJCOPY=objcopy.exe
|
OBJCOPY?=objcopy.exe
|
||||||
OBJDUMP=objdump.exe
|
OBJDUMP?=objdump.exe
|
||||||
GZIP?=gzip.exe
|
GZIP?=gzip.exe
|
||||||
else
|
else
|
||||||
OBJCOPY=objcopy
|
OBJCOPY?=objcopy
|
||||||
OBJDUMP=objdump
|
OBJDUMP?=objdump
|
||||||
GZIP?=gzip
|
GZIP?=gzip
|
||||||
endif
|
endif
|
||||||
DBGNAME=$(BIN).debug
|
DBGNAME=$(BIN).debug
|
||||||
|
|
|
@ -8,11 +8,7 @@ LOCAL_SRC_FILES := am_map.c \
|
||||||
command.c \
|
command.c \
|
||||||
comptime.c \
|
comptime.c \
|
||||||
console.c \
|
console.c \
|
||||||
d_clisrv.c \
|
|
||||||
d_main.c \
|
d_main.c \
|
||||||
d_net.c \
|
|
||||||
d_netcmd.c \
|
|
||||||
d_netfil.c \
|
|
||||||
dehacked.c \
|
dehacked.c \
|
||||||
f_finale.c \
|
f_finale.c \
|
||||||
f_wipe.c \
|
f_wipe.c \
|
||||||
|
@ -20,7 +16,6 @@ LOCAL_SRC_FILES := am_map.c \
|
||||||
g_game.c \
|
g_game.c \
|
||||||
g_input.c \
|
g_input.c \
|
||||||
hu_stuff.c \
|
hu_stuff.c \
|
||||||
i_tcp.c \
|
|
||||||
info.c \
|
info.c \
|
||||||
lzf.c \
|
lzf.c \
|
||||||
m_argv.c \
|
m_argv.c \
|
||||||
|
@ -32,7 +27,6 @@ LOCAL_SRC_FILES := am_map.c \
|
||||||
m_queue.c \
|
m_queue.c \
|
||||||
m_random.c \
|
m_random.c \
|
||||||
md5.c \
|
md5.c \
|
||||||
mserv.c \
|
|
||||||
p_ceilng.c \
|
p_ceilng.c \
|
||||||
p_enemy.c \
|
p_enemy.c \
|
||||||
p_fab.c \
|
p_fab.c \
|
||||||
|
@ -61,6 +55,7 @@ LOCAL_SRC_FILES := am_map.c \
|
||||||
r_things.c \
|
r_things.c \
|
||||||
s_sound.c \
|
s_sound.c \
|
||||||
screen.c \
|
screen.c \
|
||||||
|
snake.c \
|
||||||
sounds.c \
|
sounds.c \
|
||||||
st_stuff.c \
|
st_stuff.c \
|
||||||
string.c \
|
string.c \
|
||||||
|
|
|
@ -6,10 +6,6 @@ add_executable(SRB2SDL2 MACOSX_BUNDLE WIN32
|
||||||
config.h.in
|
config.h.in
|
||||||
string.c
|
string.c
|
||||||
d_main.c
|
d_main.c
|
||||||
d_clisrv.c
|
|
||||||
d_net.c
|
|
||||||
d_netfil.c
|
|
||||||
d_netcmd.c
|
|
||||||
dehacked.c
|
dehacked.c
|
||||||
deh_soc.c
|
deh_soc.c
|
||||||
deh_lua.c
|
deh_lua.c
|
||||||
|
@ -83,12 +79,10 @@ add_executable(SRB2SDL2 MACOSX_BUNDLE WIN32
|
||||||
sounds.c
|
sounds.c
|
||||||
w_wad.c
|
w_wad.c
|
||||||
filesrch.c
|
filesrch.c
|
||||||
mserv.c
|
|
||||||
http-mserv.c
|
|
||||||
i_tcp.c
|
|
||||||
lzf.c
|
lzf.c
|
||||||
b_bot.c
|
b_bot.c
|
||||||
u_list.c
|
u_list.c
|
||||||
|
snake.c
|
||||||
lua_script.c
|
lua_script.c
|
||||||
lua_baselib.c
|
lua_baselib.c
|
||||||
lua_mathlib.c
|
lua_mathlib.c
|
||||||
|
@ -149,6 +143,7 @@ set(SRB2_CONFIG_DEV_BUILD OFF CACHE BOOL
|
||||||
"Compile a development build of SRB2.")
|
"Compile a development build of SRB2.")
|
||||||
|
|
||||||
add_subdirectory(blua)
|
add_subdirectory(blua)
|
||||||
|
add_subdirectory(netcode)
|
||||||
|
|
||||||
# OS macros
|
# OS macros
|
||||||
if (UNIX)
|
if (UNIX)
|
||||||
|
|
|
@ -140,9 +140,9 @@ endif
|
||||||
|
|
||||||
OBJDUMP_OPTS?=--wide --source --line-numbers
|
OBJDUMP_OPTS?=--wide --source --line-numbers
|
||||||
|
|
||||||
OBJCOPY:=$(call Prefix,objcopy)
|
OBJCOPY?=$(call Prefix,objcopy)
|
||||||
OBJDUMP:=$(call Prefix,objdump)
|
OBJDUMP?=$(call Prefix,objdump)
|
||||||
WINDRES:=$(call Prefix,windres)
|
WINDRES?=$(call Prefix,windres)
|
||||||
|
|
||||||
GZIP?=gzip
|
GZIP?=gzip
|
||||||
GZIP_OPTS?=-9 -f -n
|
GZIP_OPTS?=-9 -f -n
|
||||||
|
|
|
@ -56,15 +56,18 @@ endif
|
||||||
|
|
||||||
# This must have high to low order.
|
# This must have high to low order.
|
||||||
gcc_versions:=\
|
gcc_versions:=\
|
||||||
102 101\
|
132 131 130\
|
||||||
93 92 91\
|
123 122 121 120\
|
||||||
84 83 82 81\
|
114 113 112 111 110\
|
||||||
75 74 73 72 71\
|
105 104 103 102 101 100\
|
||||||
64 63 62 61\
|
95 94 93 92 91 90\
|
||||||
55 54 53 52 51\
|
85 84 83 82 81 80\
|
||||||
|
75 74 73 72 71 70\
|
||||||
|
64 63 62 61 60\
|
||||||
|
55 54 53 52 51 50\
|
||||||
49 48 47 46 45 44 43 42 41 40
|
49 48 47 46 45 44 43 42 41 40
|
||||||
|
|
||||||
latest_gcc_version:=10.2
|
latest_gcc_version:=13.2
|
||||||
|
|
||||||
# Automatically set version flag, but not if one was
|
# Automatically set version flag, but not if one was
|
||||||
# manually set. And don't bother if this is a clean only
|
# manually set. And don't bother if this is a clean only
|
||||||
|
@ -74,13 +77,18 @@ ifeq (,$(call Wildvar,GCC% destructive))
|
||||||
# can't use $(CC) --version here since that uses argv[0] to display the name
|
# can't use $(CC) --version here since that uses argv[0] to display the name
|
||||||
# also gcc outputs the information to stderr, so I had to do 2>&1
|
# also gcc outputs the information to stderr, so I had to do 2>&1
|
||||||
# this program really doesn't like identifying itself
|
# this program really doesn't like identifying itself
|
||||||
version:=$(shell $(CC) -v 2>&1)
|
shellversion:=$(shell $(CC) -v 2>&1)
|
||||||
|
# Try to remove "-win32"
|
||||||
|
version:=$(subst -win32,.0,$(shellversion))
|
||||||
|
|
||||||
# check if this is in fact GCC
|
# check if this is in fact GCC
|
||||||
ifneq (,$(findstring gcc version,$(version)))
|
ifneq (,$(findstring gcc version,$(version)))
|
||||||
|
|
||||||
# in stark contrast to the name, gcc will give me a nicely formatted version number for free
|
# in stark contrast to the name, gcc will give me a nicely formatted version number for free
|
||||||
version:=$(shell $(CC) -dumpfullversion)
|
shellversion:=$(shell $(CC) -dumpfullversion)
|
||||||
|
|
||||||
|
# Try to remove "-win32"
|
||||||
|
version:=$(subst -win32,.0,$(shellversion))
|
||||||
|
|
||||||
# Turn version into words of major, minor
|
# Turn version into words of major, minor
|
||||||
v:=$(subst ., ,$(version))
|
v:=$(subst ., ,$(version))
|
||||||
|
|
|
@ -1,66 +1,66 @@
|
||||||
#
|
#
|
||||||
# Makefile for feature flags.
|
# Makefile for feature flags.
|
||||||
#
|
#
|
||||||
|
|
||||||
passthru_opts+=\
|
passthru_opts+=\
|
||||||
NO_IPV6 NOHW NOMD5 NOPOSTPROCESSING\
|
NO_IPV6 NOHW NOMD5 NOPOSTPROCESSING\
|
||||||
MOBJCONSISTANCY PACKETDROP ZDEBUG\
|
MOBJCONSISTANCY PACKETDROP ZDEBUG\
|
||||||
HAVE_MINIUPNPC\
|
HAVE_MINIUPNPC\
|
||||||
|
|
||||||
# build with debugging information
|
# build with debugging information
|
||||||
ifdef DEBUGMODE
|
ifdef DEBUGMODE
|
||||||
PACKETDROP=1
|
PACKETDROP=1
|
||||||
opts+=-DPARANOIA -DRANGECHECK
|
opts+=-DPARANOIA -DRANGECHECK
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifndef NOHW
|
ifndef NOHW
|
||||||
opts+=-DHWRENDER
|
opts+=-DHWRENDER
|
||||||
sources+=$(call List,hardware/Sourcefile)
|
sources+=$(call List,hardware/Sourcefile)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifndef NOMD5
|
ifndef NOMD5
|
||||||
sources+=md5.c
|
sources+=md5.c
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifndef NOZLIB
|
ifndef NOZLIB
|
||||||
ifndef NOPNG
|
ifndef NOPNG
|
||||||
ifdef PNG_PKGCONFIG
|
ifdef PNG_PKGCONFIG
|
||||||
$(eval $(call Use_pkg_config,PNG_PKGCONFIG))
|
$(eval $(call Use_pkg_config,PNG_PKGCONFIG))
|
||||||
else
|
else
|
||||||
PNG_CONFIG?=$(call Prefix,libpng-config)
|
PNG_CONFIG?=$(call Prefix,libpng-config)
|
||||||
$(eval $(call Configure,PNG,$(PNG_CONFIG) \
|
$(eval $(call Configure,PNG,$(PNG_CONFIG) \
|
||||||
$(if $(PNG_STATIC),--static),,--ldflags))
|
$(if $(PNG_STATIC),--static),,--ldflags))
|
||||||
endif
|
endif
|
||||||
ifdef LINUX
|
ifdef LINUX
|
||||||
opts+=-D_LARGEFILE64_SOURCE
|
opts+=-D_LARGEFILE64_SOURCE
|
||||||
endif
|
endif
|
||||||
opts+=-DHAVE_PNG
|
opts+=-DHAVE_PNG
|
||||||
sources+=apng.c
|
sources+=apng.c
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifndef NOCURL
|
ifndef NOCURL
|
||||||
CURLCONFIG?=curl-config
|
CURLCONFIG?=curl-config
|
||||||
$(eval $(call Configure,CURL,$(CURLCONFIG)))
|
$(eval $(call Configure,CURL,$(CURLCONFIG)))
|
||||||
opts+=-DHAVE_CURL
|
opts+=-DHAVE_CURL
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef HAVE_MINIUPNPC
|
ifdef HAVE_MINIUPNPC
|
||||||
libs+=-lminiupnpc
|
libs+=-lminiupnpc
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# (Valgrind is a memory debugger.)
|
# (Valgrind is a memory debugger.)
|
||||||
ifdef VALGRIND
|
ifdef VALGRIND
|
||||||
VALGRIND_PKGCONFIG?=valgrind
|
VALGRIND_PKGCONFIG?=valgrind
|
||||||
$(eval $(call Use_pkg_config,VALGRIND))
|
$(eval $(call Use_pkg_config,VALGRIND))
|
||||||
ZDEBUG=1
|
ZDEBUG=1
|
||||||
opts+=-DHAVE_VALGRIND
|
opts+=-DHAVE_VALGRIND
|
||||||
endif
|
endif
|
||||||
|
|
||||||
default_packages:=\
|
default_packages:=\
|
||||||
GME/libgme/LIBGME\
|
GME/libgme/LIBGME\
|
||||||
OPENMPT/libopenmpt/LIBOPENMPT\
|
OPENMPT/libopenmpt/LIBOPENMPT\
|
||||||
ZLIB/zlib\
|
ZLIB/zlib\
|
||||||
|
|
||||||
$(foreach p,$(default_packages),\
|
$(foreach p,$(default_packages),\
|
||||||
$(eval $(call Check_pkg_config,$(p))))
|
$(eval $(call Check_pkg_config,$(p))))
|
||||||
|
|
|
@ -14,13 +14,18 @@ size_t I_GetFreeMem(size_t *total)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void I_Sleep(UINT32 ms){}
|
void I_Sleep(UINT32 ms)
|
||||||
|
{
|
||||||
|
(void)ms;
|
||||||
|
}
|
||||||
|
|
||||||
precise_t I_GetPreciseTime(void) {
|
precise_t I_GetPreciseTime(void)
|
||||||
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
UINT64 I_GetPrecisePrecision(void) {
|
UINT64 I_GetPrecisePrecision(void)
|
||||||
|
{
|
||||||
return 1000000;
|
return 1000000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -182,10 +187,12 @@ const char *I_ClipboardPaste(void)
|
||||||
|
|
||||||
size_t I_GetRandomBytes(char *destination, size_t amount)
|
size_t I_GetRandomBytes(char *destination, size_t amount)
|
||||||
{
|
{
|
||||||
|
(void)destination;
|
||||||
|
(void)amount;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void I_RegisterSysCommands(void) {}
|
void I_RegisterSysCommands(void){}
|
||||||
|
|
||||||
void I_GetCursorPosition(INT32 *x, INT32 *y)
|
void I_GetCursorPosition(INT32 *x, INT32 *y)
|
||||||
{
|
{
|
||||||
|
|
89
src/g_demo.c
89
src/g_demo.c
|
@ -1891,16 +1891,9 @@ UINT8 G_CmpDemoTime(char *oldname, char *newname)
|
||||||
p++; // VERSION
|
p++; // VERSION
|
||||||
p++; // SUBVERSION
|
p++; // SUBVERSION
|
||||||
oldversion = READUINT16(p);
|
oldversion = READUINT16(p);
|
||||||
switch(oldversion) // demoversion
|
if (oldversion < 0x000c || oldversion > DEMOVERSION)
|
||||||
{
|
{
|
||||||
case DEMOVERSION: // latest always supported
|
// too old (or new), cannot support
|
||||||
case 0x000f: // The previous demoversions also supported
|
|
||||||
case 0x000e:
|
|
||||||
case 0x000d: // all that changed between then and now was longer color name
|
|
||||||
case 0x000c:
|
|
||||||
break;
|
|
||||||
// too old, cannot support.
|
|
||||||
default:
|
|
||||||
CONS_Alert(CONS_NOTICE, M_GetText("File '%s' invalid format. It will be overwritten.\n"), oldname);
|
CONS_Alert(CONS_NOTICE, M_GetText("File '%s' invalid format. It will be overwritten.\n"), oldname);
|
||||||
Z_Free(buffer);
|
Z_Free(buffer);
|
||||||
return UINT8_MAX;
|
return UINT8_MAX;
|
||||||
|
@ -1973,14 +1966,11 @@ void G_DoPlayDemo(char *defdemoname)
|
||||||
UINT8 i;
|
UINT8 i;
|
||||||
lumpnum_t l;
|
lumpnum_t l;
|
||||||
char skin[17],color[MAXCOLORNAME+1],*n,*pdemoname;
|
char skin[17],color[MAXCOLORNAME+1],*n,*pdemoname;
|
||||||
UINT8 version,subversion,charability,charability2,thrustfactor,accelstart,acceleration,cnamelen;
|
UINT8 version,subversion,charability,charability2,thrustfactor,accelstart,acceleration;
|
||||||
pflags_t pflags;
|
pflags_t pflags;
|
||||||
UINT32 randseed, followitem;
|
UINT32 randseed, followitem;
|
||||||
fixed_t camerascale,shieldscale,actionspd,mindash,maxdash,normalspeed,runspeed,jumpfactor,height,spinheight;
|
fixed_t camerascale,shieldscale,actionspd,mindash,maxdash,normalspeed,runspeed,jumpfactor,height,spinheight;
|
||||||
char msg[1024];
|
char msg[1024];
|
||||||
#ifdef OLD22DEMOCOMPAT
|
|
||||||
boolean use_old_demo_vars = false;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
skin[16] = '\0';
|
skin[16] = '\0';
|
||||||
color[MAXCOLORNAME] = '\0';
|
color[MAXCOLORNAME] = '\0';
|
||||||
|
@ -2039,23 +2029,13 @@ void G_DoPlayDemo(char *defdemoname)
|
||||||
subversion = READUINT8(demo_p);
|
subversion = READUINT8(demo_p);
|
||||||
demoversion = READUINT16(demo_p);
|
demoversion = READUINT16(demo_p);
|
||||||
demo_forwardmove_rng = (demoversion < 0x0010);
|
demo_forwardmove_rng = (demoversion < 0x0010);
|
||||||
switch(demoversion)
|
|
||||||
{
|
|
||||||
case 0x000f:
|
|
||||||
case 0x000d:
|
|
||||||
case 0x000e:
|
|
||||||
case DEMOVERSION: // latest always supported
|
|
||||||
cnamelen = MAXCOLORNAME;
|
|
||||||
break;
|
|
||||||
#ifdef OLD22DEMOCOMPAT
|
#ifdef OLD22DEMOCOMPAT
|
||||||
// all that changed between then and now was longer color name
|
if (demoversion < 0x000c || demoversion > DEMOVERSION)
|
||||||
case 0x000c:
|
#else
|
||||||
cnamelen = 16;
|
if (demoversion < 0x000d || demoversion > DEMOVERSION)
|
||||||
use_old_demo_vars = true;
|
|
||||||
break;
|
|
||||||
#endif
|
#endif
|
||||||
// too old, cannot support.
|
{
|
||||||
default:
|
// too old (or new), cannot support
|
||||||
snprintf(msg, 1024, M_GetText("%s is an incompatible replay format and cannot be played.\n"), pdemoname);
|
snprintf(msg, 1024, M_GetText("%s is an incompatible replay format and cannot be played.\n"), pdemoname);
|
||||||
CONS_Alert(CONS_ERROR, "%s", msg);
|
CONS_Alert(CONS_ERROR, "%s", msg);
|
||||||
M_StartMessage(msg, NULL, MM_NOTHING);
|
M_StartMessage(msg, NULL, MM_NOTHING);
|
||||||
|
@ -2182,8 +2162,8 @@ void G_DoPlayDemo(char *defdemoname)
|
||||||
demo_p += 16;
|
demo_p += 16;
|
||||||
|
|
||||||
// Color
|
// Color
|
||||||
M_Memcpy(color,demo_p,cnamelen);
|
M_Memcpy(color, demo_p, (demoversion < 0x000d) ? 16 : MAXCOLORNAME);
|
||||||
demo_p += cnamelen;
|
demo_p += (demoversion < 0x000d) ? 16 : MAXCOLORNAME;
|
||||||
|
|
||||||
charability = READUINT8(demo_p);
|
charability = READUINT8(demo_p);
|
||||||
charability2 = READUINT8(demo_p);
|
charability2 = READUINT8(demo_p);
|
||||||
|
@ -2219,7 +2199,7 @@ void G_DoPlayDemo(char *defdemoname)
|
||||||
|
|
||||||
// net var data
|
// net var data
|
||||||
#ifdef OLD22DEMOCOMPAT
|
#ifdef OLD22DEMOCOMPAT
|
||||||
if (use_old_demo_vars)
|
if (demoversion < 0x000d)
|
||||||
CV_LoadOldDemoVars(&demo_p);
|
CV_LoadOldDemoVars(&demo_p);
|
||||||
else
|
else
|
||||||
#endif
|
#endif
|
||||||
|
@ -2352,19 +2332,13 @@ UINT8 G_CheckDemoForError(char *defdemoname)
|
||||||
demo_p++; // version
|
demo_p++; // version
|
||||||
demo_p++; // subversion
|
demo_p++; // subversion
|
||||||
our_demo_version = READUINT16(demo_p);
|
our_demo_version = READUINT16(demo_p);
|
||||||
switch(our_demo_version)
|
|
||||||
{
|
|
||||||
case 0x000d:
|
|
||||||
case 0x000e:
|
|
||||||
case 0x000f:
|
|
||||||
case DEMOVERSION: // latest always supported
|
|
||||||
break;
|
|
||||||
#ifdef OLD22DEMOCOMPAT
|
#ifdef OLD22DEMOCOMPAT
|
||||||
case 0x000c:
|
if (our_demo_version < 0x000c || our_demo_version > DEMOVERSION)
|
||||||
break;
|
#else
|
||||||
|
if (our_demo_version < 0x000d || our_demo_version > DEMOVERSION)
|
||||||
#endif
|
#endif
|
||||||
// too old, cannot support.
|
{
|
||||||
default:
|
// too old (or new), cannot support
|
||||||
return DFILE_ERROR_NOTDEMO;
|
return DFILE_ERROR_NOTDEMO;
|
||||||
}
|
}
|
||||||
demo_p += 16; // demo checksum
|
demo_p += 16; // demo checksum
|
||||||
|
@ -2386,7 +2360,6 @@ void G_AddGhost(char *defdemoname)
|
||||||
INT32 i;
|
INT32 i;
|
||||||
lumpnum_t l;
|
lumpnum_t l;
|
||||||
char name[17],skin[17],color[MAXCOLORNAME+1],*n,*pdemoname,md5[16];
|
char name[17],skin[17],color[MAXCOLORNAME+1],*n,*pdemoname,md5[16];
|
||||||
UINT8 cnamelen;
|
|
||||||
demoghost *gh;
|
demoghost *gh;
|
||||||
UINT8 flags, subversion;
|
UINT8 flags, subversion;
|
||||||
UINT8 *buffer,*p;
|
UINT8 *buffer,*p;
|
||||||
|
@ -2438,20 +2411,9 @@ void G_AddGhost(char *defdemoname)
|
||||||
p++; // VERSION
|
p++; // VERSION
|
||||||
subversion = READUINT8(p); // SUBVERSION
|
subversion = READUINT8(p); // SUBVERSION
|
||||||
ghostversion = READUINT16(p);
|
ghostversion = READUINT16(p);
|
||||||
switch(ghostversion)
|
if (ghostversion < 0x000c || ghostversion > DEMOVERSION)
|
||||||
{
|
{
|
||||||
case 0x000f:
|
// too old (or new), cannot support
|
||||||
case 0x000d:
|
|
||||||
case 0x000e:
|
|
||||||
case DEMOVERSION: // latest always supported
|
|
||||||
cnamelen = MAXCOLORNAME;
|
|
||||||
break;
|
|
||||||
// all that changed between then and now was longer color name
|
|
||||||
case 0x000c:
|
|
||||||
cnamelen = 16;
|
|
||||||
break;
|
|
||||||
// too old, cannot support.
|
|
||||||
default:
|
|
||||||
CONS_Alert(CONS_NOTICE, M_GetText("Ghost %s: Demo version incompatible.\n"), pdemoname);
|
CONS_Alert(CONS_NOTICE, M_GetText("Ghost %s: Demo version incompatible.\n"), pdemoname);
|
||||||
Z_Free(pdemoname);
|
Z_Free(pdemoname);
|
||||||
Z_Free(buffer);
|
Z_Free(buffer);
|
||||||
|
@ -2514,8 +2476,8 @@ void G_AddGhost(char *defdemoname)
|
||||||
p += 16;
|
p += 16;
|
||||||
|
|
||||||
// Color
|
// Color
|
||||||
M_Memcpy(color, p,cnamelen);
|
M_Memcpy(color, p, (ghostversion < 0x000d) ? 16 : MAXCOLORNAME);
|
||||||
p += cnamelen;
|
p += (ghostversion < 0x000d) ? 16 : MAXCOLORNAME;
|
||||||
|
|
||||||
// Ghosts do not have a player structure to put this in.
|
// Ghosts do not have a player structure to put this in.
|
||||||
p++; // charability
|
p++; // charability
|
||||||
|
@ -2698,16 +2660,9 @@ void G_DoPlayMetal(void)
|
||||||
metal_p++; // VERSION
|
metal_p++; // VERSION
|
||||||
metal_p++; // SUBVERSION
|
metal_p++; // SUBVERSION
|
||||||
metalversion = READUINT16(metal_p);
|
metalversion = READUINT16(metal_p);
|
||||||
switch(metalversion)
|
if (metalversion < 0x000c || metalversion > DEMOVERSION)
|
||||||
{
|
{
|
||||||
case DEMOVERSION: // latest always supported
|
// too old (or new), cannot support
|
||||||
case 0x000f:
|
|
||||||
case 0x000e: // There are checks wheter the momentum is from older demo versions or not
|
|
||||||
case 0x000d: // all that changed between then and now was longer color name
|
|
||||||
case 0x000c:
|
|
||||||
break;
|
|
||||||
// too old, cannot support.
|
|
||||||
default:
|
|
||||||
CONS_Alert(CONS_WARNING, M_GetText("Failed to load bot recording for this map, format version incompatible.\n"));
|
CONS_Alert(CONS_WARNING, M_GetText("Failed to load bot recording for this map, format version incompatible.\n"));
|
||||||
Z_Free(metalbuffer);
|
Z_Free(metalbuffer);
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -42,10 +42,10 @@ int unsortedVertexArrayAllocSize = 65536;
|
||||||
// Call HWR_RenderBatches to render all the collected geometry.
|
// Call HWR_RenderBatches to render all the collected geometry.
|
||||||
void HWR_StartBatching(void)
|
void HWR_StartBatching(void)
|
||||||
{
|
{
|
||||||
if (currently_batching)
|
if (currently_batching)
|
||||||
I_Error("Repeat call to HWR_StartBatching without HWR_RenderBatches");
|
I_Error("Repeat call to HWR_StartBatching without HWR_RenderBatches");
|
||||||
|
|
||||||
// init arrays if that has not been done yet
|
// init arrays if that has not been done yet
|
||||||
if (!finalVertexArray)
|
if (!finalVertexArray)
|
||||||
{
|
{
|
||||||
finalVertexArray = malloc(finalVertexArrayAllocSize * sizeof(FOutVector));
|
finalVertexArray = malloc(finalVertexArrayAllocSize * sizeof(FOutVector));
|
||||||
|
@ -55,7 +55,7 @@ void HWR_StartBatching(void)
|
||||||
unsortedVertexArray = malloc(unsortedVertexArrayAllocSize * sizeof(FOutVector));
|
unsortedVertexArray = malloc(unsortedVertexArrayAllocSize * sizeof(FOutVector));
|
||||||
}
|
}
|
||||||
|
|
||||||
currently_batching = true;
|
currently_batching = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// This replaces the direct calls to pfnSetTexture in cases where batching is available.
|
// This replaces the direct calls to pfnSetTexture in cases where batching is available.
|
||||||
|
|
|
@ -4141,14 +4141,11 @@ static void HWR_DrawSprite(gl_vissprite_t *spr)
|
||||||
float xscale, yscale;
|
float xscale, yscale;
|
||||||
float xoffset, yoffset;
|
float xoffset, yoffset;
|
||||||
float leftoffset, topoffset;
|
float leftoffset, topoffset;
|
||||||
float scale = spr->scale;
|
|
||||||
float zoffset = (P_MobjFlip(spr->mobj) * 0.05f);
|
float zoffset = (P_MobjFlip(spr->mobj) * 0.05f);
|
||||||
pslope_t *splatslope = NULL;
|
pslope_t *splatslope = NULL;
|
||||||
INT32 i;
|
INT32 i;
|
||||||
|
|
||||||
renderflags_t renderflags = spr->renderflags;
|
renderflags_t renderflags = spr->renderflags;
|
||||||
if (renderflags & RF_SHADOWEFFECTS)
|
|
||||||
scale *= spr->shadowscale;
|
|
||||||
|
|
||||||
if (spr->rotateflags & SRF_3D || renderflags & RF_NOSPLATBILLBOARD)
|
if (spr->rotateflags & SRF_3D || renderflags & RF_NOSPLATBILLBOARD)
|
||||||
angle = spr->mobj->angle;
|
angle = spr->mobj->angle;
|
||||||
|
|
|
@ -486,7 +486,7 @@ void HWR_InitModels(void)
|
||||||
size_t i;
|
size_t i;
|
||||||
INT32 s;
|
INT32 s;
|
||||||
FILE *f;
|
FILE *f;
|
||||||
char name[24], filename[32];
|
char name[26], filename[32];
|
||||||
float scale, offset;
|
float scale, offset;
|
||||||
size_t prefixlen;
|
size_t prefixlen;
|
||||||
|
|
||||||
|
@ -585,7 +585,7 @@ modelfound:
|
||||||
void HWR_AddPlayerModel(int skin) // For skins that were added after startup
|
void HWR_AddPlayerModel(int skin) // For skins that were added after startup
|
||||||
{
|
{
|
||||||
FILE *f;
|
FILE *f;
|
||||||
char name[24], filename[32];
|
char name[26], filename[32];
|
||||||
float scale, offset;
|
float scale, offset;
|
||||||
size_t prefixlen;
|
size_t prefixlen;
|
||||||
|
|
||||||
|
@ -644,7 +644,7 @@ void HWR_AddSpriteModel(size_t spritenum) // For sprites that were added after s
|
||||||
// name[24] is used to check for names in the models.dat file that match with sprites or player skins
|
// name[24] is used to check for names in the models.dat file that match with sprites or player skins
|
||||||
// sprite names are always 4 characters long, and names is for player skins can be up to 19 characters long
|
// sprite names are always 4 characters long, and names is for player skins can be up to 19 characters long
|
||||||
// PLAYERMODELPREFIX is 6 characters long
|
// PLAYERMODELPREFIX is 6 characters long
|
||||||
char name[24], filename[32];
|
char name[26], filename[32];
|
||||||
float scale, offset;
|
float scale, offset;
|
||||||
|
|
||||||
if (nomd2s)
|
if (nomd2s)
|
||||||
|
|
|
@ -672,6 +672,9 @@ void GeneratePolygonNormals(model_t *model, int ztag)
|
||||||
|
|
||||||
for (k = 0; k < mesh->numTriangles; k++)
|
for (k = 0; k < mesh->numTriangles; k++)
|
||||||
{
|
{
|
||||||
|
/// TODO: normalize vectors
|
||||||
|
(void)vertices;
|
||||||
|
(void)polyNormals;
|
||||||
// Vector::Normal(vertices, polyNormals);
|
// Vector::Normal(vertices, polyNormals);
|
||||||
vertices += 3 * 3;
|
vertices += 3 * 3;
|
||||||
polyNormals++;
|
polyNormals++;
|
||||||
|
|
|
@ -3545,7 +3545,7 @@ static int lib_gAddGametype(lua_State *L)
|
||||||
// Partly lifted from Got_AddPlayer
|
// Partly lifted from Got_AddPlayer
|
||||||
static int lib_gAddPlayer(lua_State *L)
|
static int lib_gAddPlayer(lua_State *L)
|
||||||
{
|
{
|
||||||
INT16 i, newplayernum, botcount = 1;
|
INT16 i, newplayernum;
|
||||||
player_t *newplayer;
|
player_t *newplayer;
|
||||||
SINT8 skinnum = 0, bot;
|
SINT8 skinnum = 0, bot;
|
||||||
|
|
||||||
|
@ -3553,10 +3553,8 @@ static int lib_gAddPlayer(lua_State *L)
|
||||||
{
|
{
|
||||||
if (!playeringame[i])
|
if (!playeringame[i])
|
||||||
break;
|
break;
|
||||||
|
|
||||||
if (players[i].bot)
|
|
||||||
botcount++; // How many of us are there already?
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (i >= MAXPLAYERS)
|
if (i >= MAXPLAYERS)
|
||||||
{
|
{
|
||||||
lua_pushnil(L);
|
lua_pushnil(L);
|
||||||
|
|
|
@ -2752,6 +2752,7 @@ void M_SetMenuCurBackground(const char *defaultname)
|
||||||
{
|
{
|
||||||
char name[9];
|
char name[9];
|
||||||
strncpy(name, defaultname, 8);
|
strncpy(name, defaultname, 8);
|
||||||
|
name[8] = '\0';
|
||||||
M_IterateMenuTree(MIT_SetCurBackground, &name);
|
M_IterateMenuTree(MIT_SetCurBackground, &name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
15
src/netcode/CMakeLists.txt
Normal file
15
src/netcode/CMakeLists.txt
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
target_sources(SRB2SDL2 PRIVATE
|
||||||
|
d_clisrv.c
|
||||||
|
server_connection.c
|
||||||
|
client_connection.c
|
||||||
|
tic_command.c
|
||||||
|
net_command.c
|
||||||
|
gamestate.c
|
||||||
|
commands.c
|
||||||
|
d_net.c
|
||||||
|
d_netcmd.c
|
||||||
|
d_netfil.c
|
||||||
|
http-mserv.c
|
||||||
|
i_tcp.c
|
||||||
|
mserv.c
|
||||||
|
)
|
|
@ -572,7 +572,7 @@ static boolean CL_FinishedFileList(void)
|
||||||
CL_Reset();
|
CL_Reset();
|
||||||
D_StartTitle();
|
D_StartTitle();
|
||||||
M_StartMessage(M_GetText(
|
M_StartMessage(M_GetText(
|
||||||
"An error occured when trying to\n"
|
"An error occurred when trying to\n"
|
||||||
"download missing addons.\n"
|
"download missing addons.\n"
|
||||||
"(This is almost always a problem\n"
|
"(This is almost always a problem\n"
|
||||||
"with the server, not your game.)\n\n"
|
"with the server, not your game.)\n\n"
|
||||||
|
|
|
@ -96,7 +96,7 @@ void Ban_Load_File(boolean warning)
|
||||||
|
|
||||||
Ban_Clear();
|
Ban_Clear();
|
||||||
|
|
||||||
for (size_t i=0; fgets(buffer, (int)sizeof(buffer), f); i++)
|
for (; fgets(buffer, (int)sizeof(buffer), f);)
|
||||||
{
|
{
|
||||||
address = strtok(buffer, " \t\r\n");
|
address = strtok(buffer, " \t\r\n");
|
||||||
mask = strtok(NULL, " \t\r\n");
|
mask = strtok(NULL, " \t\r\n");
|
||||||
|
|
|
@ -284,7 +284,7 @@ void Command_ResendGamestate(void)
|
||||||
netbuffer->packettype = PT_WILLRESENDGAMESTATE;
|
netbuffer->packettype = PT_WILLRESENDGAMESTATE;
|
||||||
if (!HSendPacket(playernode[playernum], true, 0, 0))
|
if (!HSendPacket(playernode[playernum], true, 0, 0))
|
||||||
{
|
{
|
||||||
CONS_Alert(CONS_ERROR, M_GetText("A problem occured, please try again.\n"));
|
CONS_Alert(CONS_ERROR, M_GetText("A problem occurred, please try again.\n"));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -3730,7 +3730,9 @@ void P_SlideMove(mobj_t *mo)
|
||||||
|
|
||||||
boolean papercol = false;
|
boolean papercol = false;
|
||||||
vertex_t v1, v2; // fake vertexes
|
vertex_t v1, v2; // fake vertexes
|
||||||
line_t junk; // fake linedef
|
static line_t junk; // fake linedef
|
||||||
|
|
||||||
|
memset(&junk, 0x00, sizeof(junk));
|
||||||
|
|
||||||
if (tmhitthing && mo->z + mo->height > tmhitthing->z && mo->z < tmhitthing->z + tmhitthing->height)
|
if (tmhitthing && mo->z + mo->height > tmhitthing->z && mo->z < tmhitthing->z + tmhitthing->height)
|
||||||
{
|
{
|
||||||
|
|
|
@ -11160,7 +11160,7 @@ static void P_MinecartThink(player_t *player)
|
||||||
detright->drawonlyforplayer = player;
|
detright->drawonlyforplayer = player;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
P_RemoveMobj(detleft);
|
P_RemoveMobj(detright);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
@ -249,7 +249,7 @@ static void FlipCam2_OnChange(void)
|
||||||
//
|
//
|
||||||
// killough 5/2/98: reformatted
|
// killough 5/2/98: reformatted
|
||||||
//
|
//
|
||||||
INT32 R_PointOnSide(fixed_t x, fixed_t y, node_t *node)
|
INT32 R_PointOnSide(fixed_t x, fixed_t y, node_t *restrict node)
|
||||||
{
|
{
|
||||||
if (!node->dx)
|
if (!node->dx)
|
||||||
return x <= node->x ? node->dy > 0 : node->dy < 0;
|
return x <= node->x ? node->dy > 0 : node->dy < 0;
|
||||||
|
@ -261,9 +261,10 @@ INT32 R_PointOnSide(fixed_t x, fixed_t y, node_t *node)
|
||||||
fixed_t dy = (y >> 1) - (node->y >> 1);
|
fixed_t dy = (y >> 1) - (node->y >> 1);
|
||||||
|
|
||||||
// Try to quickly decide by looking at sign bits.
|
// Try to quickly decide by looking at sign bits.
|
||||||
if ((node->dy ^ node->dx ^ dx ^ dy) < 0)
|
// also use a mask to avoid branch prediction
|
||||||
return (node->dy ^ dx) < 0; // (left is negative)
|
INT32 mask = (node->dy ^ node->dx ^ dx ^ dy) >> 31;
|
||||||
return FixedMul(dy, node->dx>>FRACBITS) >= FixedMul(node->dy>>FRACBITS, dx);
|
return (mask & ((node->dy ^ dx) < 0)) | // (left is negative)
|
||||||
|
(~mask & (FixedMul(dy, node->dx>>FRACBITS) >= FixedMul(node->dy>>FRACBITS, dx)));
|
||||||
}
|
}
|
||||||
|
|
||||||
// killough 5/2/98: reformatted
|
// killough 5/2/98: reformatted
|
||||||
|
|
|
@ -262,7 +262,6 @@
|
||||||
<ClInclude Include="..\u_list.h" />
|
<ClInclude Include="..\u_list.h" />
|
||||||
<ClInclude Include="..\hu_stuff.h" />
|
<ClInclude Include="..\hu_stuff.h" />
|
||||||
<ClInclude Include="..\info.h" />
|
<ClInclude Include="..\info.h" />
|
||||||
<ClInclude Include="..\i_addrinfo.h" />
|
|
||||||
<ClInclude Include="..\i_joy.h" />
|
<ClInclude Include="..\i_joy.h" />
|
||||||
<ClInclude Include="..\i_net.h" />
|
<ClInclude Include="..\i_net.h" />
|
||||||
<ClInclude Include="..\i_sound.h" />
|
<ClInclude Include="..\i_sound.h" />
|
||||||
|
@ -297,6 +296,21 @@
|
||||||
<ClInclude Include="..\m_queue.h" />
|
<ClInclude Include="..\m_queue.h" />
|
||||||
<ClInclude Include="..\m_random.h" />
|
<ClInclude Include="..\m_random.h" />
|
||||||
<ClInclude Include="..\m_swap.h" />
|
<ClInclude Include="..\m_swap.h" />
|
||||||
|
<ClInclude Include="..\netcode\client_connection.h" />
|
||||||
|
<ClInclude Include="..\netcode\commands.h" />
|
||||||
|
<ClInclude Include="..\netcode\d_clisrv.h" />
|
||||||
|
<ClInclude Include="..\netcode\d_net.h" />
|
||||||
|
<ClInclude Include="..\netcode\d_netcmd.h" />
|
||||||
|
<ClInclude Include="..\netcode\d_netfil.h" />
|
||||||
|
<ClInclude Include="..\netcode\gamestate.h" />
|
||||||
|
<ClInclude Include="..\netcode\i_addrinfo.h" />
|
||||||
|
<ClInclude Include="..\netcode\i_net.h" />
|
||||||
|
<ClInclude Include="..\netcode\i_tcp.h" />
|
||||||
|
<ClInclude Include="..\netcode\mserv.h" />
|
||||||
|
<ClInclude Include="..\netcode\net_command.h" />
|
||||||
|
<ClInclude Include="..\netcode\protocol.h" />
|
||||||
|
<ClInclude Include="..\netcode\server_connection.h" />
|
||||||
|
<ClInclude Include="..\netcode\tic_command.h" />
|
||||||
<ClInclude Include="..\p5prof.h" />
|
<ClInclude Include="..\p5prof.h" />
|
||||||
<ClInclude Include="..\p_haptic.h" />
|
<ClInclude Include="..\p_haptic.h" />
|
||||||
<ClInclude Include="..\p_local.h" />
|
<ClInclude Include="..\p_local.h" />
|
||||||
|
@ -329,6 +343,7 @@
|
||||||
<ClInclude Include="..\r_textures.h" />
|
<ClInclude Include="..\r_textures.h" />
|
||||||
<ClInclude Include="..\r_things.h" />
|
<ClInclude Include="..\r_things.h" />
|
||||||
<ClInclude Include="..\screen.h" />
|
<ClInclude Include="..\screen.h" />
|
||||||
|
<ClInclude Include="..\snake.h" />
|
||||||
<ClInclude Include="..\sounds.h" />
|
<ClInclude Include="..\sounds.h" />
|
||||||
<ClInclude Include="..\st_stuff.h" />
|
<ClInclude Include="..\st_stuff.h" />
|
||||||
<ClInclude Include="..\s_sound.h" />
|
<ClInclude Include="..\s_sound.h" />
|
||||||
|
@ -400,11 +415,7 @@
|
||||||
<ClCompile Include="..\deh_soc.c" />
|
<ClCompile Include="..\deh_soc.c" />
|
||||||
<ClCompile Include="..\deh_lua.c" />
|
<ClCompile Include="..\deh_lua.c" />
|
||||||
<ClCompile Include="..\deh_tables.c" />
|
<ClCompile Include="..\deh_tables.c" />
|
||||||
<ClCompile Include="..\d_clisrv.c" />
|
|
||||||
<ClCompile Include="..\d_main.c" />
|
<ClCompile Include="..\d_main.c" />
|
||||||
<ClCompile Include="..\d_net.c" />
|
|
||||||
<ClCompile Include="..\d_netcmd.c" />
|
|
||||||
<ClCompile Include="..\d_netfil.c" />
|
|
||||||
<ClCompile Include="..\filesrch.c" />
|
<ClCompile Include="..\filesrch.c" />
|
||||||
<ClCompile Include="..\f_finale.c" />
|
<ClCompile Include="..\f_finale.c" />
|
||||||
<ClCompile Include="..\f_wipe.c" />
|
<ClCompile Include="..\f_wipe.c" />
|
||||||
|
@ -427,10 +438,6 @@
|
||||||
<ClCompile Include="..\u_list.c" />
|
<ClCompile Include="..\u_list.c" />
|
||||||
<ClCompile Include="..\hu_stuff.c" />
|
<ClCompile Include="..\hu_stuff.c" />
|
||||||
<ClCompile Include="..\info.c" />
|
<ClCompile Include="..\info.c" />
|
||||||
<ClCompile Include="..\i_addrinfo.c">
|
|
||||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\i_tcp.c" />
|
|
||||||
<ClCompile Include="..\i_time.c" />
|
<ClCompile Include="..\i_time.c" />
|
||||||
<ClCompile Include="..\lua_baselib.c" />
|
<ClCompile Include="..\lua_baselib.c" />
|
||||||
<ClCompile Include="..\lua_blockmaplib.c" />
|
<ClCompile Include="..\lua_blockmaplib.c" />
|
||||||
|
@ -451,8 +458,6 @@
|
||||||
<ClCompile Include="..\lua_thinkerlib.c" />
|
<ClCompile Include="..\lua_thinkerlib.c" />
|
||||||
<ClCompile Include="..\lzf.c" />
|
<ClCompile Include="..\lzf.c" />
|
||||||
<ClCompile Include="..\md5.c" />
|
<ClCompile Include="..\md5.c" />
|
||||||
<ClCompile Include="..\mserv.c" />
|
|
||||||
<ClCompile Include="..\http-mserv.c" />
|
|
||||||
<ClCompile Include="..\m_aatree.c" />
|
<ClCompile Include="..\m_aatree.c" />
|
||||||
<ClCompile Include="..\m_anigif.c" />
|
<ClCompile Include="..\m_anigif.c" />
|
||||||
<ClCompile Include="..\m_argv.c" />
|
<ClCompile Include="..\m_argv.c" />
|
||||||
|
@ -466,6 +471,22 @@
|
||||||
<ClCompile Include="..\m_perfstats.c" />
|
<ClCompile Include="..\m_perfstats.c" />
|
||||||
<ClCompile Include="..\m_queue.c" />
|
<ClCompile Include="..\m_queue.c" />
|
||||||
<ClCompile Include="..\m_random.c" />
|
<ClCompile Include="..\m_random.c" />
|
||||||
|
<ClCompile Include="..\netcode\client_connection.c" />
|
||||||
|
<ClCompile Include="..\netcode\commands.c" />
|
||||||
|
<ClCompile Include="..\netcode\d_clisrv.c" />
|
||||||
|
<ClCompile Include="..\netcode\d_net.c" />
|
||||||
|
<ClCompile Include="..\netcode\d_netcmd.c" />
|
||||||
|
<ClCompile Include="..\netcode\d_netfil.c" />
|
||||||
|
<ClCompile Include="..\netcode\gamestate.c" />
|
||||||
|
<ClCompile Include="..\netcode\http-mserv.c" />
|
||||||
|
<ClCompile Include="..\netcode\i_addrinfo.c">
|
||||||
|
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\netcode\i_tcp.c" />
|
||||||
|
<ClCompile Include="..\netcode\mserv.c" />
|
||||||
|
<ClCompile Include="..\netcode\net_command.c" />
|
||||||
|
<ClCompile Include="..\netcode\server_connection.c" />
|
||||||
|
<ClCompile Include="..\netcode\tic_command.c" />
|
||||||
<ClCompile Include="..\p_ceilng.c" />
|
<ClCompile Include="..\p_ceilng.c" />
|
||||||
<ClCompile Include="..\p_enemy.c" />
|
<ClCompile Include="..\p_enemy.c" />
|
||||||
<ClCompile Include="..\p_floor.c" />
|
<ClCompile Include="..\p_floor.c" />
|
||||||
|
@ -510,6 +531,7 @@
|
||||||
<ClCompile Include="..\r_textures.c" />
|
<ClCompile Include="..\r_textures.c" />
|
||||||
<ClCompile Include="..\r_things.c" />
|
<ClCompile Include="..\r_things.c" />
|
||||||
<ClCompile Include="..\screen.c" />
|
<ClCompile Include="..\screen.c" />
|
||||||
|
<ClCompile Include="..\snake.c" />
|
||||||
<ClCompile Include="..\sounds.c" />
|
<ClCompile Include="..\sounds.c" />
|
||||||
<ClCompile Include="..\string.c" />
|
<ClCompile Include="..\string.c" />
|
||||||
<ClCompile Include="..\st_stuff.c" />
|
<ClCompile Include="..\st_stuff.c" />
|
||||||
|
|
|
@ -156,24 +156,12 @@
|
||||||
<ClInclude Include="..\doomtype.h">
|
<ClInclude Include="..\doomtype.h">
|
||||||
<Filter>D_Doom</Filter>
|
<Filter>D_Doom</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\d_clisrv.h">
|
|
||||||
<Filter>D_Doom</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\d_event.h">
|
<ClInclude Include="..\d_event.h">
|
||||||
<Filter>D_Doom</Filter>
|
<Filter>D_Doom</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\d_main.h">
|
<ClInclude Include="..\d_main.h">
|
||||||
<Filter>D_Doom</Filter>
|
<Filter>D_Doom</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\d_net.h">
|
|
||||||
<Filter>D_Doom</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\d_netcmd.h">
|
|
||||||
<Filter>D_Doom</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\d_netfil.h">
|
|
||||||
<Filter>D_Doom</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\d_player.h">
|
<ClInclude Include="..\d_player.h">
|
||||||
<Filter>D_Doom</Filter>
|
<Filter>D_Doom</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
@ -279,9 +267,6 @@
|
||||||
<ClInclude Include="..\filesrch.h">
|
<ClInclude Include="..\filesrch.h">
|
||||||
<Filter>I_Interface</Filter>
|
<Filter>I_Interface</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\i_addrinfo.h">
|
|
||||||
<Filter>I_Interface</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\i_joy.h">
|
<ClInclude Include="..\i_joy.h">
|
||||||
<Filter>I_Interface</Filter>
|
<Filter>I_Interface</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
@ -306,12 +291,6 @@
|
||||||
<ClInclude Include="..\keys.h">
|
<ClInclude Include="..\keys.h">
|
||||||
<Filter>I_Interface</Filter>
|
<Filter>I_Interface</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="..\mserv.h">
|
|
||||||
<Filter>I_Interface</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\http-mserv.h">
|
|
||||||
<Filter>I_Interface</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="..\lua_hook.h">
|
<ClInclude Include="..\lua_hook.h">
|
||||||
<Filter>LUA</Filter>
|
<Filter>LUA</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
@ -372,6 +351,54 @@
|
||||||
<ClInclude Include="..\m_swap.h">
|
<ClInclude Include="..\m_swap.h">
|
||||||
<Filter>M_Misc</Filter>
|
<Filter>M_Misc</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\client_connection.h">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\commands.h">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\d_clisrv.h">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\d_net.h">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\d_netcmd.h">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\d_netfil.h">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\gamestate.h">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\http-mserv.h">
|
||||||
|
<Filter>I_Interface</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\i_addrinfo.h">
|
||||||
|
<Filter>I_Interface</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\i_net.h">
|
||||||
|
<Filter>I_Interface</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\i_tcp.h">
|
||||||
|
<Filter>I_Interface</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\mserv.h">
|
||||||
|
<Filter>I_Interface</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\net_command.h">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\protocol.h">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\server_connection.h">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\netcode\tic_command.h">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\comptime.h">
|
<ClInclude Include="..\comptime.h">
|
||||||
<Filter>O_Other</Filter>
|
<Filter>O_Other</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
@ -465,6 +492,9 @@
|
||||||
<ClInclude Include="..\v_video.h">
|
<ClInclude Include="..\v_video.h">
|
||||||
<Filter>R_Rend</Filter>
|
<Filter>R_Rend</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="..\snake.h">
|
||||||
|
<Filter>M_Misc</Filter>
|
||||||
|
</ClInclude>
|
||||||
<ClInclude Include="..\sounds.h">
|
<ClInclude Include="..\sounds.h">
|
||||||
<Filter>S_Sounds</Filter>
|
<Filter>S_Sounds</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
@ -639,21 +669,9 @@
|
||||||
<ClCompile Include="..\deh_tables.c">
|
<ClCompile Include="..\deh_tables.c">
|
||||||
<Filter>D_Doom</Filter>
|
<Filter>D_Doom</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\d_clisrv.c">
|
|
||||||
<Filter>D_Doom</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\d_main.c">
|
<ClCompile Include="..\d_main.c">
|
||||||
<Filter>D_Doom</Filter>
|
<Filter>D_Doom</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\d_net.c">
|
|
||||||
<Filter>D_Doom</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\d_netcmd.c">
|
|
||||||
<Filter>D_Doom</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\d_netfil.c">
|
|
||||||
<Filter>D_Doom</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\z_zone.c">
|
<ClCompile Include="..\z_zone.c">
|
||||||
<Filter>D_Doom</Filter>
|
<Filter>D_Doom</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
@ -732,18 +750,9 @@
|
||||||
<ClCompile Include="..\filesrch.c">
|
<ClCompile Include="..\filesrch.c">
|
||||||
<Filter>I_Interface</Filter>
|
<Filter>I_Interface</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\i_addrinfo.c">
|
|
||||||
<Filter>I_Interface</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\i_tcp.c">
|
<ClCompile Include="..\i_tcp.c">
|
||||||
<Filter>I_Interface</Filter>
|
<Filter>I_Interface</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="..\mserv.c">
|
|
||||||
<Filter>I_Interface</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\http-mserv.c">
|
|
||||||
<Filter>I_Interface</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="..\lua_baselib.c">
|
<ClCompile Include="..\lua_baselib.c">
|
||||||
<Filter>LUA</Filter>
|
<Filter>LUA</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
@ -831,6 +840,48 @@
|
||||||
<ClCompile Include="..\m_random.c">
|
<ClCompile Include="..\m_random.c">
|
||||||
<Filter>M_Misc</Filter>
|
<Filter>M_Misc</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\netcode\client_connection.c">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\netcode\commands.c">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\netcode\d_clisrv.c">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\netcode\d_net.c">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\netcode\d_netcmd.c">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\netcode\d_netfil.c">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\netcode\gamestate.c">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\netcode\http-mserv.c">
|
||||||
|
<Filter>I_Interface</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\netcode\i_addrinfo.c">
|
||||||
|
<Filter>I_Interface</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\netcode\i_tcp.c">
|
||||||
|
<Filter>I_Interface</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\netcode\mserv.c">
|
||||||
|
<Filter>I_Interface</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\netcode\net_command.c">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\netcode\server_connection.c">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\netcode\tic_command.c">
|
||||||
|
<Filter>D_Doom</Filter>
|
||||||
|
</ClCompile>
|
||||||
<ClCompile Include="..\string.c">
|
<ClCompile Include="..\string.c">
|
||||||
<Filter>M_Misc</Filter>
|
<Filter>M_Misc</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
@ -954,6 +1005,9 @@
|
||||||
<ClCompile Include="..\v_video.c">
|
<ClCompile Include="..\v_video.c">
|
||||||
<Filter>R_Rend</Filter>
|
<Filter>R_Rend</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="..\snake.c">
|
||||||
|
<Filter>M_Misc</Filter>
|
||||||
|
</ClCompile>
|
||||||
<ClCompile Include="..\sounds.c">
|
<ClCompile Include="..\sounds.c">
|
||||||
<Filter>S_Sounds</Filter>
|
<Filter>S_Sounds</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
|
|
@ -2266,7 +2266,7 @@ void I_Sleep(UINT32 ms)
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef NEWSIGNALHANDLER
|
#ifdef NEWSIGNALHANDLER
|
||||||
static void newsignalhandler_Warn(const char *pr)
|
ATTRNORETURN static FUNCNORETURN void newsignalhandler_Warn(const char *pr)
|
||||||
{
|
{
|
||||||
char text[128];
|
char text[128];
|
||||||
|
|
||||||
|
@ -3035,11 +3035,11 @@ size_t I_GetFreeMem(size_t *total)
|
||||||
#ifdef FREEBSD
|
#ifdef FREEBSD
|
||||||
u_int v_free_count, v_page_size, v_page_count;
|
u_int v_free_count, v_page_size, v_page_count;
|
||||||
size_t size = sizeof(v_free_count);
|
size_t size = sizeof(v_free_count);
|
||||||
sysctlbyname("vm.stat.vm.v_free_count", &v_free_count, &size, NULL, 0);
|
sysctlbyname("vm.stats.vm.v_free_count", &v_free_count, &size, NULL, 0);
|
||||||
size_t size = sizeof(v_page_size);
|
size = sizeof(v_page_size);
|
||||||
sysctlbyname("vm.stat.vm.v_page_size", &v_page_size, &size, NULL, 0);
|
sysctlbyname("vm.stats.vm.v_page_size", &v_page_size, &size, NULL, 0);
|
||||||
size_t size = sizeof(v_page_count);
|
size = sizeof(v_page_count);
|
||||||
sysctlbyname("vm.stat.vm.v_page_count", &v_page_count, &size, NULL, 0);
|
sysctlbyname("vm.stats.vm.v_page_count", &v_page_count, &size, NULL, 0);
|
||||||
|
|
||||||
if (total)
|
if (total)
|
||||||
*total = v_page_count * v_page_size;
|
*total = v_page_count * v_page_size;
|
||||||
|
|
Loading…
Reference in a new issue