diff -durN node-v22.14.0_orig/common.gypi node-v22.14.0/common.gypi --- node-v22.14.0_orig/common.gypi 2025-05-01 13:48:27.848717779 +0000 +++ node-v22.14.0/common.gypi 2025-05-01 13:52:54.656717620 +0000 @@ -191,7 +191,7 @@ }], ], }, - 'cflags': [ '-O3' ], + 'cflags': [ '-Os' ], 'conditions': [ ['enable_lto=="true"', { 'cflags': ['<(lto)'], @@ -257,16 +257,16 @@ ], 'EnableFunctionLevelLinking': 'true', 'EnableIntrinsicFunctions': 'true', - 'FavorSizeOrSpeed': 1, # /Ot, favor speed over size + 'FavorSizeOrSpeed': 2, # Favor size over speed 'InlineFunctionExpansion': 2, # /Ob2, inline anything eligible 'OmitFramePointers': 'true', - 'Optimization': 3, # /Ox, full optimization + 'Optimization': 's', # optimize for size 'RuntimeLibrary': '<(MSVC_runtimeType)', 'RuntimeTypeInfo': 'false', } }, 'xcode_settings': { - 'GCC_OPTIMIZATION_LEVEL': '3', # stop gyp from defaulting to -Os + 'GCC_OPTIMIZATION_LEVEL': 's', # set gyp default to -Os }, } }, diff -durN node-v22.14.0_orig/deps/llhttp/common.gypi node-v22.14.0/deps/llhttp/common.gypi --- node-v22.14.0_orig/deps/llhttp/common.gypi 2025-05-01 13:48:27.976717779 +0000 +++ node-v22.14.0/deps/llhttp/common.gypi 2025-05-01 13:56:30.652717491 +0000 @@ -1,6 +1,6 @@ { 'target_defaults': { - 'default_configuration': 'Debug', + 'default_configuration': 'Release', 'configurations': { # TODO: hoist these out and put them somewhere common, because # RuntimeLibrary MUST MATCH across the entire project @@ -15,7 +15,7 @@ }, 'Release': { 'defines': [ 'NDEBUG' ], - 'cflags': [ '-Wall', '-Wextra', '-O3' ], + 'cflags': [ '-Wall', '-Wextra', '-Os' ], 'msvs_settings': { 'VCCLCompilerTool': { 'RuntimeLibrary': 0, # static release @@ -32,7 +32,7 @@ 'VCLibrarianTool': { }, 'VCLinkerTool': { - 'GenerateDebugInformation': 'true', + 'GenerateDebugInformation': 'false', }, }, 'conditions': [ diff -durN node-v22.14.0_orig/deps/uv/common.gypi node-v22.14.0/deps/uv/common.gypi --- node-v22.14.0_orig/deps/uv/common.gypi 2025-05-01 13:48:27.964717779 +0000 +++ node-v22.14.0/deps/uv/common.gypi 2025-05-01 14:00:56.536717333 +0000 @@ -7,7 +7,7 @@ }, 'target_defaults': { - 'default_configuration': 'Debug', + 'default_configuration': 'Release', 'configurations': { 'Debug': { 'defines': [ 'DEBUG', '_DEBUG' ], @@ -46,7 +46,7 @@ 'Release': { 'defines': [ 'NDEBUG' ], 'cflags': [ - '-O3', + '-Os', ], 'msvs_settings': { 'VCCLCompilerTool': { @@ -57,8 +57,8 @@ 'RuntimeLibrary': 2, # /MD DLL release }], ], - 'Optimization': 3, # /Ox, full optimization - 'FavorSizeOrSpeed': 1, # /Ot, favour speed over size + 'Optimization': 's', # optimize for size + 'FavorSizeOrSpeed': 2, # Favor size over speed 'InlineFunctionExpansion': 2, # /Ob2, inline anything eligible 'WholeProgramOptimization': 'true', # /GL, whole program optimization, needed for LTCG 'OmitFramePointers': 'true', diff -durN node-v22.14.0_orig/tools/msvs/msi/custom_actions/custom_actions.vcxproj node-v22.14.0/tools/msvs/msi/custom_actions/custom_actions.vcxproj --- node-v22.14.0_orig/tools/msvs/msi/custom_actions/custom_actions.vcxproj 2025-05-01 13:48:27.856717779 +0000 +++ node-v22.14.0/tools/msvs/msi/custom_actions/custom_actions.vcxproj 2025-05-01 14:06:46.280717124 +0000 @@ -124,7 +124,7 @@ msi.lib;dutil.lib;wcautil.lib;version.lib;%(AdditionalDependencies) $(PkgWixToolset_WcaUtil)\build\native\v14\x86;$(PkgWixToolset_DUtil)\build\native\v14\x86;%(AdditionalLibraryDirectories) custom_actions.def - true + false Windows @@ -143,7 +143,7 @@ msi.lib;dutil.lib;wcautil.lib;version.lib;%(AdditionalDependencies) $(PkgWixToolset_WcaUtil)\build\native\v14\ARM64;$(PkgWixToolset_DUtil)\build\native\v14\ARM64;%(AdditionalLibraryDirectories) custom_actions.def - true + false Windows @@ -162,7 +162,7 @@ msi.lib;dutil.lib;wcautil.lib;version.lib;%(AdditionalDependencies) $(PkgWixToolset_WcaUtil)\build\native\v14\x64;$(PkgWixToolset_DUtil)\build\native\v14\x64;%(AdditionalLibraryDirectories) custom_actions.def - true + false Windows @@ -186,7 +186,7 @@ msi.lib;dutil.lib;wcautil.lib;version.lib;%(AdditionalDependencies) $(PkgWixToolset_WcaUtil)\build\native\v14\x86;$(PkgWixToolset_DUtil)\build\native\v14\x86;%(AdditionalLibraryDirectories) custom_actions.def - true + false Windows true true @@ -212,7 +212,7 @@ msi.lib;dutil.lib;wcautil.lib;version.lib;%(AdditionalDependencies) $(PkgWixToolset_WcaUtil)\build\native\v14\ARM64;$(PkgWixToolset_DUtil)\build\native\v14\ARM64;%(AdditionalLibraryDirectories) custom_actions.def - true + false Windows true true @@ -238,7 +238,7 @@ msi.lib;dutil.lib;wcautil.lib;version.lib;%(AdditionalDependencies) $(PkgWixToolset_WcaUtil)\build\native\v14\x64;$(PkgWixToolset_DUtil)\build\native\v14\x64;%(AdditionalLibraryDirectories) custom_actions.def - true + false Windows true true diff -durN node-v22.14.0_orig/tools/v8_gypfiles/toolchain.gypi node-v22.14.0/tools/v8_gypfiles/toolchain.gypi --- node-v22.14.0_orig/tools/v8_gypfiles/toolchain.gypi 2025-05-01 13:48:27.860717779 +0000 +++ node-v22.14.0/tools/v8_gypfiles/toolchain.gypi 2025-05-01 14:23:16.588716534 +0000 @@ -853,11 +853,15 @@ ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd" \ or OS=="aix" or OS=="os400"', { 'cflags!': [ - '-Os', + '-O3', + '-O2', + '-O1', + '-O0', ], 'cflags': [ '-fdata-sections', '-ffunction-sections', + '-Os', ], 'conditions': [ # Don't use -O3 with sanitizers.