diff --git a/etc/cewrapper/compilers-and-tools.json b/etc/cewrapper/compilers-and-tools.json index 78acc6015ef..046a4780e46 100644 --- a/etc/cewrapper/compilers-and-tools.json +++ b/etc/cewrapper/compilers-and-tools.json @@ -1,5 +1,7 @@ { "use_appcontainer": false, + "pids_max": 72, + "mem_max": 1342177280, "allowed_paths": [], "allowed_registry": [] } diff --git a/etc/cewrapper/user-execution.json b/etc/cewrapper/user-execution.json index 9c3b028dca7..9a9669798bf 100644 --- a/etc/cewrapper/user-execution.json +++ b/etc/cewrapper/user-execution.json @@ -1,5 +1,7 @@ { "use_appcontainer": true, + "pids_max": 14, + "mem_max": 209715200, "allowed_paths": [], "allowed_registry": [] } diff --git a/etc/config/c++.amazonwin.properties b/etc/config/c++.amazonwin.properties index 872a2c8e1bf..7d57c063ddf 100644 --- a/etc/config/c++.amazonwin.properties +++ b/etc/config/c++.amazonwin.properties @@ -7,6 +7,7 @@ group.mingw64.isSemVer=true group.mingw64.licenseLink=https://directory.fsf.org/wiki/Mingw-w64#tab=Details group.mingw64.licenseName=multiple licenses (GPL, ZPL and more) group.mingw64.instructionSet=amd64 +group.mingw64.libPath=${exePath}/../lib;${exePath}/../x86_64-w64-mingw32/lib group.mingw64_ucrt_gcc.compilers=mingw64_ucrt_gcc_1220:mingw64_ucrt_gcc_1210:mingw64_ucrt_gcc_1130 group.mingw64_ucrt_gcc.compilerType=win32-mingw-gcc diff --git a/etc/config/c.amazonwin.properties b/etc/config/c.amazonwin.properties index a56652cb945..f8d49737e0e 100644 --- a/etc/config/c.amazonwin.properties +++ b/etc/config/c.amazonwin.properties @@ -7,6 +7,7 @@ group.cmingw64.isSemVer=true group.cmingw64.licenseLink=https://directory.fsf.org/wiki/Mingw-w64#tab=Details group.cmingw64.licenseName=multiple licenses (GPL, ZPL and more) group.cmingw64.instructionSet=amd64 +group.cmingw64.libPath=${exePath}/../lib;${exePath}/../x86_64-w64-mingw32/lib group.cmingw64_ucrt_gcc.compilers=cmingw64_ucrt_gcc_1220:cmingw64_ucrt_gcc_1210:cmingw64_ucrt_gcc_1130 group.cmingw64_ucrt_gcc.compilerType=win32-mingw-gcc diff --git a/lib/compilers/win32-mingw-clang.ts b/lib/compilers/win32-mingw-clang.ts index 9e73734568f..fe3bf8654ad 100644 --- a/lib/compilers/win32-mingw-clang.ts +++ b/lib/compilers/win32-mingw-clang.ts @@ -52,6 +52,31 @@ export class Win32MingWClang extends ClangCompiler { return super.optionsForFilter(filters, outputFilename, userOptions); } + override orderArguments( + options: string[], + inputFilename: string, + libIncludes: string[], + libOptions: string[], + libPaths: string[], + libLinks: string[], + userOptions: string[], + staticLibLinks: string[], + ) { + const newUserOptions = userOptions.filter((opt) => !opt.startsWith('-l')); + const newLinkOptions = userOptions.filter((opt) => opt.startsWith('-l')); + + return options.concat( + newUserOptions, + [this.filename(inputFilename)], + libIncludes, + libOptions, + libPaths, + newLinkOptions, + libLinks, + staticLibLinks, + ); + } + override getDefaultExecOptions(): ExecutionOptions { const options = super.getDefaultExecOptions(); if (!options.env) options.env = {}; diff --git a/lib/compilers/win32-mingw-gcc.ts b/lib/compilers/win32-mingw-gcc.ts index b92e290aaef..edfb0172b0b 100644 --- a/lib/compilers/win32-mingw-gcc.ts +++ b/lib/compilers/win32-mingw-gcc.ts @@ -52,6 +52,31 @@ export class Win32MingWGcc extends GCCCompiler { return super.optionsForFilter(filters, outputFilename, userOptions); } + override orderArguments( + options: string[], + inputFilename: string, + libIncludes: string[], + libOptions: string[], + libPaths: string[], + libLinks: string[], + userOptions: string[], + staticLibLinks: string[], + ) { + const newUserOptions = userOptions.filter((opt) => !opt.startsWith('-l')); + const newLinkOptions = userOptions.filter((opt) => opt.startsWith('-l')); + + return options.concat( + newUserOptions, + [this.filename(inputFilename)], + libIncludes, + libOptions, + libPaths, + newLinkOptions, + libLinks, + staticLibLinks, + ); + } + override getDefaultExecOptions(): ExecutionOptions { const options = super.getDefaultExecOptions(); if (!options.env) options.env = {};