ENABLE_GLES predates forking Irrlicht. Its primary use was to distinguish Irrlicht-ogles from upstream version as Minetest could be compiled with either.
That's not necessary anymore and gets in the way sometimes.
The MINETEST_USER_PATH environment variable can be used to define a
custom path for Minetest user data. If MINETEST_USER_PATH is empty or
unset, the HOME (or APPDATA on Windows) environment variable is used as
the default user data path; this ensures backwards compatibility with
existing user setups.
This feature is enabled by default for non-Android release builds. Package
maintainers may use -DENABLE_UPDATE_CHECKER=0 to disable it.
Co-authored-by: rubenwardy <rw@rubenwardy.com>
Co-authored-by: sfan5 <sfan5@live.de>
* add missing apt-get update where needed
* move some jobs to run on ubuntu-20.04
* update actions plugins to latest
* speed up the job that runs multiplayer tests
Supporting these is not reasonable anymore and effectively we didn't
do that anyway, brokenness was only noticed by chance and a PR to restore
support for gcc 5.x is ready now.
With the CMake changes to IrrlichtMt, it's now possible to use a target for IrrlichtMt.
Besides greatly improving the ease of setting up IrrlichtMt for users building the client, it removes the need for Minetest's CMake to include transitive dependencies such as image libraries, cleaning it up a tiny bit. The PR works by finding the IrrlichtMt package and linking to the target it provides. If the package isn't found and it isn't building the client, it will still fall back to using just the headers of old Irrlicht or IrrlichtMt.
Use user provided lib/irrlichtmt if available
Make it possible for a user to provide the IrrlichtMt dependency as
subdirectory at `lib/irrlichtmt`.
The subdirectory is added with the `EXCLUDE_FROM_ALL` flag to prevent
`libirrlichtmt.a` or other header files to be installed.
This enables the user to do the following to satisfy the IrrlichtMt
dependency:
git clone --depth 1 https://github.com/minetest/irrlicht.git lib/irrlichtmt
cmake . -DRUN_IN_PLACE=TRUE
This patch replaces the statement in the README about a build dependency of the
minetest binary on the package “build-essential” with a corresponding statement
about build dependencies on the three packages “g++”, “make”, and “libc6-dev”.
Though often used as a shorthand, “build-essential” is not a package used to
install packages that are essential for building software – “build-essential”
depends on packages that are essential for building Debian packages. Therefore,
the dependency on “build-essential” implies a dependency on a lot of packages that
are not actually necessary to build minetest (e.g. the Perl programming language).