Changesets: DarkRadiant

master 8c31ed00

2020-12-05 15:16:53

orbweaver

Details Diff
Build Dark Mod plugins using CMake

Introduce a new option SKIP_DM_PLUGINS which can be used at build time to
disable the Dark Mod plugins, however this is OFF by default so TDM plugins
will normally be built (unlike the Automake build which explicitly required
--enable-darkmod-plugins).
Attach Issues:
mod - CMakeLists.txt Diff File
add - plugins/dm.difficulty/CMakeLists.txt Diff File
add - plugins/dm.editing/CMakeLists.txt Diff File
add - plugins/dm.gameconnection/CMakeLists.txt Diff File
add - plugins/dm.gui/CMakeLists.txt Diff File
add - plugins/dm.objectives/CMakeLists.txt Diff File
add - plugins/dm.stimresponse/CMakeLists.txt Diff File

master 71ee6715

2020-12-05 14:43:36

orbweaver

Details Diff
Build and install the script module with CMake

DarkRadiant now runs and shows its main window with no errors, although the
Dark Mod plugins are not built yet.
Attach Issues:
mod - CMakeLists.txt Diff File
add - plugins/script/CMakeLists.txt Diff File

master da460290

2020-12-05 14:11:26

orbweaver

Details Diff
Install resources

Install various globs and subdirectories from install/ into the corresponding
destination directories.
Attach Issues:
mod - CMakeLists.txt Diff File

master 7125e4cd

2020-12-05 13:29:05

orbweaver

Details Diff
Build libmodule as a STATIC library

libmodule was incorrectly being built as a shared library, resulting in a
single shared StaticModuleList for both radiant and libradiantcore, which in
turn caused the entire list of static modules to be registered twice (once in
RadiantApp::onStartupEvent() and again in Radiant::startup()).
Attach Issues:
mod - libs/module/CMakeLists.txt Diff File

master afbf56cc

2020-12-05 12:41:53

greebo

Details Diff
0005382: Expanded unit tests to what we want to have (50% failing right now) Affected Issues
0005382
mod - test/PatchWelding.cpp Diff File

master 9fef40b4

2020-12-05 12:40:57

orbweaver

Details Diff
Set up Debug/Release in CMake

Default to Release build if CMAKE_BUILD_TYPE not specified, and define the
_DEBUG or NDEBUG macros accordingly.
Attach Issues:
mod - CMakeLists.txt Diff File

master 07a9e831

2020-12-05 08:14:13

greebo

Details Diff
0005382: First working test Affected Issues
0005382
mod - test/PatchWelding.cpp Diff File

master 491c0a29

2020-12-05 08:05:31

greebo

Details Diff
0005436: Fix warnings Affected Issues
0005436
mod - radiantcore/rendersystem/OpenGLModule.cpp Diff File

master 94760330

2020-12-05 08:01:13

greebo

Details Diff
0005436: Move OpenGLModule to radiantcore binary Affected Issues
0005436
mod - radiant/Makefile.am Diff File
mod - radiantcore/Makefile.am Diff File
mod - tools/msvc/DarkRadiant.vcxproj Diff File
mod - tools/msvc/DarkRadiant.vcxproj.filters Diff File
mod - tools/msvc/DarkRadiantCore.vcxproj Diff File
mod - tools/msvc/DarkRadiantCore.vcxproj.filters Diff File
mod - tools/msvc/properties/ftgl.props Diff File

master 92d8b414

2020-12-05 07:53:17

greebo

Details Diff
0005382: Add unit test resources and start setting up a test map with some patches to weld Affected Issues
0005382
add - test/PatchWelding.cpp Diff File
add - test/resources/tdm/maps/weld_patches.mapx Diff File
add - test/resources/tdm/materials/numbers.mtr Diff File
add - test/resources/tdm/textures/numbers/0.tga Diff File
add - test/resources/tdm/textures/numbers/1.tga Diff File
add - test/resources/tdm/textures/numbers/10.tga Diff File
add - test/resources/tdm/textures/numbers/11.tga Diff File
add - test/resources/tdm/textures/numbers/12.tga Diff File
add - test/resources/tdm/textures/numbers/13.tga Diff File
add - test/resources/tdm/textures/numbers/14.tga Diff File
add - test/resources/tdm/textures/numbers/15.tga Diff File
add - test/resources/tdm/textures/numbers/16.tga Diff File
add - test/resources/tdm/textures/numbers/17.tga Diff File
add - test/resources/tdm/textures/numbers/18.tga Diff File
add - test/resources/tdm/textures/numbers/19.tga Diff File
add - test/resources/tdm/textures/numbers/2.tga Diff File
add - test/resources/tdm/textures/numbers/20.tga Diff File
add - test/resources/tdm/textures/numbers/3.tga Diff File
add - test/resources/tdm/textures/numbers/4.tga Diff File
add - test/resources/tdm/textures/numbers/5.tga Diff File
add - test/resources/tdm/textures/numbers/6.tga Diff File
add - test/resources/tdm/textures/numbers/7.tga Diff File
add - test/resources/tdm/textures/numbers/8.tga Diff File
add - test/resources/tdm/textures/numbers/9.tga Diff File
mod - tools/msvc/Tests/Tests.vcxproj Diff File
mod - tools/msvc/Tests/Tests.vcxproj.filters Diff File

master 1da29b53

2020-12-05 03:38:01

greebo

Details Diff
0005382: Fix index-out-of-bounds crashes Affected Issues
0005382
mod - radiantcore/patch/algorithm/General.cpp Diff File

master 16f7c78f

2020-12-05 03:10:48

greebo

Details Diff
0005382: ODRadiant uses (col,row) when accessing control points, DarkRadiant is using (row,col)
Fix a copy/paste error in the algorithm.
Affected Issues
0005382
mod - radiantcore/patch/algorithm/General.cpp Diff File

master dda10bc1

2020-12-05 02:37:12

greebo

Details Diff
0005382: Having a go at porting the patch weld algorithm from ODRadiant Affected Issues
0005382
mod - install/menu.xml Diff File
mod - radiantcore/patch/PatchModule.cpp Diff File
mod - radiantcore/patch/algorithm/General.cpp Diff File
mod - radiantcore/patch/algorithm/General.h Diff File

master adc6b04a

2020-12-04 19:51:37

orbweaver

Details Diff
Configure config.h from CMake

Use the configure_file command to generate config.h from the template using
CMake variables. Currently the CORE_MODULE_LIBRARY and PACKAGE_VERSION
variables are set.

DarkRadiant now runs but immediately shows a dialog complaining about multiple
CamWnd modules.
Attach Issues:
mod - CMakeLists.txt Diff File
mod - config.h.in Diff File

master 10b6eae5

2020-12-04 19:43:32

orbweaver

Details Diff
Add initial config.h.in

This is the template to be configured by configure_file in CMakeLists.txt
Attach Issues:
add - config.h.in Diff File

master 22d1f78d

2020-12-04 19:25:32

orbweaver

Details Diff
radiant no longer links with radiantcore

radiantcore is a module loaded at runtime, so should not be directly linked
into the darkradiant binary.
Attach Issues:
mod - radiant/CMakeLists.txt Diff File
mod - radiantcore/CMakeLists.txt Diff File

master f80b6d89

2020-12-04 15:01:01

orbweaver

Details Diff
Install binary and its shared library dependencies

Install the darkradiant binary and the shared libraries it links against
(wxutil, math etc), and set a relative -rpath so that the executable can find
its libraries. Unlike with Automake, the use of "$ORIGIN/.." just works without
needing to figure out how to escape the syntax through two levels of shell
scripts plus the Makefile.

The binary does now start to run without any linker error, but the application
does not yet work because it cannot load the main module (probably because it
is called 'libradiantcore.so' not 'radiantcore.so').
Attach Issues:
mod - CMakeLists.txt Diff File

master a151ee87

2020-12-04 14:30:10

orbweaver

Details Diff
Main binary is now buildable with CMake

Enable the '-z defs' linker which detects undefined symbols in shared objects,
and used this information to add the required link options to our shared
libraries. Because these link options are declared PUBLIC in CMake, they
automatically propagate through to whatever links against the built library, so
we don't need to manually repeat all of the link options when building the main
binary.

Also added some missing source files, including CPP files in subdirectories of
wxutil, and the PicoModel C files in radiantcore.

C++ standard version is increased to 17 to allow for std::filesystem; if this
proves problematic the fallback to boost::filesystem can be brought across from
the Automake build system.
Attach Issues:
mod - CMakeLists.txt Diff File
mod - libs/module/CMakeLists.txt Diff File
mod - libs/scene/CMakeLists.txt Diff File
mod - libs/wxutil/CMakeLists.txt Diff File
mod - libs/xmlutil/CMakeLists.txt Diff File
add - radiant/CMakeLists.txt Diff File
mod - radiant/selection/SelectionMouseTools.cpp Diff File
mod - radiantcore/CMakeLists.txt Diff File

master bd69224b

2020-12-03 20:27:44

orbweaver

Details Diff
radiantcore is now buildable with CMake

Added a couple of '#include <climits>' lines to files which were using INT_MAX
without the necessary include (presumably it was included via some other source
in the Automake build).
Attach Issues:
mod - CMakeLists.txt Diff File
add - radiantcore/CMakeLists.txt Diff File
mod - radiantcore/layers/LayerManager.cpp Diff File
mod - radiantcore/model/export/ScaledModelExporter.cpp Diff File

master 6b7528e5

2020-12-03 20:12:25

orbweaver

Details Diff
libs/module is now buildable with CMake

All libraries within libs/ are now buildable, although obviously they are not
going to link correctly until the linker flags are sorted out.
Attach Issues:
mod - CMakeLists.txt Diff File
add - libs/module/CMakeLists.txt Diff File

master 3d9d7eba

2020-12-03 20:05:24

orbweaver

Details Diff
wxutil library is now buildable with CMake

find_package(wxWidgets) is used to locate wxWidgets itself; also added the FTGL
dependency and bumped cmake_minimum_required to 3.12 (for
add_compile_definitions) and C++ version to C++14 (for make_unique).
Attach Issues:
mod - CMakeLists.txt Diff File
add - libs/wxutil/CMakeLists.txt Diff File

master 5df7247f

2020-12-03 17:22:19

orbweaver

Details Diff
Build scenegraph library with CMake

This one requires libsigc++ as well as our own libs/libfmt library.
Attach Issues:
mod - CMakeLists.txt Diff File
add - libs/scene/CMakeLists.txt Diff File

master 59ce19fd

2020-12-03 17:11:11

orbweaver

Details Diff
Build xmlutil library with CMake

Use the FindPkgConfig module to locate libxml based on its .pc file, and
propagate the necessary compiler flags to the xmlutil library.
Attach Issues:
mod - CMakeLists.txt Diff File
add - libs/xmlutil/CMakeLists.txt Diff File

master ea704efa

2020-12-03 15:24:25

greebo

Details Diff
VC++ projects adjusted after merge
Attach Issues:
mod - tools/msvc/DarkRadiantCore.vcxproj Diff File
mod - tools/msvc/DarkRadiantCore.vcxproj.filters Diff File
mod - tools/msvc/libs.vcxproj Diff File
mod - tools/msvc/libs.vcxproj.filters Diff File

master 36f4baaf

2020-12-03 15:19:47

orbweaver

Details Diff
Initial CMakeLists at toplevel and in libs/math

Initial toplevel CMakeLists to set global properties and list the
subdirectories, and another one in libs/math to build just the math
sourcefiles.
Attach Issues:
add - CMakeLists.txt Diff File
add - libs/math/CMakeLists.txt Diff File
 First  Prev  1 2 3 ... 10 ... 18 19 20 21 22 23 24 ... 30 ... 40 ... 50 ... 60 ... 70 ... 80 ... 90 ... 100 ... 105 106 107  Next  Last