@@ -31,47 +31,63 @@ if("${CMAKE_HOST_SYSTEM}" MATCHES "Windows" AND "${CMAKE_SYSTEM}" MATCHES "Windo
3131endif ()
3232
3333if (RTS_INSTALL_PREFIX_ZEROHOUR AND NOT "${RTS_INSTALL_PREFIX_ZEROHOUR} " STREQUAL "/registry" )
34- install (TARGETS z_generals RUNTIME DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR} " )
35- install (FILES $<TARGET_PDB_FILE:z_generals> DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR} " OPTIONAL )
34+ get_filename_component (INSTALL_BASENAME "${RTS_INSTALL_PREFIX_ZEROHOUR} " NAME )
35+ get_filename_component (INSTALL_PARENT "${RTS_INSTALL_PREFIX_ZEROHOUR} " DIRECTORY )
36+ get_filename_component (INSTALL_PARENT_BASENAME "${INSTALL_PARENT} " NAME )
37+
38+ if ("${INSTALL_BASENAME} " STREQUAL "Command and Conquer Generals Zero Hour" AND
39+ "${INSTALL_PARENT_BASENAME} " STREQUAL "Command and Conquer Generals Zero Hour" )
40+ set (RTS_INSTALL_PATH "${RTS_INSTALL_PREFIX_ZEROHOUR} " )
41+ else ()
42+ set (NESTED_PATH "${RTS_INSTALL_PREFIX_ZEROHOUR} /Command and Conquer Generals Zero Hour" )
43+ if (EXISTS "${NESTED_PATH} " )
44+ set (RTS_INSTALL_PATH "${NESTED_PATH} " )
45+ else ()
46+ set (RTS_INSTALL_PATH "${RTS_INSTALL_PREFIX_ZEROHOUR} " )
47+ endif ()
48+ endif ()
49+
50+ install (TARGETS z_generals RUNTIME DESTINATION "${RTS_INSTALL_PATH} " )
51+ install (FILES $<TARGET_PDB_FILE:z_generals> DESTINATION "${RTS_INSTALL_PATH} " OPTIONAL )
3652
3753 if (TARGET z_worldbuilder)
38- install (TARGETS z_worldbuilder RUNTIME DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " )
39- install (FILES $<TARGET_PDB_FILE:z_worldbuilder> DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " OPTIONAL )
54+ install (TARGETS z_worldbuilder RUNTIME DESTINATION "${RTS_INSTALL_PATH } " )
55+ install (FILES $<TARGET_PDB_FILE:z_worldbuilder> DESTINATION "${RTS_INSTALL_PATH } " OPTIONAL )
4056 endif ()
4157
4258 if (TARGET z_particleeditor)
43- install (TARGETS z_particleeditor RUNTIME DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " )
44- install (FILES $<TARGET_PDB_FILE:z_particleeditor> DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " OPTIONAL )
59+ install (TARGETS z_particleeditor RUNTIME DESTINATION "${RTS_INSTALL_PATH } " )
60+ install (FILES $<TARGET_PDB_FILE:z_particleeditor> DESTINATION "${RTS_INSTALL_PATH } " OPTIONAL )
4561 endif ()
4662
4763 if (TARGET z_debugwindow)
48- install (TARGETS z_debugwindow RUNTIME DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " )
49- install (FILES $<TARGET_PDB_FILE:z_debugwindow> DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " OPTIONAL )
64+ install (TARGETS z_debugwindow RUNTIME DESTINATION "${RTS_INSTALL_PATH } " )
65+ install (FILES $<TARGET_PDB_FILE:z_debugwindow> DESTINATION "${RTS_INSTALL_PATH } " OPTIONAL )
5066 endif ()
5167
5268 if (TARGET z_guiedit)
53- install (TARGETS z_guiedit RUNTIME DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " )
54- install (FILES $<TARGET_PDB_FILE:z_guiedit> DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " OPTIONAL )
69+ install (TARGETS z_guiedit RUNTIME DESTINATION "${RTS_INSTALL_PATH } " )
70+ install (FILES $<TARGET_PDB_FILE:z_guiedit> DESTINATION "${RTS_INSTALL_PATH } " OPTIONAL )
5571 endif ()
5672
5773 if (TARGET z_imagepacker)
58- install (TARGETS z_imagepacker RUNTIME DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " )
59- install (FILES $<TARGET_PDB_FILE:z_imagepacker> DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " OPTIONAL )
74+ install (TARGETS z_imagepacker RUNTIME DESTINATION "${RTS_INSTALL_PATH } " )
75+ install (FILES $<TARGET_PDB_FILE:z_imagepacker> DESTINATION "${RTS_INSTALL_PATH } " OPTIONAL )
6076 endif ()
6177
6278 if (TARGET z_mapcachebuilder)
63- install (TARGETS z_mapcachebuilder RUNTIME DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " )
64- install (FILES $<TARGET_PDB_FILE:z_mapcachebuilder> DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " OPTIONAL )
79+ install (TARGETS z_mapcachebuilder RUNTIME DESTINATION "${RTS_INSTALL_PATH } " )
80+ install (FILES $<TARGET_PDB_FILE:z_mapcachebuilder> DESTINATION "${RTS_INSTALL_PATH } " OPTIONAL )
6581 endif ()
6682
6783 if (TARGET z_w3dview)
68- install (TARGETS z_w3dview RUNTIME DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " )
69- install (FILES $<TARGET_PDB_FILE:z_w3dview> DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " OPTIONAL )
84+ install (TARGETS z_w3dview RUNTIME DESTINATION "${RTS_INSTALL_PATH } " )
85+ install (FILES $<TARGET_PDB_FILE:z_w3dview> DESTINATION "${RTS_INSTALL_PATH } " OPTIONAL )
7086 endif ()
7187
7288 if (TARGET z_wdump)
73- install (TARGETS z_wdump RUNTIME DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " )
74- install (FILES $<TARGET_PDB_FILE:z_wdump> DESTINATION "${RTS_INSTALL_PREFIX_ZEROHOUR } " OPTIONAL )
89+ install (TARGETS z_wdump RUNTIME DESTINATION "${RTS_INSTALL_PATH } " )
90+ install (FILES $<TARGET_PDB_FILE:z_wdump> DESTINATION "${RTS_INSTALL_PATH } " OPTIONAL )
7591 endif ()
7692else ()
7793 message (STATUS "Zero Hour install path not found. Registry keys for 'Command and Conquer Generals Zero Hour' not found. "
0 commit comments