]>
git.rm.cloudns.org Git - xonotic/netradiant.git/log
Thomas Debesse [Thu, 4 Jul 2019 23:57:34 +0000 (01:57 +0200)]
cmake: make tools target the console subsystem on Windows
previously on Windows the stdout stuff was only printed on MinTTY console or SSH shell,
this change makes the tools to target the console subsystem so they also print stdout
on cmd console.
this also makes the tool spawning a cmd console windows when not started from a console,
allowing people to monitor what is printed.
this is done by adding a console_app() cmake macro that enables the -mconsole linker flag.
For exhaustivity an extraneous window_app() macro is done too that enables the -mwindows
flag. The -mwindows looks to be implicit, but making this macro explicit and using it
keeps the CMakeLists.txt file self documenting which exe has to be compiled with -mconsole,
which one has to be compiled with -mwindows, and which one has to be compiled with both.
this is a way to check if an exe targets only the windows subsystem:
$ objdump -p netradiant.exe | egrep '^Subsystem'
Subsystem
00000002 (Windows GUI)
this is a way to check if an exe targets the console subsystem:
$ objdump -p q3map2.exe | egrep '^Subsystem'
Subsystem
00000003 (Windows CUI)
note that this one targets both console and windows subsystem, only console is reported:
$ objdump -p q2map.exe | egrep '^Subsystem'
Subsystem
00000003 (Windows CUI)
Thomas Debesse [Mon, 24 Jun 2019 19:02:41 +0000 (19:02 +0000)]
Merge branch 'bundle' into 'master'
improve lib and other stuff bundling on windows
See merge request xonotic/netradiant!136
Thomas Debesse [Wed, 19 Jun 2019 18:45:53 +0000 (20:45 +0200)]
bundle: store dll in lib subdirectory, bundle all of them at once
instead of finding and copying the dll each time a binary is produced,
the path of the produced binary is stored in a unique file (to avoid race
condition) and the target for that binary is added as a dependency to a new
target named `bundle` that does the finding and the copying once for all.
this avoids race condition while building targets in parallel, workaround
the inability of cmake to track a common list between all targets and to keep
it from configure to build step
this makes the bundle process more reliable and avoid things being copied
twice. Before that I've seen copy processes starting to copy the same file
even with the -n option telling to not copy if the file exists, then seeing
one of them failing because they both started when the file was not yet
copied but one finished the copy before the other one
this also makes the bundling faster by only doing things once for all
the dll are then moved to a lib/ subdirectory instead of the root
of the buld directory
each binary having dll to find and copy is built with a special resource file
embedding a manifest telling there is an assembly directory containing dll
named lib, then a manifest is writen for that assembly directory listing all
the dll it can find there telling windows to look for them there at binary
loading instead of the system directory and the place right to binary
this:
- helps to ensure the right dll is loaded even if another exists
with the same name on the system
- reduce the mess by storing all dll in one dedicated directory
- avoids the double cmake configure run by removing the need to
glob the build directory before installation
Thomas Debesse [Tue, 18 Jun 2019 21:06:14 +0000 (23:06 +0200)]
bundle: also bundle hicolor icons with libgtk
Thomas Debesse [Mon, 17 Jun 2019 23:01:18 +0000 (01:01 +0200)]
bundle: export gtk theme/engine bundle code to the script
now triggered on libgtk bundling
Thomas Debesse [Mon, 17 Jun 2019 22:15:11 +0000 (00:15 +0200)]
bundle: use ntldd on msys2 instead of ldd to enable 32bit build on 64bit os
Thomas Debesse [Mon, 17 Jun 2019 21:33:59 +0000 (23:33 +0200)]
bundle: export lib bundling code to a standalone script
Thomas Debesse [Tue, 18 Jun 2019 22:01:05 +0000 (22:01 +0000)]
Merge branch 'wingtk2gl' into 'master'
workaround the GTK2 GLWidget bug on Windows, fix #64
Closes #64
See merge request xonotic/netradiant!133
Thomas Debesse [Sun, 16 Jun 2019 15:40:08 +0000 (17:40 +0200)]
workaround the GTK2 GLWidget bug on Windows
Thomas Debesse [Tue, 18 Jun 2019 21:38:06 +0000 (21:38 +0000)]
Merge branch 'quake2' into 'master'
cmake: building quake2 and heretic2 tools to be on par with legacy makefile
See merge request xonotic/netradiant!134
Thomas Debesse [Sun, 16 Jun 2019 23:35:07 +0000 (01:35 +0200)]
icons: some touchup
Thomas Debesse [Sun, 16 Jun 2019 23:34:48 +0000 (01:34 +0200)]
heretic2: remove stale file
Thomas Debesse [Sun, 16 Jun 2019 23:07:57 +0000 (01:07 +0200)]
h2data: fix build on macos
Thomas Debesse [Sun, 16 Jun 2019 23:07:16 +0000 (01:07 +0200)]
cmake: build quake2 and heretic2 tools to be on par with legacy Makefile
Thomas Debesse [Tue, 18 Jun 2019 21:36:05 +0000 (21:36 +0000)]
Merge branch 'gamepacks' into 'master'
gamepacks: install them in a gamepacks/ subdirectory
See merge request xonotic/netradiant!135
Thomas Debesse [Mon, 17 Jun 2019 19:42:42 +0000 (21:42 +0200)]
gamepacks: install them in a gamepacks/ subdirectory
Thomas Debesse [Sun, 16 Jun 2019 15:43:32 +0000 (15:43 +0000)]
Merge branch 'gamepacks' into 'master'
cmake: allow to set an arbitrary directory to store downloaded gamepacks
See merge request xonotic/netradiant!132
Thomas Debesse [Sun, 16 Jun 2019 14:24:52 +0000 (16:24 +0200)]
cmake: allow to set an arbitrary directory to store downloaded gamepacks
this is useful when you have as many as build directories as os/arch combination
but want to download game packs only once
Thomas Debesse [Sun, 16 Jun 2019 15:20:51 +0000 (17:20 +0200)]
readme: edit build instructions
Thomas Debesse [Sun, 16 Jun 2019 13:36:16 +0000 (13:36 +0000)]
Merge branch 'polishing' into 'master'
polishing stuff a bit, no functionnal changes
See merge request xonotic/netradiant!130
Thomas Debesse [Wed, 5 Jun 2019 02:58:28 +0000 (04:58 +0200)]
plugins: unify About window wording
also get rid of Q3Radiant, SDRadiant, GTKRadiant references
use RADIANT_NAME definition instead
Thomas Debesse [Wed, 5 Jun 2019 01:30:53 +0000 (03:30 +0200)]
logging: no need for quotes around netradiant version in radiant.log
Thomas Debesse [Wed, 5 Jun 2019 01:17:06 +0000 (03:17 +0200)]
radiant/tools: use RADIANT_NAME instead of hardcoding NetRadiant or Radiant
Thomas Debesse [Sun, 16 Jun 2019 11:08:29 +0000 (13:08 +0200)]
bikeshedding: comment wording
Thomas Debesse [Wed, 5 Jun 2019 00:20:58 +0000 (02:20 +0200)]
bikeshedding: spacing
Thomas Debesse [Sun, 16 Jun 2019 11:20:40 +0000 (13:20 +0200)]
bikeshedding: cmake quoting
Thomas Debesse [Tue, 4 Jun 2019 23:46:28 +0000 (01:46 +0200)]
cmake: use complete version string in radiant about dialog
Thomas Debesse [Wed, 5 Jun 2019 00:00:30 +0000 (02:00 +0200)]
cmake/makefile: define NetRadiant name
Thomas Debesse [Wed, 5 Jun 2019 00:00:58 +0000 (02:00 +0200)]
cmake/makefile: there is no need for MAJOR/MINOR/PATCH anymore
Thomas Debesse [Wed, 29 May 2019 21:25:08 +0000 (23:25 +0200)]
cmake: there is no conflict anymore between radiant directory and netradiant file
Thomas Debesse [Wed, 29 May 2019 21:21:59 +0000 (23:21 +0200)]
cmake: add “tools” target
the same way there is now a BUILD_RADIANT and BUILD_TOOLS build option,
allow people to just do: make tools
Thomas Debesse [Tue, 4 Jun 2019 23:12:08 +0000 (01:12 +0200)]
cmake: only set RADIANT_ABOUTMSG for netradiant build
Thomas Debesse [Tue, 4 Jun 2019 23:08:42 +0000 (01:08 +0200)]
cmake: unify radiant variable names
Thomas Debesse [Tue, 4 Jun 2019 23:06:52 +0000 (01:06 +0200)]
cmake: fix RADIANT_ABOUTMSG definition to be used in About window
Thomas Debesse [Tue, 4 Jun 2019 22:35:52 +0000 (00:35 +0200)]
cmake: does not display license list since it can be set to none
Thomas Debesse [Tue, 4 Jun 2019 22:16:51 +0000 (00:16 +0200)]
cmake: put the macOS libffi hack in FindGLIB instead of FindGTKGLExt
Thomas Debesse [Mon, 3 Jun 2019 21:39:14 +0000 (23:39 +0200)]
cmake: prefer absolute paths instead of relative ones
Thomas Debesse [Mon, 3 Jun 2019 21:37:25 +0000 (23:37 +0200)]
cmake: spacing
Thomas Debesse [Tue, 4 Jun 2019 00:48:52 +0000 (02:48 +0200)]
cmake: better way to set per OS options
Thomas Debesse [Sun, 16 Jun 2019 13:20:16 +0000 (13:20 +0000)]
Merge branch 'xdg' into 'master'
radiant: mkdir config parent dir
See merge request xonotic/netradiant!129
Thomas Debesse [Sun, 16 Jun 2019 11:07:17 +0000 (13:07 +0200)]
radiant: mkdir config parent dir
Thomas Debesse [Sun, 16 Jun 2019 13:11:59 +0000 (13:11 +0000)]
Merge branch 'crnlib' into 'master'
crnlib: update submodule reference
See merge request xonotic/netradiant!131
Thomas Debesse [Sun, 16 Jun 2019 13:09:40 +0000 (15:09 +0200)]
crnlib: update submodule reference
- import fixes from Unity
- fix FreeBSD build
Thomas Debesse [Sat, 1 Jun 2019 20:46:28 +0000 (22:46 +0200)]
macos: do not require xquartz and do not build against x11
Thomas Debesse [Sun, 2 Jun 2019 01:21:39 +0000 (01:21 +0000)]
Merge branch 'freebsd' into 'master'
FreeBSD support
See merge request xonotic/netradiant!75
Thomas Debesse [Sun, 2 Jun 2019 01:08:39 +0000 (03:08 +0200)]
readme: add FreeBSD build instructions
Thomas Debesse [Wed, 30 Aug 2017 22:58:12 +0000 (22:58 +0000)]
preproc: PATH_MAX is defined in sys/syslimits.h on FreeBSD
Thomas Debesse [Wed, 30 Aug 2017 22:32:48 +0000 (22:32 +0000)]
cmake: look for libraries in /usr/local/lib on FreeBSD
Thomas Debesse [Wed, 30 Aug 2017 22:30:44 +0000 (22:30 +0000)]
vector: do not redefine lrint on FreeBSD
Thomas Debesse [Sun, 2 Jun 2019 01:16:05 +0000 (03:16 +0200)]
readme: minor edits
Thomas Debesse [Sun, 2 Jun 2019 00:17:55 +0000 (02:17 +0200)]
cmake: fix icons install and stuff like that (bug from
b4b0ad3 ), <3 @SpiKe
Thomas Debesse [Sat, 1 Jun 2019 23:28:06 +0000 (01:28 +0200)]
readme: minor update
Thomas Debesse [Sat, 1 Jun 2019 21:13:29 +0000 (21:13 +0000)]
Merge branch 'smokinguns' into 'master'
Smokin' Guns support
See merge request xonotic/netradiant!122
Thomas Debesse [Tue, 28 May 2019 20:51:29 +0000 (22:51 +0200)]
gamepacks: add Smokin' Guns support
Thomas Debesse [Wed, 1 May 2019 14:16:52 +0000 (16:16 +0200)]
q3map2: make Smokin'Guns code not requiring a rebuild
Not only Smokin'Guns game can now use .tex sidecar file
Tequila [Mon, 18 Feb 2013 18:28:44 +0000 (19:28 +0100)]
q3map2: Forgot to commit game_smokinguns.h, thanks TheDoctor for the remind
Tequila [Tue, 22 Jan 2013 10:28:39 +0000 (11:28 +0100)]
q3map2: Smokin'Guns 1.2.1 flavour
- Imported old q3map2 modifications by spoon from the v0.0.1 q3map2 for WesternQuake3
- Added support for lava content making dynamite explodes and molotov burns
- Added support for "-game smokinguns" option
- Added SMOKINGUNS define in CPPDEFINES so q3map2 builds with Smokin'Guns modifications
- Updated Smokin'Guns map pack to use "-game smokinguns" option with q3map2 tool
Thomas Debesse [Sat, 1 Jun 2019 20:55:27 +0000 (20:55 +0000)]
Merge branch 'msys2' into 'master'
msys2: fix build instructions, improve library bundling <3 @Mario
See merge request xonotic/netradiant!126
Thomas Debesse [Sat, 1 Jun 2019 18:38:02 +0000 (20:38 +0200)]
icons: enable q3map2 and q3data windows exe icons
Thomas Debesse [Sat, 1 Jun 2019 14:25:11 +0000 (16:25 +0200)]
readme: update installation instructions and telle people to rerun cmake before installing
Thomas Debesse [Sat, 1 Jun 2019 14:04:41 +0000 (16:04 +0200)]
msys2/bundle: also bundle compiler libs (minizip…)
Thomas Debesse [Sat, 1 Jun 2019 03:39:28 +0000 (05:39 +0200)]
icons: redo the netradiant icon with 512×512 resolution
- redraw netradiant.png as 512×512 instead of weird 416×416
- rebuild netradiant.ico with 32, 64, 128, 256 and 512 sizes
Thomas Debesse [Sat, 1 Jun 2019 02:01:41 +0000 (04:01 +0200)]
icons: fix netradiant windows exe icon
- use the one that is expected to be used
- drop the older ones
Thomas Debesse [Fri, 31 May 2019 23:44:54 +0000 (01:44 +0200)]
msys2/bundle: install libs only once
Thomas Debesse [Fri, 31 May 2019 23:28:13 +0000 (01:28 +0200)]
msys2/bundle: speed-up the build to not copy what is already copied
Thomas Debesse [Fri, 31 May 2019 22:17:18 +0000 (00:17 +0200)]
cmake: avoid useless dot dir in the middle of some paths
avoid annoying something/./something
Thomas Debesse [Fri, 31 May 2019 21:25:48 +0000 (23:25 +0200)]
cmake/gamepacks: tell cmake about the gamepack files and let it install them
Thomas Debesse [Fri, 31 May 2019 21:24:03 +0000 (23:24 +0200)]
msys2/bundle: gtk2 loaders and theme, installation
- pixbuf loaders
- pixmap and wimp engines
- windows theme
- install those plus the libs discovered with ldd
- only bundle windows stuff on windows
Thomas Debesse [Fri, 31 May 2019 16:21:19 +0000 (18:21 +0200)]
readme: some touchup
Thomas Debesse [Fri, 31 May 2019 15:02:06 +0000 (17:02 +0200)]
msys2: update build instructions in readme
- add minizip and git to pacman packages to install
* minizip is required by netradiant and q3map2
* git is required by gamepack-manager
* other game packs may require subversion
- tell how to use mingw over ssh
- autodetect mingw architecture, give instruction to override
- fix a typo (a i character was mistakenly added somewhere)
Thomas Debesse [Sat, 1 Jun 2019 17:52:45 +0000 (19:52 +0200)]
gamepacks: avoid readlink for useless things
Thomas Debesse [Sat, 1 Jun 2019 16:18:07 +0000 (16:18 +0000)]
Merge branch 'macos' into 'master'
fix linking on macOS and tell people how to build
See merge request xonotic/netradiant!125
Thomas Debesse [Mon, 20 May 2019 19:22:14 +0000 (21:22 +0200)]
readme: macOS instructions update
- tell macOS users to install coreutils, as grealpath is required by gamepack-manager
- tell them to use GCC since of clang fails to build netradiant
Thomas Debesse [Mon, 20 May 2019 17:52:56 +0000 (19:52 +0200)]
cmake: fix linking on macOS
Thomas Debesse [Mon, 20 May 2019 17:50:21 +0000 (19:50 +0200)]
cmake: spacing
Thomas Debesse [Sat, 1 Jun 2019 15:48:02 +0000 (15:48 +0000)]
Merge branch 'gamepack-manager' into 'master'
some gamepack-manager fixes for legacy Makefile and macOS
See merge request xonotic/netradiant!124
Thomas Debesse [Thu, 23 May 2019 00:39:45 +0000 (02:39 +0200)]
gamepack-manager: use GNU sed on macOS and avoid GNU cp option
Thomas Debesse [Mon, 20 May 2019 19:17:02 +0000 (21:17 +0200)]
gamepack-manager: try to compute realpath the portable way
Thomas Debesse [Sun, 19 May 2019 22:41:04 +0000 (00:41 +0200)]
gamepack-manager: Makefile honors shebang
and properly create directories when called from Makefile
Thomas Debesse [Sat, 1 Jun 2019 15:22:30 +0000 (15:22 +0000)]
Merge branch 'gdefos' into 'master'
rework GDEF_OS macros
See merge request xonotic/netradiant!123
Thomas Debesse [Thu, 23 May 2019 00:42:39 +0000 (02:42 +0200)]
gdef: PATH_MAX seems to not only be undefined on Windows but on macOS too
Thomas Debesse [Sat, 27 Jan 2018 22:54:15 +0000 (23:54 +0100)]
rework GDEF_OS macros
Thomas Debesse [Sat, 1 Jun 2019 15:08:02 +0000 (15:08 +0000)]
Merge branch 'msys2-ldd' into 'master'
msys2/bundle: properly parse ldd output for dll bundling on windows
See merge request xonotic/netradiant!128
Thomas Debesse [Fri, 31 May 2019 15:59:56 +0000 (17:59 +0200)]
msys2/bundle: properly parse ldd output for dll bundling on windows
- properly filters out Windows dll using case insensitive grep
- filters out non .dll lines in ldd output, avoid empty lines and ??? lines
- copy dll preserving timestamps
Thomas Debesse [Fri, 31 May 2019 18:24:35 +0000 (18:24 +0000)]
Merge branch 'ellipsis' into 'master'
ui: fix the ellipsis icon
See merge request xonotic/netradiant!127
Thomas Debesse [Fri, 31 May 2019 18:22:05 +0000 (20:22 +0200)]
ui: fix the ellipsis icon
Thomas Debesse [Tue, 21 May 2019 23:46:40 +0000 (23:46 +0000)]
Merge branch 'macos' into 'master'
MacOS compilation fix
See merge request xonotic/netradiant!112
Thomas Debesse [Sun, 19 May 2019 23:11:31 +0000 (01:11 +0200)]
only apply mac fix on macos
Jay Dolan [Sat, 6 May 2017 13:38:00 +0000 (09:38 -0400)]
Fix compilation on OS X for RTLD_DEEPBIND.
Thomas Debesse [Sat, 18 May 2019 21:15:43 +0000 (21:15 +0000)]
Merge branch 'xdgpath' into 'master'
detect XDG compliant games on Linux, obsolete !111, <3 Ingar
See merge request xonotic/netradiant!113
Thomas Debesse [Sun, 25 Nov 2018 01:05:00 +0000 (02:05 +0100)]
radiant: spacing fix
Thomas Debesse [Sun, 25 Nov 2018 00:53:22 +0000 (01:53 +0100)]
q3map2: drop Q_UNIX definition (rely on GDEF_OS_POSIX instead)
Thomas Debesse [Sun, 25 Nov 2018 00:35:12 +0000 (01:35 +0100)]
q3map2: use ~/Library/Application Support on Mac
Thomas Debesse [Sun, 25 Nov 2018 00:26:46 +0000 (01:26 +0100)]
q3map2: better detection of Windows
Thomas Debesse [Sat, 24 Nov 2018 22:40:04 +0000 (23:40 +0100)]
q3map2: check Linux prefix against XDG_DATA_HOME before HOME
Thomas Debesse [Sat, 24 Nov 2018 22:17:53 +0000 (23:17 +0100)]
q3map2: code simplification
Thomas Debesse [Sat, 24 Nov 2018 22:07:29 +0000 (23:07 +0100)]
q3map2: revert Unvanquished prefix to legacy format
Thomas Debesse [Sat, 24 Nov 2018 22:06:59 +0000 (23:06 +0100)]
radiant: check Linux prefix against XDG_DATA_HOME before HOME
Thomas Debesse [Sun, 25 Nov 2018 00:18:34 +0000 (01:18 +0100)]
radiant: does not use Linux home path on MacOS
Thomas Debesse [Wed, 2 Jan 2019 03:06:29 +0000 (04:06 +0100)]
cmake/radiant: FHS fixes
really install game files in share/netradiant
look for glsl stuff in share/netradiant/gl
and a bit more