[SERVER-48236] The SCons ninja integration accepts random arguments for `--ninja` Created: 15/May/20  Updated: 27/Oct/23  Resolved: 15/May/20

Status: Closed
Project: Core Server
Component/s: Build
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Minor - P4
Reporter: Kaloian Manassiev Assignee: [DO NOT ASSIGN] Backlog - Server Development Platform Team (SDP) (Inactive)
Resolution: Works as Designed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Server Development Platform
Operating System: ALL
Participants:

 Description   

I accidentally typed --ninja=neext (instead of 'next') and SCons accepted it:

E:\workspace\mongo>buildscripts\scons.py --jlink=4 --ssl --win-version-min=win10 --detect-odr-violations --dbg=on --opt=off CPPPATH="D:/workspace/libs/snmp/include D:/workspace/libs/sasl/include" LIBPATH="D:/workspace/libs/snmp/lib D:/workspace/libs/sasl/lib" MONGO_GIT_HASH="unknown" MONGO_VERSION="0.0.0" VARIANT_DIR=ninja=neext --ninja build.ninja
scons: Reading SConscript files ...
scons: running with args C:\Python37\python.exe E:\workspace\mongo\buildscripts\scons.py --jlink=4 --ssl --win-version-min=win10 --detect-odr-violations --dbg=on --opt=off CPPPATH=D:/workspace/libs/snmp/include D:/workspace/libs/sasl/include LIBPATH=D:/workspace/libs/snmp/lib D:/workspace/libs/sasl/lib MONGO_GIT_HASH=unknown MONGO_VERSION=0.0.0 VARIANT_DIR=ninja=neext --ninja build.ninja
Mkdir("build\scons")
scons version: 3.1.2
python version: 3 7 6 'final' 0
CC is cl
cl found in $PATH at C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.25.28610\bin\HostX64\x64\cl.EXE
CXX is $CC
$CC was not found in $PATH
$CC resolves to E:\workspace\mongo\$CC
Checking whether the C compiler works... yes
Checking whether the C++ compiler works... yes
Checking that the C++ compiler can link a C++ program... yes
Checking if C++ compiler "$CC" is MSVC... yes
Checking if C compiler "cl" is MSVC... yes
Detected a x86_64 processor
Checking if target OS windows is supported by the toolchain... yes
adding module: mongo-enterprise-modules
Checking if C compiler is Microsoft Visual Studio 2019 16.4 or newer...yes
Checking if C++ compiler is Microsoft Visual Studio 2019 16.4 or newer...yes
Checking if we are using libstdc++... no
Checking for C++17... yes
Checking for memset_s... no
Checking for C function strnlen()... no
Checking for C function explicit_bzero()... no
Checking Windows SDK is 8.1 or newer... yes
Checking if we are on a POSIX system... no
Checking for storage class thread_local yes
Checking for C++14 std::enable_if_t support...yes
Using SSL Provider: windows
Checking for C++ header file execinfo.h... no
Checking for C library pcap... no
Checking for C library wpcap... no
Checking if std::atomic<int64_t> works... yes
Checking if std::atomic<uint64_t> works... yes
Checking if std::atomic<int32_t> works... yes
Checking if std::atomic<uint32_t> works... yes
Checking for extended alignment 64 for concurrency types... yes
Checking for mongoc_get_major_version() in C library mongoc-1.0... no
configuring module: mongo-enterprise-modules
Checking for C++ header file net-snmp/net-snmp-config.h... yes
Checking for C function fallocate()... no
Checking for C function sync_file_range()... no
Checking for C header file x86intrin.h... no
Checking for C header file arm_neon.h... no
SCons tool setup did not configure the path to the vcredist merge modules, disabling MSI installer
Checking for sasl_version_info(0, 0, 0, 0, 0, 0) in C library sasl2... yes
Checking for C library gssapi_krb5... no
Checking for KRB5 Features...no
scons: done reading SConscript files.
scons: Building targets ...
Generating: build.ninja
scons: done building targets.



 Comments   
Comment by Kaloian Manassiev [ 15/May/20 ]

My bad, I realised I was passing the argument at the wrong place. It works just fine:

E:\workspace\mongo>buildscripts\scons.py --jlink=4 --ssl --win-version-min=win10 --detect-odr-violations --dbg=on --opt=off CPPPATH="D:/workspace/libs/snmp/include D:/workspace/libs/sasl/include" LIBPATH="D:
/workspace/libs/snmp/lib D:/workspace/libs/sasl/lib" MONGO_GIT_HASH="unknown" MONGO_VERSION="0.0.0" VARIANT_DIR=ninja --ninja=neext build.ninja
scons: Reading SConscript files ...
scons: running with args C:\Python37\python.exe E:\workspace\mongo\buildscripts\scons.py --jlink=4 --ssl --win-version-min=win10 --detect-odr-violations --dbg=on --opt=off CPPPATH=D:/workspace/libs/snmp/incl
ude D:/workspace/libs/sasl/include LIBPATH=D:/workspace/libs/snmp/lib D:/workspace/libs/sasl/lib MONGO_GIT_HASH=unknown MONGO_VERSION=0.0.0 VARIANT_DIR=ninja --ninja=neext build.ninja
usage: scons [OPTION] [TARGET] ...SCons Error: option --ninja: invalid choice: 'neext' (choose from 'stable', 'next', 'disabled') 

Generated at Thu Feb 08 05:16:32 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.