* chore(CI): refine current 'cmake.yml' file content
* chore(CI): enable Qt5 on Linux and macOS
* Appveyor.yml: remove deploy step
we are deploying from GitHub Actions now
* build-linux-64.sh: adjust .zip wildcard
to hopefully not break on PR builds
* build-linux-64.sh: remove fragile unzip/readelf lines
* lightpreview\CMakeLists.txt: only install Qt on Win/Mac
* lightpreview: attempt to fix mac Qt packaging
* lightpreview: apple fixes
* Install qtdbus on macOS
* try alternate dbus module name
* try cmake find_package for dbus
* also find Qt5PrintSupport
* build-osx.sh: remove coreutils install
we don't use sha256sum anymore
* lightpreview/CMakeLists.txt: create .app bundle on macOS
* Update CMakeLists.txt
* build-*: run cpack as part of the build command
on my macOS test system, running cpack separately
is doubling the build time
* cmake: factor out add_loader_path_to_rpath function, apply to all targets
* chore(CI): add steps to re-pack the 'doc' and 'bin' directories
* chore(CI): remove GitHub release-related step (to be re-introduced)
* chore(CI): adjust inflating destination directories
---------
Co-authored-by: Eric Wasylishen <ewasylishen@gmail.com>
- for Quake-likes, WADs will be added as file system archives directly when the first brush is encountered since the wad key is ready to go by that point.
- after loading the .map and before constructing the BSP, what I call secondary textures (animation frames for Quake-likes) are added to the list, and the BSP's miptex data is filled.
- BSP miptex data is now opaque to the BSP process; the BSP simply copies the raw miptex information from the input. This simplifies the BSP structures and reading/writing routines.
- the img subsystem supports reading from raw miptexes now, although in practice this only happens for Quake-likes atm
- instead of a "wal cache", maps now have a "meta cache" which stores the metadata information for all games instead of just Quake II
- texture meta can now be ref'd out rather than needing to be copied every time (mainly only a gain for the std::string)
- wad.cc/wad.hh is gone; wads are now pushed into the filesystem archive
- fixed broken wad_archive
- fs subsystem iterated on a little bit; supports marking archives as external (only used for wads currently; see `LoadTextureData`)
- load_tga has better error handling
- add in foot-gun protection to the BSP readers; now they assert on failure to read instead of silently propagating that error throughout the rest of the process
- bsputil uses img stuff now, so it should handle palettes better
add new parallel logging stuff in common/parallel which wraps parallel_for(_each) and provides automatic percentage indicator
fix issue with light not pulling in settings
move logging stuff into its own namespace and simplify
* cmd
* cmake change for tbb DLLs
add in test for double-hyphens
* cmd
* game version
* settings!
* bsp texture usage
decompile fix for q1bsp
* finish up the options for qbsp
* light finished?
* finish up the few missing bits
* move scalar/int32 up
* Run clang-format pass
* natvis for our mathlib
use slightly faster storage for winding
fix light tests
* allow dictionary to be a base type
* re-run style
* Remove cfg_static
Fix options summary
* natvis for lockable_value<T>
* last-ish pass?
* format
* forgot last few lockables
imglib now lives in common
fs 'load' split into two functions, where and load. the former allows you to query for and return archive & path for a given file, whereas the latter handles that for you.
use log verbose in light rather than own verbose flag
- bsp store vectors now
- vis stored in a way that is compatible with both Q2 and Q1
- binary reading of stuff, so swapping is done at load time now
- vis cleanup, although there's still a lot of raw long modification that should get simplified later
- main mbsp types are declared first in the files, and types that were single-member are now not structs
- conversion is handled by the sub-types themselves. Currently no diagnostic for *what* members overflow, but, overflow is handled via thrown exceptions on all overflowable members
- aabb type is used where appropriate now, simplifying a few areas