Closed pzychotic closed 3 weeks ago
Could you provide steps to reproduce this issue on the main branch? I want to test out this PR, but I haven’t figured out how to make CMake to create the Debug
or Release
file.
When starting from a completely new/empty build directory where
$<TARGET_FILE_DIR:Descent3>
doesn't exist yet, the copy command forLICENSE
will create a file namedDebug
orRelease
, depending on the current configuration, in the Descent3 directory. This then prevents the creation of the output directory for the Descent3 target with the same name and thus failing the build.
I would put this into your commit message.
Could you provide steps to reproduce this issue on the main branch? I want to test out this PR, but I haven’t figured out how to make CMake to create the
Debug
orRelease
file.
The problem happens on compile time when the custom target to copy the LICENSE file gets executed.
Steps to reproduce:
Hello.
Better way is replace all custom commands (related to license files) with install
command like main license file (you can even add license files into root CMakeLists.txt install directive):
install(FILES README.md LICENSE <additional files here> DESTINATION ${CMAKE_INSTALL_DOCDIR})
Steps to reproduce:
delete your current build directory
run CMake to generate the Descent3.sln
open Descent3.sln in VS
build solution
I was able to reproduce this problem using those steps, but unfortunately, I can’t get it to reproduce consistently. I was also able to reproduce it by running cmake --build --preset win32 -j 0
.
Steps to reproduce:
- delete your current build directory
- run CMake to generate the Descent3.sln
- open Descent3.sln in VS
- build solution
I was able to reproduce this problem using those steps, but unfortunately, I can’t get it to reproduce consistently. I was also able to reproduce it by running
cmake --build --preset win32 -j 0
.
Glad you can reproduce it and it's not just me. From the VS IDE I was hitting it consistently.
Hello. Better way is replace all custom commands (related to license files) with
install
command like main license file (you can even add license files into root CMakeLists.txt install directive):install(FILES README.md LICENSE <additional files here> DESTINATION ${CMAKE_INSTALL_DOCDIR})
This sounds like sensible solution, too. If some wants to give a shot, be my guest. I'll probably can't get to it soon'ish.
Pull Request Type
Description
When starting from a completely new/empty build directory where
$<TARGET_FILE_DIR:Descent3>
doesn't exist yet, the copy command forLICENSE
will create a file namedDebug
orRelease
, depending on the current configuration, in the Descent3 directory. This then prevents the creation of the output directory for the Descent3 target with the same name and thus failing the build. I'm not quite sure why this doesn't happen on our CI builds. Maybe it's some difference between IDE and command line builds or just luck in case of parallel builds...Related Issues
Screenshots (if applicable)
Checklist
Additional Comments