Closed Xylemon closed 1 year ago
illwieckz wrote on 2021-08-09:
I also noticed that if I disable FTE_TOOL_QCC
I get that error:
$ make -j8
make[2]: fteqcc: Command not found
make[2]: *** [CMakeFiles/menusys.dir/build.make:57: CMakeFiles/menusys] Error 127
make[1]: *** [CMakeFiles/Makefile2:86: CMakeFiles/menusys.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 2%] Built target iqmtool
[ 4%] Built target plug_mpq
[ 14%] Built target fteq3bot
[ 42%] Built target fteqw-sv
[100%] Built target fteqw
make: *** [Makefile:130: all] Error 2
So maybe it also tries to build some gamecode and it may be useful to be able to disable that as well.
illwieckz wrote on 2021-08-09:
Here is a patch that adds FTE_MENUSYS, FTE_ENGINE
and FTE_ENGINE_SERVER
(and also added FTE_ENGINE_CLIENT
while I was at it).
So I can do this to only build iqmtool
:
cmake -H'.' -B'build' \
-D'FTE_TOOL_IQM'='ON' \
-D'FTE_ENGINE'='OFF' \
-D'FTE_ENGINE_SERVER'='OFF' \
-D'FTE_ENGINE_CLIENT'='OFF' \
-D'FTE_MENUSYS'='OFF' \
-D'FTE_PLUG_BULLET'='OFF' \
-D'FTE_PLUG_CEF'='OFF' \
-D'FTE_PLUG_EZHUD'='OFF' \
-D'FTE_PLUG_FFMPEG'='OFF' \
-D'FTE_PLUG_IRC'='OFF' \
-D'FTE_PLUG_MODELS'='OFF' \
-D'FTE_PLUG_MPQ'='OFF' \
-D'FTE_PLUG_NAMEMAKER'='OFF' \
-D'FTE_PLUG_ODE'='OFF' \
-D'FTE_PLUG_OPENSSL'='OFF' \
-D'FTE_PLUG_OPENXR'='OFF' \
-D'FTE_PLUG_QI'='OFF' \
-D'FTE_PLUG_TERRAINGEN'='OFF' \
-D'FTE_PLUG_TIMIDITY'='OFF' \
-D'FTE_PLUG_X11SV'='OFF' \
-D'FTE_PLUG_XMPP'='OFF' \
-D'FTE_Q3BOT'='OFF' \
-D'FTE_TOOL_HTTPSV'='OFF' \
-D'FTE_TOOL_IMAGE'='OFF' \
-D'FTE_TOOL_MASTER'='OFF' \
-D'FTE_TOOL_QCC'='OFF' \
-D'FTE_TOOL_QCCGUI'='OFF' \
-D'FTE_TOOL_QTV'='OFF' \
-D'FTE_USE_SDL'='OFF'
cmake --build 'build' --parallel "$(nproc)"
Note: CMake is still looking for things that are probably useless for iqmtool
like Freetype, OpenGL, X11 or ALSA but that's already good to only build iqmtool
.
illwieckz wrote on 2022-02-14:
I rebased the patch on current trunk
.
The interesting switches are now named FTE_MENU_SYS
, FTE_LIB_Q3BOT
, FTE_ENGINE
, FTE_ENGINE_CLIENT_ONLY
, FTE_ENGINE_SERVER_ONLY
.
cmake -H'.' -B'build' \
-D'FTE_TOOL_IQM'='ON' \
-D'FTE_ENGINE'='OFF' \
-D'FTE_ENGINE_SERVER_ONLY'='OFF' \
-D'FTE_ENGINE_CLIENT_ONLY'='OFF' \
-D'FTE_LIB_Q3BOT'='OFF' \
-D'FTE_MENU_SYS'='OFF' \
-D'FTE_PLUG_BULLET'='OFF' \
-D'FTE_PLUG_CEF'='OFF' \
-D'FTE_PLUG_EZHUD'='OFF' \
-D'FTE_PLUG_FFMPEG'='OFF' \
-D'FTE_PLUG_HL2'='OFF' \
-D'FTE_PLUG_IRC'='OFF' \
-D'FTE_PLUG_MODELS'='OFF' \
-D'FTE_PLUG_MPQ'='OFF' \
-D'FTE_PLUG_NAMEMAKER'='OFF' \
-D'FTE_PLUG_ODE'='OFF' \
-D'FTE_PLUG_OPENSSL'='OFF' \
-D'FTE_PLUG_OPENXR'='OFF' \
-D'FTE_PLUG_QI'='OFF' \
-D'FTE_PLUG_TERRAINGEN'='OFF' \
-D'FTE_PLUG_TIMIDITY'='OFF' \
-D'FTE_PLUG_X11SV'='OFF' \
-D'FTE_PLUG_XMPP'='OFF' \
-D'FTE_TOOL_HTTPSV'='OFF' \
-D'FTE_TOOL_IMAGE'='OFF' \
-D'FTE_TOOL_MASTER'='OFF' \
-D'FTE_TOOL_QCC'='OFF' \
-D'FTE_TOOL_QCCGUI'='OFF' \
-D'FTE_TOOL_QTV'='OFF' \
-D'FTE_USE_SDL'='OFF'
cmake --build 'build' --parallel "$(nproc)"
You'll may have better ideas for switch names, but it works.
@eukara wrote on 2022-03-06:
all merged. tysm!
https://sourceforge.net/p/fteqw/tickets/106/
illwieckz wrote on 2021-08-09:
I have seen no option to not build the engine when building with CMake, this would be useful for those who only wants to build the IQM tool.
Note: standalone IQM with Makefile is currently broken so it looks like there is currently no way to only build standalone IQM, see https://sourceforge.net/p/fteqw/tickets/105/