@@ -136,9 +136,12 @@ void build_windows(char *compiler, char *cpp_compiler, char *cpp_linker, char *o
136136
137137 /* For all versions */
138138 for (unsigned int i = 0 ; i < sizeof (versions ) / sizeof (struct node_version ); i ++ ) {
139- run ("cl /Zc:__cplusplus /MD /W3 /D WIN32_LEAN_AND_MEAN /D \"UWS_WITH_PROXY\" /D \"LIBUS_USE_LIBUV\" /D \"LIBUS_USE_QUIC\" /I uWebSockets/uSockets/lsquic/include /I uWebSockets/uSockets/lsquic/wincompat /I uWebSockets/uSockets/boringssl/include /D \"LIBUS_USE_OPENSSL\" /std:c++20 /I uWebSockets/uSockets/src uWebSockets/uSockets/src/*.c uWebSockets/uSockets/src/crypto/sni_tree.cpp "
140- "uWebSockets/uSockets/src/eventing/*.c uWebSockets/uSockets/src/crypto/*.c /I targets/node-%s/include/node /I uWebSockets/src /EHsc "
141- "/Ox /LD /Fedist/uws_win32_%s_%s.node src/addon.cpp advapi32.lib uWebSockets/uSockets/boringssl/x64/ssl/ssl.lib uWebSockets/uSockets/boringssl/x64/crypto/crypto.lib uWebSockets/uSockets/lsquic/src/liblsquic/Debug/lsquic.lib targets/node-%s/node.lib" ,
139+ run ("clang -target x86_64-pc-windows-msvc -DWIN32_LEAN_AND_MEAN -DUWS_WITH_PROXY -DLIBUS_USE_LIBUV -DLIBUS_USE_QUIC -IuWebSockets/uSockets/lsquic/include -IuWebSockets/uSockets/lsquic/wincompat -IuWebSockets/uSockets/boringssl/include -DLIBUS_USE_OPENSSL -std=c++20 -IuWebSockets/uSockets/src "
140+ "uWebSockets/uSockets/src/*.c uWebSockets/uSockets/src/crypto/sni_tree.cpp uWebSockets/uSockets/src/eventing/*.c uWebSockets/uSockets/src/crypto/*.c -Itargets/node-%s/include/node -IuWebSockets/src "
141+ "-O2 -shared -o dist/uws_win32_%s_%s.node src/addon.cpp -ladvapi32 "
142+ "-LuWebSockets/uSockets/boringssl/x64/ssl -lssl -LuWebSockets/uSockets/boringssl/x64/crypto -lcrypto "
143+ "-LuWebSockets/uSockets/lsquic/src/liblsquic/Debug -llsquic "
144+ "-Ltargets/node-%s -lnode" ,
142145 versions [i ].name , arch , versions [i ].abi , versions [i ].name );
143146 }
144147}
@@ -194,19 +197,12 @@ int main() {
194197 ARM64 );
195198
196199#else
197- /* Linux does not cross-compile but picks whatever arch the host is on */
200+ /* Linux does not cross-compile but picks whatever arch the host is on (we run on both x64 and ARM64) */
198201 build ("clang-18" ,
199202 "clang++-18" ,
200203 "-static-libstdc++ -static-libgcc -s" ,
201204 OS ,
202205 arch );
203-
204- /* If linux we also want arm64 */
205- /*build("aarch64-linux-gnu-gcc",
206- "aarch64-linux-gnu-g++",
207- "-static-libstdc++ -static-libgcc -s",
208- OS,
209- ARM64);*/
210206#endif
211207#endif
212208
0 commit comments