cmake build with multiple "nasm : errors more than one input file specified"
Created by: Zclarkwilliams
I have successfully configuring the build files but failed when building DynamoRIO from command like. I following the steps found on https://github.com/DynamoRIO/dynamorio/wiki/How-To-Build.
As can be seen below it seems that there are multiple errors referencing "more than one input file" to the nasm commands but when checked in DynamoRIO\build\ext\drwrap\generate_drwrap_asm_x86.asm.vcxproj, the nasm call is: C:\NASM\nasm.exe /nologo /Zi /Zd /safeseh /c /Fo C:/edk2_ws/DynamoRIO/build/ext/drwrap/drwrap_asm_x86.asm.obj C:/edk2_ws/DynamoRIO/build/ext/drwrap/drwrap_asm_x86.asm.s
C:\edk2_ws\DynamoRIO\build>cmake --build . --config RelWithDebInfo
Microsoft (R) Build Engine version 12.0.40629.0
[Microsoft .NET Framework, version 4.0.30319.42000]
Copyright (C) Microsoft Corporation. All rights reserved.
policy_static.vcxproj -> C:\edk2_ws\DynamoRIO\build\lib32\policy_static.lib
DRcontrol.vcxproj -> C:\edk2_ws\DynamoRIO\build\bin32\DRcontrol.exe
DRkill.vcxproj -> C:\edk2_ws\DynamoRIO\build\bin32\DRkill.exe
DRload.vcxproj -> C:\edk2_ws\DynamoRIO\build\bin32\DRload.exe
DRstats.vcxproj -> C:\edk2_ws\DynamoRIO\build\bin32\DRstats.exe
DRview.vcxproj -> C:\edk2_ws\DynamoRIO\build\bin32\DRview.exe
balloon.vcxproj -> C:\edk2_ws\DynamoRIO\build\bin32\balloon.exe
Generating drlibc_x86.asm.obj.stamp
drlibc_x86.asm
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_drlibc_x86.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_drlibc_x86.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_drlibc_x86.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_drlibc_x86.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_drlibc_x86.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_drlibc_x86.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_drlibc_x86.asm.vcxproj]
type `nasm -h' for help
Generating drlibc_xarch.asm_core.obj.stamp
drlibc_xarch.asm
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_drlibc_xarch.asm_core.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_drlibc_xarch.asm_core.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_drlibc_xarch.asm_core.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_drlibc_xarch.asm_core.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_drlibc_xarch.asm_core.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_drlibc_xarch.asm_core.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_drlibc_xarch.asm_core.vcxproj]
type `nasm -h' for help
Generating x86.asm_core.obj.stamp
x86.asm
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_x86.asm_core.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_x86.asm_core.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_x86.asm_core.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_x86.asm_core.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_x86.asm_core.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_x86.asm_core.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_x86.asm_core.vcxproj]
type `nasm -h' for help
ntdll_imports.vcxproj -> C:\edk2_ws\DynamoRIO\build\lib32\ntdll_imports.dll
closewnd.vcxproj -> C:\edk2_ws\DynamoRIO\build\bin32\closewnd.exe
create_process.vcxproj -> C:\edk2_ws\DynamoRIO\build\bin32\create_process.exe
drfrontendlib.vcxproj -> C:\edk2_ws\DynamoRIO\build\lib32\drfrontendlib.lib
directory_iterator.vcxproj -> C:\edk2_ws\DynamoRIO\build\clients\lib32\release\directory_iterator.lib
drmemtrace_basic_counts.vcxproj -> C:\edk2_ws\DynamoRIO\build\clients\lib32\release\drmemtrace_basic_counts.lib
drmemtrace_histogram.vcxproj -> C:\edk2_ws\DynamoRIO\build\clients\lib32\release\drmemtrace_histogram.lib
drmemtrace_reuse_distance.vcxproj -> C:\edk2_ws\DynamoRIO\build\clients\lib32\release\drmemtrace_reuse_distance.lib
drmemtrace_reuse_time.vcxproj -> C:\edk2_ws\DynamoRIO\build\clients\lib32\release\drmemtrace_reuse_time.lib
drmemtrace_simulator.vcxproj -> C:\edk2_ws\DynamoRIO\build\clients\lib32\release\drmemtrace_simulator.lib
drcachesim_ops.vcxproj -> C:\edk2_ws\DynamoRIO\build\clients\bin32\drcachesim_ops.exe
drcpusim_ops.vcxproj -> C:\edk2_ws\DynamoRIO\build\clients\bin32\drcpusim_ops.exe
drearlyhelp2.vcxproj -> C:\edk2_ws\DynamoRIO\build\lib32\drearlyhelp2.dll
drearlyhelp1.vcxproj -> C:\edk2_ws\DynamoRIO\build\lib32\drearlyhelp1.dll
Generating drwrap_asm_x86.asm.obj.stamp
drwrap_asm_x86.asm
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\ext\drwrap\generate_drwrap_asm_x86.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\ext\drwrap\generate_drwrap_asm_x86.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\ext\drwrap\generate_drwrap_asm_x86.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\ext\drwrap\generate_drwrap_asm_x86.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\ext\drwrap\generate_drwrap_asm_x86.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\ext\drwrap\generate_drwrap_asm_x86.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\ext\drwrap\generate_drwrap_asm_x86.asm.vcxproj]
type `nasm -h' for help
compressed_file_reader.cpp
C:\edk2_ws\DynamoRIO\clients\drcachesim\reader\compressed_file_reader.cpp(38): error C2220: warning treated as error - no 'object' file generat
ed [C:\edk2_ws\DynamoRIO\build\clients\drcachesim\drmemtrace_analyzer.vcxproj]
C:\edk2_ws\DynamoRIO\clients\drcachesim\reader\compressed_file_reader.cpp(38): warning C4812: obsolete declaration style: please use 'file_read
er_t<gzFile>::~file_reader_t' instead [C:\edk2_ws\DynamoRIO\build\clients\drcachesim\drmemtrace_analyzer.vcxproj]
Generating pre_inject_asm.asm.obj.stamp
pre_inject_asm.asm
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_pre_inject_asm.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_pre_inject_asm.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_pre_inject_asm.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_pre_inject_asm.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_pre_inject_asm.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_pre_inject_asm.asm.vcxproj]
nasm : error : more than one input file specified [C:\edk2_ws\DynamoRIO\build\core\generate_pre_inject_asm.asm.vcxproj]
type `nasm -h' for help
dummy.vcxproj -> C:\edk2_ws\DynamoRIO\build\bin32\dummy.exe
dumpevts.vcxproj -> C:\edk2_ws\DynamoRIO\build\bin32\dumpevts.exe
ldmp.vcxproj -> C:\edk2_ws\DynamoRIO\build\bin32\ldmp.exe
run_in_bg.vcxproj -> C:\edk2_ws\DynamoRIO\build\bin32\run_in_bg.exe
svccntrl.vcxproj -> C:\edk2_ws\DynamoRIO\build\bin32\svccntrl.exe
winstats.vcxproj -> C:\edk2_ws\DynamoRIO\build\bin32\winstats.exe