<div dir="ltr">I am still (when I can find the time) trying to build ChaiScript with build2 as an experiment,<br>my current very short attempt is available there:<br><br><a href="https://github.com/Klaim/build2-pkg-chaiscript">https://github.com/Klaim/build2-pkg-chaiscript</a><br><br>(feel free to report me stuffs I do wrong there, I am sometime having trouble with<div>the meaning of the buildfile syntax)<br>The following issue is with the current master (the first commit of the repo).<br><br>I now see the following (trying to build with MSVC 15.6.1, just config.cxx = cl):<br><br>PS G:\perso\experiments\actorsim> bpkg build -d .\build\vs2017\ .\chaiscript-build2\<br>g:\perso\experiments\actorsim\chaiscript-build2\chaiscript\include\chaiscript\language/chaiscript_prelude.hpp(15): fatal error C1021: invalid preprocessor command 'to_string'<br>info: failed to update build\vs2017\dir{chaiscript-6.0.0-develop\}<br><br>1. UX: The error report is not clear about which cpp file was being built (I get it in only in verbose 4, see below) or the target name being built (it's not clear in the verbose output).<div>   Suggestion: consider adding the name of the target with an index of build and then</div><div>      each log coming from it would be prefixed by this index (that's more or less </div><div>      what MSBUILD does,it's helpful; I believe ninja does this too?) </div><div>      Or anything to help identify in which context (aka the target) that specific cpp is built.</div><div><br></div><div>2. Looking in the header pointed to have an error, there is no preprocessor directive, even</div><div>    less a  "to_string". Does the error is from a preprocessed version of that file?</div><div>    In any way I don't see the relationship.</div><div><br></div><div>3. The file lacks an '#include <string>', which I will report right now to chaiscript, but it's also</div><div>    not related to the issue: when added, only the line number of the error report change</div><div>    (so it's really this file that is reported).</div><div><div><br></div><div>For now I am assuming that this is a pre-processing pass being wrong?</div><div>Also, I tried the CMake build of ChaiScript to check that I don't see the same issue,</div><div>I got no problem (although it was building with MSVC's C++17 instead of "latest" version).</div><div><br></div><div>A. Joël Lamotte</div><div><br></div><div>--------------------------------------</div><div>build2 version used:</div><div><br></div><div><div>PS G:\perso\experiments\actorsim> b --version</div><div>build2 0.7.0-a.0.7409058f9af24d0a</div><div>libbutl 0.7.0-a.0.b726efcfd9462255</div><div>host x86_64-microsoft-win32-msvc14.1</div><div>Copyright (c) 2014-2017 Code Synthesis Ltd</div><div>This is free software released under the MIT license.</div><div><br></div><div>PS G:\perso\experiments\actorsim> bpkg --version</div><div>bpkg 0.7.0-a.0.22e35bf80cea95dc</div><div>libbpkg 0.7.0-a.0.9f695c1d19e55e05</div><div>libbutl 0.7.0-a.0.b726efcfd9462255</div><div>Copyright (c) 2014-2017 Code Synthesis Ltd</div><div>This is free software released under the MIT license.</div></div><div><br><br>---------------------------------------<br>verbose 4 report:<br>-------<br>PS G:\perso\experiments\actorsim> bpkg build -d .\build\vs2017\ .\chaiscript-build2\ --verbose 4<br>mkdir .\build\vs2017\.bpkg\tmp\<br>trace: pkg_build: configuration: .\build\vs2017\<br>trace: pkg_build: directory .\chaiscript-build2\<br>trace: pkg_build: collect chaiscript/6.0.0-develop<br>trace: collect: add chaiscript/6.0.0-develop<br>trace: pkg_command: command: update<br>trace: pkg_command: chaiscript out_root: .\build\vs2017\chaiscript-6.0.0-develop\<br>trace: pkg_command: buildspec: update('.\build\vs2017\chaiscript-6.0.0-develop\')<br>C:\build2\bin\b --verbose 4 update('.\build\vs2017\chaiscript-6.0.0-develop\')<br>cl<br>cxx @G:\perso\experiments\actorsim\build\vs2017\<br>  cxx        cl@C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.13.26128\bin\HostX64\x64\cl.exe<br>  id         msvc<br>  version    19.13.26128<br>  major      19<br>  minor      13<br>  patch      26128<br>  signature  Microsoft (R) C/C++ Optimizing Compiler Version 19.13.26128 for x64<br>  checksum   cc1013e26648f5511e8ea12a01ca9ab36fb6c65cc9d048d2411fa01f95f5689e<br>  target     x86_64-microsoft-win32-msvc14.1<br>  runtime    msvc<br>  stdlib     msvcp<br>  c stdlib   msvc<br>bin @G:\perso\experiments\actorsim\build\vs2017\<br>  target     x86_64-microsoft-win32-msvc14.1<br>lib --version<br><a href="http://bin.ar">bin.ar</a> @G:\perso\experiments\actorsim\build\vs2017\<br>  ar         lib@C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.13.26128\bin\HostX64\x64\lib.exe<br>  id         msvc<br>  signature  Microsoft (R) Library Manager Version 14.13.26128.0<br>  checksum   0acfc7e646d4639b888dfd44849f41adab7177971cfd0d974611bc24b889a710<br>link --version<br>bin.ld @G:\perso\experiments\actorsim\build\vs2017\<br>  ld         link@C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.13.26128\bin\HostX64\x64\link.exe<br>  id         msvc<br>  signature  Microsoft (R) Incremental Linker Version 14.13.26128.0<br>  checksum   608e18b972e868919adc9d38fad46671ccb883c927e830124b13992a50725fc0<br>cxx chaiscript@G:\perso\experiments\actorsim\build\vs2017\chaiscript-6.0.0-develop\<br>  cxx        cl@C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.13.26128\bin\HostX64\x64\cl.exe<br>  id         msvc<br>  version    19.13.26128<br>  major      19<br>  minor      13<br>  patch      26128<br>  signature  Microsoft (R) C/C++ Optimizing Compiler Version 19.13.26128 for x64<br>  checksum   cc1013e26648f5511e8ea12a01ca9ab36fb6c65cc9d048d2411fa01f95f5689e<br>  target     x86_64-microsoft-win32-msvc14.1<br>  runtime    msvc<br>  stdlib     msvcp<br>  c stdlib   msvc<br>  std        /std:c++latest /D__cpp_modules=201704 /experimental:module<br>bin chaiscript@G:\perso\experiments\actorsim\build\vs2017\chaiscript-6.0.0-develop\<br>  target     x86_64-microsoft-win32-msvc14.1<br>lib --version<br><a href="http://bin.ar">bin.ar</a> chaiscript@G:\perso\experiments\actorsim\build\vs2017\chaiscript-6.0.0-develop\<br>  ar         lib@C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.13.26128\bin\HostX64\x64\lib.exe<br>  id         msvc<br>  signature  Microsoft (R) Library Manager Version 14.13.26128.0<br>  checksum   0acfc7e646d4639b888dfd44849f41adab7177971cfd0d974611bc24b889a710<br>link --version<br>bin.ld chaiscript@G:\perso\experiments\actorsim\build\vs2017\chaiscript-6.0.0-develop\<br>  ld         link@C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.13.26128\bin\HostX64\x64\link.exe<br>  id         msvc<br>  signature  Microsoft (R) Incremental Linker Version 14.13.26128.0<br>  checksum   608e18b972e868919adc9d38fad46671ccb883c927e830124b13992a50725fc0<br>cl -IG:\perso\experiments\actorsim\chaiscript-build2\chaiscript/include /std:c++latest /D__cpp_modules=201704 /experimental:module /nologo /EHsc /MD /P /showIncludes /C /WX /Fi: G:\perso\experiments\actorsim\build\vs2017\chaiscript-6.0.0-develop\chaiscript\static_libs\chaiscript_stdlib.lib.obj.ii /TP G:\perso\experiments\actorsim\chaiscript-build2\chaiscript\static_libs\chaiscript_stdlib.cpp<br>g:\perso\experiments\actorsim\chaiscript-build2\chaiscript\include\chaiscript\language/chaiscript_prelude.hpp(15): fatal error C1021: invalid preprocessor command 'to_string'<br>info: failed to update G:\perso\experiments\actorsim\build\vs2017\dir{chaiscript-6.0.0-develop\}<br>info: scheduler statistics:<br><br>  thread_max_active      8<br>  thread_max_total       256<br>  thread_helpers         5<br>  thread_max_waiting     3<br><br>  task_queue_depth       32<br>  task_queue_full        0<br><br>  wait_queue_slots       67<br>  wait_queue_collisions  0<br><br>rmdir -r .\build\vs2017\.bpkg\tmp\<br></div></div></div></div>