${n.message}`:h,v=[g,t,e].filter(Boolean).join("\n");return m?(n.originalMessage=n.message,n.message=v):n=Error(v),n.shortMessage=g,n.command=s,n.escapedCommand=a,n.exitCode=o,n.signal=i,n.signalDescription=p,n.stdout=e,n.stderr=t,void 0!==r&&(n.all=r),"bufferedData"in n&&delete n.bufferedData,n.failed=!0,n.timedOut=!!l,n.isCanceled=c,n.killed=u&&!l,n;};var e5={};const e8=["stdin","stdout","stderr"],e7=e=>{if(!e)return;let{stdio:t}=e;if(void 0===t)return e8.map(t=>e[t]);if(e8.some(t=>void 0!==e[t]))throw Error("It's not possible to provide `stdio` in combination with one of "+e8.map(e=>`\`${e}\``).join(", "));if("string"==typeoft)returnt;if(!Array.isArray(t))throwTypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeoft}\``);returnArray.from({length:Math.max(t.length,e8.length)},(e,r)=>t[r]);};(e5=e7).node=e=>{lett=e7(e);return"ipc"===t?"ipc":void0===t||"string"==typeoft?[t,t,t,"ipc"]:t.includes("ipc")?t:[...t,"ipc"];};vare9,te={},tt=eu.process;consttr=e=>e&&"object"==typeofe&&"function"==typeofe.removeListener&&"function"==typeofe.emit&&"function"==typeofe.reallyExit&&"function"==typeofe.listeners&&"function"==typeofe.kill&&"number"==typeofe.pid&&"function"==typeofe.on;if(tr(tt)){vartn,ti=ef("4c98W"),to=/^win/i.test(tt.platform),ts=v;"function"!=typeofts&&(ts=ts.EventEmitter),tt.__signal_exit_emitter__?tn=tt.__signal_exit_emitter__:((tn=tt.__signal_exit_emitter__=newts()).count=0,tn.emitted={}),tn.infinite||(tn.setMaxListeners(1/0),tn.infinite=!0);varta=()=>{tu&&tr(eu.process)&&(tu=!1,ti.forEach(e=>{try{tt.removeListener(e,tc[e]);}catch(e){}}),tt.emit=th,tt.reallyExit=tp,tn.count-=1);};(te=(e,t)=>{if(!tr(eu.process))return()=>{};E.equal(typeofe,"function","a callback must be provided for exit handler"),!1===tu&&td();varr="exit";returnt&&t.alwaysLast&&(r="afterexit"),tn.on(r,e),()=>{tn.removeListener(r,e),0===tn.listeners("exit").length&&0===tn.listeners("afterexit").length&&ta();};}).unload=ta;vartl=(e,t,r)=>{tn.emitted[e]||(tn.emitted[e]=!0,tn.emit(e,t,r));},tc={};ti.forEach(e=>{tc[e]=()=>{tr(eu.process)&&tt.listeners(e).length===tn.count&&(ta(),tl("exit",null,e),tl("afterexit",null,e),to&&"SIGHUP"===e&&(e="SIGINT"),tt.kill(tt.pid,e));};}),te.signals=()=>ti;vartu=!1,td=()=>{!tu&&tr(eu.process)&&(tu=!0,tn.count+=1,ti=ti.filter(e=>{try{returntt.on(e,tc[e]),!0;}catch(e){return!1;}}),tt.emit=tm,tt.reallyExit=tf);};te.load=td;vartp=tt.reallyExit,tf=e=>{tr(eu.process)&&(tt.exitCode=e||0,tl("exit",tt.exitCode,null),tl("afterexit",tt.exitCode,null),tp.call(tt,tt.exitCode));},th=tt.emit,tm=function(e,t){if("exit"===e&&tr(eu.process)){void0!==t&&(tt.exitCode=t);varr=th.apply(this,arguments);returntl("exit",tt.exitCode,null),tl("afterexit",tt.exitCode,null),r;}returnth.apply(this,arguments);};}elsete=()=>()=>{};consttg=e=>e===u.constants.signals.SIGTERM||"string"==typeofe&&"SIGTERM"===e.toUpperCase();vartv,tE=(e9={spawnedKill(e,t="SIGTERM",r={}){letn=e(t);return((e,t,r,n)=>{if(!((e,{forceKillAfterTimeout:t},r)=>tg(e)&&!1!==t&&r)(t,r,n))return;leti=(({forceKillAfterTimeout:e=!0})=>{if(!0===e)return5e3;if(!Number.isFinite(e)||0>e)throwTypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${e}\` (${typeofe})`);returne;})(r),o=setTimeout(()=>{e("SIGKILL");},i);o.unref&&o.unref();})(e,t,r,n),n;},spawnedCancel(e,t){e.kill()&&(t.isCanceled=!0);},setupTimeout(e,{timeout:t,killSignal:r="SIGTERM"},n){leti;if(0===t||void0===t)returnn;leto=newPromise((n,o)=>{i=setTimeout(()=>{e.kill(r),o(Object.assign(Error("Timed out"),{timedOut:!0,signal:r}));},t);}),s=n.finally(()=>{clearTimeout(i);});returnPromise.race([o,s]);},validateTimeout({timeout:e}){if(void0!==e&&(!Number.isFinite(e)||0>e))throwTypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${e}\` (${typeofe})`);},asyncsetExitHandler(e,{cleanup:t,detached:r},n){if(!t||r)returnn;leti=te(()=>{e.kill();});returnn.finally(()=>{i();});}}).spawnedKill,ty=e9.spawnedCancel,tw=e9.setupTimeout,tx=e9.validateTimeout,tb=e9.setExitHandler,tS={};consttI=e=>n
${n.message}`:m,E=[v,t,e].filter(Boolean).join("\n");return g?(n.originalMessage=n.message,n.message=E):n=Error(E),n.shortMessage=v,n.command=s,n.escapedCommand=a,n.exitCode=o,n.signal=i,n.signalDescription=p,n.stdout=e,n.stderr=t,void 0!==r&&(n.all=r),"bufferedData"in n&&delete n.bufferedData,n.failed=!0,n.timedOut=!!l,n.isCanceled=c,n.killed=u&&!l,n;};var no={};"use strict";const ns=["stdin","stdout","stderr"],na=e=>ns.some(t=>void 0!==e[t]),nl=e=>{if(!e)return;let{stdio:t}=e;if(void 0===t)return ns.map(t=>e[t]);if(na(e))throw Error(`It'snotpossibletoprovide\`stdio\` in combination with one of ${ns.map(e=>`\`${e}\``).join(", ")}`);if("string"==typeoft)returnt;if(!Array.isArray(t))throwTypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeoft}\``);letr=Math.max(t.length,ns.length);returnArray.from({length:r},(e,r)=>t[r]);};(no=nl).node=e=>{lett=nl(e);return"ipc"===t?"ipc":void0===t||"string"==typeoft?[t,t,t,"ipc"]:t.includes("ipc")?t:[...t,"ipc"];};varnc={},nu={},nd=j.process;constnp=function(e){returne&&"object"==typeofe&&"function"==typeofe.removeListener&&"function"==typeofe.emit&&"function"==typeofe.reallyExit&&"function"==typeofe.listeners&&"function"==typeofe.kill&&"number"==typeofe.pid&&"function"==typeofe.on;};if(np(nd)){varnf,nh,nm=G("1YMV0"),ng=/^win/i.test(nd.platform),nv=v;"function"!=typeofnv&&(nv=nv.EventEmitter),nd.__signal_exit_emitter__?nh=nd.__signal_exit_emitter__:((nh=nd.__signal_exit_emitter__=newnv()).count=0,nh.emitted={}),nh.infinite||(nh.setMaxListeners(1/0),nh.infinite=!0);varnE=function(){nx&&np(j.process)&&(nx=!1,nm.forEach(function(e){try{nd.removeListener(e,nw[e]);}catch(e){}}),nd.emit=nR,nd.reallyExit=nS,nh.count-=1);};(nu=function(e,t){if(!np(j.process))returnfunction(){};E.equal(typeofe,"function","a callback must be provided for exit handler"),!1===nx&&nb();varr="exit";returnt&&t.alwaysLast&&(r="afterexit"),nh.on(r,e),function(){nh.removeListener(r,e),0===nh.listeners("exit").length&&0===nh.listeners("afterexit").length&&nE();};}).unload=nE;varny=function(e,t,r){nh.emitted[e]||(nh.emitted[e]=!0,nh.emit(e,t,r));},nw={};nm.forEach(function(e){nw[e]=function(){np(j.process)&&nd.listeners(e).length===nh.count&&(nE(),ny("exit",null,e),ny("afterexit",null,e),ng&&"SIGHUP"===e&&(e="SIGINT"),nd.kill(nd.pid,e));};}),nu.signals=function(){returnnm;};varnx=!1,nb=function(){!nx&&np(j.process)&&(nx=!0,nh.count+=1,nm=nm.filter(function(e){try{returnnd.on(e,nw[e]),!0;}catch(e){return!1;}}),nd.emit=nO,nd.reallyExit=nI);};nu.load=nb;varnS=nd.reallyExit,nI=function(e){np(j.process)&&(nd.exitCode=e||0,ny("exit",nd.exitCode,null),ny("afterexit",nd.exitCode,null),nS.call(nd,nd.exitCode));},nR=nd.emit,nO=function(e,t){if(!("exit"===e&&np(j.process)))returnnR.apply(this,arguments);void0!==t&&(nd.exitCode=t);varr=nR.apply(this,arguments);returnny("exit",nd.exitCode,null),ny("afterexit",nd.exitCode,null),r;};}elsenu=function(){returnfunction(){};};"use strict";"use strict";constnT=(e,t,r,n)=>{if(!n$(t,r,n))return;leti=nA(r),o=setTimeout(()=>{e("SIGKILL");},i);o.unref&&o.unref();},n$=(e,{forceKillAfterTimeout:t},r)=>nC(e)&&!1!==t&&r,nC=e=>e===u.constants.signals.SIGTERM||"string"==typeofe&&"SIGTERM"===e.toUpperCase(),nA=({forceKillAfterTimeout:e=!0})=>{if(!0===e)return5e3;if(!Number.isFinite(e)||e<0)throwTypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${e}\` (${typeofe})`);returne;},n_=(e,t,r)=>{e.kill(t),r(Object.assign(Error("Timed out"),{timedOut:!0,signal:t}));},nP=async(e,{cleanup:t,detached:r},n)=>{if(!t||r)returnn;leti=nu(()=>{e.kill();});returnn.finally(()=>{i();});};varnN=(nc={spawnedKill:(e,t="SIGTERM",r={})=>{letn=e(t);returnnT(e,t,r,n),n;},spawnedCancel:(e,t)=>{letr=e.kill();r&&(t.isCanceled=!0);},setupTimeout:(e,{timeout:t,killSignal:r="SIGTERM"},n)=>{leti;if(0===t||void0===t)returnn;leto=newPromise((n,o)=>{i=setTimeout(()=>{n_(e,r,o);},t);}),s=n.finally(()=>{clearTimeout(i);});returnPromise.race([o,s]);},validateTimeout:({timeout:e})=>{if(void0!==e&&(!Number.isFin
${t}`,i_=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),iP=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),iN=(e,t,r)=>{let n=""===r?"":`with${r.trim()}()`,i=iA.bind(null,n,t.toString());Object.defineProperty(i,"name",iP),Object.defineProperty(e,"toString",{...i_,value:i});},iL=new WeakMap(),iD=(e,t={})=>{let r;if("function"!=typeof e)throw TypeError("Expected a function");let n=0,i=e.displayName||e.name||"<anonymous>",o=function(...s){if(iL.set(o,++n),1===n)r=e.apply(this,s),e=null;else if(!0===t.throw)throw Error(`Function\`${i}\` can only be called once`);returnr;};returnfunction(e,t,{ignoreNonConfigurable:r=!1}={}){let{name:n}=e;for(letnofReflect.ownKeys(t))iT(e,t,n,r);iC(e,t),iN(e,t,n);}(o,e),iL.set(o,n),o;};iD.callCount=e=>{if(!iL.has(e))throwError(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);returniL.get(e);};constik=()=>Array.from({length:iM-iU+1},ij),ij=(e,t)=>({name:`SIGRT${t+1}`,number:iU+t,action:"terminate",description:"Application-specific signal (realtime)",standard:"posix"}),iU=34,iM=64,iG=[{name:"SIGHUP",number:1,action:"terminate",description:"Terminal closed",standard:"posix"},{name:"SIGINT",number:2,action:"terminate",description:"User interruption with CTRL-C",standard:"ansi"},{name:"SIGQUIT",number:3,action:"core",description:"User interruption with CTRL-\\",standard:"posix"},{name:"SIGILL",number:4,action:"core",description:"Invalid machine instruction",standard:"ansi"},{name:"SIGTRAP",number:5,action:"core",description:"Debugger breakpoint",standard:"posix"},{name:"SIGABRT",number:6,action:"core",description:"Aborted",standard:"ansi"},{name:"SIGIOT",number:6,action:"core",description:"Aborted",standard:"bsd"},{name:"SIGBUS",number:7,action:"core",description:"Bus error due to misaligned, non-existing address or paging error",standard:"bsd"},{name:"SIGEMT",number:7,action:"terminate",description:"Command should be emulated but is not implemented",standard:"other"},{name:"SIGFPE",number:8,action:"core",description:"Floating point arithmetic error",standard:"ansi"},{name:"SIGKILL",number:9,action:"terminate",description:"Forced termination",standard:"posix",forced:!0},{name:"SIGUSR1",number:10,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGSEGV",number:11,action:"core",description:"Segmentation fault",standard:"ansi"},{name:"SIGUSR2",number:12,action:"terminate",description:"Application-specific signal",standard:"posix"},{name:"SIGPIPE",number:13,action:"terminate",description:"Broken pipe or socket",standard:"posix"},{name:"SIGALRM",number:14,action:"terminate",description:"Timeout or timer",standard:"posix"},{name:"SIGTERM",number:15,action:"terminate",description:"Termination",standard:"ansi"},{name:"SIGSTKFLT",number:16,action:"terminate",description:"Stack is empty or overflowed",standard:"other"},{name:"SIGCHLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"posix"},{name:"SIGCLD",number:17,action:"ignore",description:"Child process terminated, paused or unpaused",standard:"other"},{name:"SIGCONT",number:18,action:"unpause",description:"Unpaused",standard:"posix",forced:!0},{name:"SIGSTOP",number:19,action:"pause",description:"Paused",standard:"posix",forced:!0},{name:"SIGTSTP",number:20,action:"pause",description:'Paused using CTRL-Z or "suspend"',standard:"posix"},{name:"SIGTTIN",number:21,action:"pause",description:"Background process cannot read terminal input",standard:"posix"},{name:"SIGBREAK",number:21,action:"terminate",description:"User interruption with CTRL-BREAK",standard:"other"},{name:"SIGTTOU",number:22,action:"pause",description:"Background process cannot write to terminal output",standard:"posix"},{name:"SIGURG",number:23,action:"ignore",description:"Socket received out-of-band data",standard:"bsd"},{name:"SIGXCPU",number:24,action:"core",description:"Process timed out",standard:"bsd"},{name:"SIGXFSZ",number:25,action:"core",description:"File too big",standard:"bsd"},{name:"SIGVTALRM",number:26,action:"termina
${n.message}`:m,E=[v,t,e].filter(Boolean).join("\n");return g?(n.originalMessage=n.message,n.message=E):n=Error(E),n.shortMessage=v,n.command=s,n.escapedCommand=a,n.exitCode=o,n.signal=i,n.signalDescription=p,n.stdout=e,n.stderr=t,void 0!==r&&(n.all=r),"bufferedData"in n&&delete n.bufferedData,n.failed=!0,n.timedOut=!!l,n.isCanceled=c,n.killed=u&&!l,n;},iW=["stdin","stdout","stderr"],iY=e=>iW.some(t=>void 0!==e[t]),iQ=e=>{if(!e)return;let{stdio:t}=e;if(void 0===t)return iW.map(t=>e[t]);if(iY(e))throw Error(`It's not possible to provide \`stdio\` in combination with one of ${iW.map(e=>`\`${e}\``).join(", ")}`);if("string"==typeof t)return t;if(!Array.isArray(t))throw TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof t}\``);let r=Math.max(t.length,iW.length);return Array.from({length:r},(e,r)=>t[r]);},iJ=(e,t="SIGTERM",r={})=>{let n=e(t);return iZ(e,t,r,n),n;},iZ=(e,t,r,n)=>{if(!i0(t,r,n))return;let i=i2(r),o=setTimeout(()=>{e("SIGKILL");},i);o.unref&&o.unref();},i0=(e,{forceKillAfterTimeout:t},r)=>i1(e)&&!1!==t&&r,i1=e=>e===k(P).constants.signals.SIGTERM||"string"==typeof e&&"SIGTERM"===e.toUpperCase(),i2=({forceKillAfterTimeout:e=!0})=>{if(!0===e)return 5e3;if(!Number.isFinite(e)||e<0)throw TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`);return e;},i4=(e,t)=>{let r=e.kill();r&&(t.isCanceled=!0);},i3=(e,t,r)=>{e.kill(t),r(Object.assign(Error("Timed out"),{timedOut:!0,signal:t}));},i6=(e,{timeout:t,killSignal:r="SIGTERM"},n)=>{let i;if(0===t||void 0===t)return n;let o=new Promise((n,o)=>{i=setTimeout(()=>{i3(e,r,o);},t);}),s=n.finally(()=>{clearTimeout(i);});return Promise.race([o,s]);},i5=({timeout:e})=>{if(void 0!==e&&(!Number.isFinite(e)||e<0))throw TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${e}\` (${typeof e})`);},i8=async(e,{cleanup:t,detached:r},n)=>{if(!t||r)return n;let i=k(nu)(()=>{e.kill();});return n.finally(()=>{i();});};function i7(e){return null!==e&&"object"==typeof e&&"function"==typeof e.pipe;}function i9(e){return i7(e)&&!1!==e.writable&&"function"==typeof e._write&&"object"==typeof e._writableState;}const oe=e=>e instanceof C.ChildProcess&&"function"==typeof e.then,ot=(e,t,r)=>{if("string"==typeof r)return e[t].pipe((0,w.createWriteStream)(r)),e;if(i9(r))return e[t].pipe(r),e;if(!oe(r))throw TypeError("The second argument must be a string, a stream or an Execa child process.");if(!i9(r.stdin))throw TypeError("The target child process'sstdinmustbeavailable.");return e[t].pipe(r.stdin),r;},or=e=>{null!==e.stdout&&(e.pipeStdout=ot.bind(void 0,e,"stdout")),null!==e.stderr&&(e.pipeStderr=ot.bind(void 0,e,"stderr")),void 0!==e.all&&(e.pipeAll=ot.bind(void 0,e,"all"));},on=e=>{if(void 0!==e)throw TypeError("The`input`and`inputFile`optionscannotbebothset.");},oi=({input:e,inputFile:t})=>"string"!=typeof t?e:(on(e),(0,w.readFileSync)(t)),oo=e=>{let t=oi(e);if(i7(t))throw TypeError("The`input`optioncannotbeastreaminsyncmode");return t;},os=({input:e,inputFile:t})=>"string"!=typeof t?e:(on(e),(0,w.createReadStream)(t)),oa=(e,t)=>{let r=os(t);void 0!==r&&(i7(r)?r.pipe(e.stdin):e.stdin.end(r));},ol=(e,{all:t})=>{if(!t||!e.stdout&&!e.stderr)return;let r=k(nW)();return e.stdout&&r.add(e.stdout),e.stderr&&r.add(e.stderr),r;},oc=async(e,t)=>{if(e&&void 0!==t){e.destroy();try{return await t;}catch(e){return e.bufferedData;}}},ou=(e,{encoding:t,buffer:r,maxBuffer:n})=>{if(e&&r)return t?k(nF)(e,{encoding:t,maxBuffer:n}):k(nF).buffer(e,{maxBuffer:n});},od=async({stdout:e,stderr:t,all:r},{encoding:n,buffer:i,maxBuffer:o},s)=>{let a=ou(e,{encoding:n,buffer:i,maxBuffer:o}),l=ou(t,{encoding:n,buffer:i,maxBuffer:o}),c=ou(r,{encoding:n,buffer:i,maxBuffer:2*o});try{return await Promise.all([s,a,l,c]);}catch(n){return Promise.all([{error:n,signal:n.signal,timedOut:n.timedOut},oc(e,a),oc(t,l),oc(r,c)]);}},op=(async()=>{})().constructor.prototype,of=["then","catch","finally"].map(e=>[e,Reflect.getOwnPropertyDescriptor(op,e)]),oh=(e,t)=>{for(let[r,n]of of){let i="function"==typ
`),(0,rm.info)(`${e}="${n}"wasaddedto"${oY}`));return;}process.env[e]=n;}async function oJ(e){switch(process.platform){case"win32":await oU(`$USER_PATH=([Environment]::GetEnvironmentVariable("PATH", "User")); [Environment]::SetEnvironmentVariable("PATH", "${e};$USER_PATH", "User")`),(0,rm.info)(`"${e}" was added to the PATH.`);return;case"linux":case"darwin":awaito0(),(0,p.appendFileSync)(oY,`
exportPATH="${e}:$PATH"
`),(0,rm.info)(`"${e}"wasaddedto"${oY}"`);return;default:return;}}let oZ=!1;async function o0(){if(oZ)return;let e="# Automatically Generated by setup-cpp\nexport SOURCE_CPPRC=0";if(await(0,oX.pathExists)(oY)){let t=(0,p.readFileSync)(oY,"utf8");if(t.includes(e))return;}(0,p.appendFileSync)(oY,`
`;try{let e=t3(".profile");(0,p.appendFileSync)(e,t),(0,rm.info)(`${t}wasaddedto${e}`);let r=t3(".bashrc");(0,p.appendFileSync)(r,t),(0,rm.info)(`${t}wasaddedto${r}`);}catch(e){(0,B.warning)(`Failedtoadd${t}to.profileor.bashrc.Youshouldadditmanually:${e}`);}oZ=!0;}async function o1(){if(await(0,oX.pathExists)(oY)){let e=(0,p.readFileSync)(oY,"utf-8").split("\n"),t=[...new Set(e.reverse())].reverse();(0,p.writeFileSync)(oY,t.join("\n"));try{oV(oY);}catch{}}}var o2={},o4=d.join,o3=d.delimiter,o6=d.sep,o5=d.posix;const o8="win32"===process.platform,o7=new RegExp(`[${o5.sep}${o6===o5.sep?"":o6}]`.replace(/(\\)/g,"\\$1")),o9=RegExp(`^\\.${o7.source}`),se=e=>Object.assign(Error(`notfound:${e}`),{code:"ENOENT"}),st=(e,{path:t=process.env.PATH,pathExt:r=process.env.PATHEXT,delimiter:n=o3})=>{let i=e.match(o7)?[""]:[...(o8?[process.cwd()]:[]),...(t||"").split(n)];if(o8){let t=r||[".EXE",".CMD",".BAT",".COM"].join(n),o=t.split(n).reduce((e,t)=>(e.push(t),e.push(t.toLowerCase()),e),[]);return e.includes(".")&&""!==o[0]&&o.unshift(""),{pathEnv:i,pathExt:o,pathExtExe:t};}return{pathEnv:i,pathExt:[""]};},sr=(e,t)=>{let r=/^".*"$/.test(e)?e.slice(1,-1):e,n=!r&&o9.test(t)?t.slice(0,2):"";return n+o4(r,t);},sn=async(e,t={})=>{let{pathEnv:r,pathExt:n,pathExtExe:i}=st(e,t),o=[];for(let s of r){let r=sr(s,e);for(let e of n){let n=r+e,s=await rx(n,{pathExt:i,ignoreErrors:!0});if(s){if(!t.all)return n;o.push(n);}}}if(t.all&&o.length)return o;if(t.nothrow)return null;throw se(e);};o2=sn,sn.sync=(e,t={})=>{let{pathEnv:r,pathExt:n,pathExtExe:i}=st(e,t),o=[];for(let s of r){let r=sr(s,e);for(let e of n){let n=r+e,s=rx.sync(n,{pathExt:i,ignoreErrors:!0});if(s){if(!t.all)return n;o.push(n);}}}if(t.all&&o.length)return o;if(t.nothrow)return null;throw se(e);};var oX=G("dOmbL"),si=G("9ag04"),B=G("ER74K");const{appendFile:so}=p.promises;let ss=!1,sa=!1;async function sl(e,t=!1){let r=null!==k(o2).sync("nala",{nothrow:!0})?"nala":"apt-get";for(let{name:t,version:n}of e)(0,B.info)(`Installing${t}${n??""}via${r}`);process.env.DEBIAN_FRONTEND="noninteractive",(!ss||t)&&(su(r),ss=!0),sa||(await sd(r),sa=!0);let n=[...new Set(e.flatMap(e=>e.repositories??[]))];if(0!==n.length){for(let e of n)iy("add-apt-repository",["-y",e]);su(r);}let i=await Promise.all(e.map(e=>sc(e.name,e.version)));return iy(r,["install","--fix-broken","-y",...i]),{binDir:"/usr/bin/"};}async function sc(e,t){if(void 0!==t&&""!==t){let{stdout:r}=await oL("apt-cache",["search","--names-only",`^${(0,si.default)(e)}-${(0,si.default)(t)}$`]);if(""!==r.trim())return`${e}-${t}`;try{let{stdout:r}=await oL("apt-cache",["show",`${e}=${t}`]);if(""===r.trim())return`${e}=${t}`;}catch{}(0,B.warning)(`Failedtoinstall${e}${t}viaapt,tryingwithoutversion`);}return e;}function su(e){iy(e,"nala"!==e?["update","-y"]:["update"]);}async function sd(e){iy(e,["install","--fix-broken","-y","software-properties-common","apt-utils","ca-certificates","gnupg"]);let t=[sf(["3B4FE6ACC0B21F32","40976EAF437D05B5"],"setup-cpp-ubuntu-archive.gpg"),sf(["1E9377A2BA9EF27F"],"launchpad-toolchain.gpg")];"nala"===e&&t.push(oz("LANG","C.UTF-8",{shouldAddOnlyIfNotDefined:!0}),oz("LC_ALL","C.UTF-8",{shouldAddOnlyIfNotDefined:!0})),await Promise.all(t);}function sp(){iy("gpg",["-k"]);}async function sf(e,t,r="keyserver.ubuntu.com"){try{let n=`/etc/apt/trusted.gpg.d/${t}`;return(await(0,oX.pathExists)(n))||(sp(),await Promise.all(e.map(async e=>{await iw("gpg",["--no-default-keyring","--keyring",`gnupg-ring:${n}`,"--keyserver",r,"--recv-keys",e]),await iw("chmod",["644",n]);}))),n;}catch(e){(0,B.warning)(`Failedtoaddaptkeyviaserver${r}:${e}`);return;}}async function sh(e,t){let r=`/etc/apt/trusted.gpg.d/${e}`;return(await(0,oX.pathExists)(r))||(sp(),await sl([{name:"curl"},{name:"ca-certificates"}],void 0),await oL("curl",["-s",t,"-o",`/tmp/${e}`]),iy("gpg",["--no-default-keyring","--keyring",`gnupg-ring:${r}`,"--import",`/tmp/${e}`]),iy("chmod",["644",r])),r;}async function sm(e,t){return F.GITHUB_ACTIONS?iw("update-alternatives",["--install",`/usr/bin/${e}`,e,t,"40"]):(await o0(),so(o
`),console.table({"compiler and analyzer":{tools:"--llvm, --gcc, --msvc, --vcvarsall, --cppcheck, --clangtidy, --clangformat"},"build system":{tools:"--cmake, --ninja, --meson, --make, --task, --bazel"},"package manager":{tools:"--vcpkg, --conan, --choco, --brew, --nala"},cache:{tools:"--cppcache, --sccache"},documentation:{tools:"--doxygen, --graphviz"},coverage:{tools:"--gcovr, --opencppcoverage, --kcov"},other:{tools:"--python, --powershell, --sevenzip"}},["tools"]));let o=i.architecture??process.arch,s=process.env.SETUP_CPP_DIR??t3(""),a=[],l=[],c=q.create({autoloadLocales:!0});q.addLocale(k(X)),H.addLocale(k(V));let u=await a5();if(!function(e,t){let r=t.filter(t=>void 0!==e[t]),n=r.filter(t=>!a2(e[t])),i=n.length>=1?e[n[0]]:"true";return!n.some(t=>e[t]!==i)&&(r.forEach(t=>{e[t]=i;}),!0);}(i,["llvm","clangtidy","clangformat"]))return(0,B.error)("The same version must be used for llvm, clangformat and clangtidy"),1;sI()&&"string"==typeof i.cppcheck&&"string"==typeof i.gcovr&&((0,B.info)("installing python-pygments to avoid conflicts with cppcheck and gcovr on Arch linux"),await s_("python-pygments"));let d=!1;for(let e of cS){let n=i[e];void 0!==n&&(t=Date.now(),d=await cx(e,n,u,o,s,a,l),r=Date.now(),(0,B.info)(`took${c.format(t,r)||"0 seconds"}`));}let p=i.compiler;if(void 0!==p){let e=Date.now();await cO(p,u,s,o,a,d,l);let t=Date.now();(0,B.info)(`took${c.format(e,t)||"0 seconds"}`);}if(await o1(),0===a.length&&0===l.length)return(0,B.warning)("setup-cpp was called without any arguments. Nothing to do."),0;if(a.forEach(e=>(0,B.success)(e)),l.forEach(e=>(0,B.error)(e)),(0,B.info)("setup-cpp finished"),!F.GITHUB_ACTIONS)switch(process.platform){case"win32":(0,B.warning)("Run `RefreshEnv.cmd` or restart your shell to update the environment.");break;case"linux":case"darwin":(0,B.warning)("Run `source~/.cpprc`orrestartyourshelltoupdatetheenvironment.");}returnawaitn,0===l.length?0:1;})(process.argv).then(e=>{process.exitCode=e;}).catch(e=>{(0,B.error)("main()panicked!"),(0,B.error)(e),process.exitCode=1;});