Skip to content

Commit f850777

Browse files
committed
auto merge of #7547 : luqmana/rust/mingw64, r=yichoi
Add the x64 windows target to platform.mk and reorder some headers to fix build on mingw64. There are still some issues with building llvm but this gets us one step closer.
2 parents 3d7c1dd + 5007fb2 commit f850777

File tree

2 files changed

+29
-3
lines changed

2 files changed

+29
-3
lines changed

mk/platform.mk

+27-2
Original file line numberDiff line numberDiff line change
@@ -323,9 +323,9 @@ AR_i686-pc-mingw32=$(AR)
323323
CFG_LIB_NAME_i686-pc-mingw32=$(1).dll
324324
CFG_LIB_GLOB_i686-pc-mingw32=$(1)-*.dll
325325
CFG_LIB_DSYM_GLOB_i686-pc-mingw32=$(1)-*.dylib.dSYM
326-
CFG_GCCISH_CFLAGS_i686-pc-mingw32 := -Wall -Werror -g -march=i686
326+
CFG_GCCISH_CFLAGS_i686-pc-mingw32 := -Wall -Werror -g -m32 -march=i686 -D_WIN32_WINNT=0x0600
327327
CFG_GCCISH_CXXFLAGS_i686-pc-mingw32 := -fno-rtti
328-
CFG_GCCISH_LINK_FLAGS_i686-pc-mingw32 := -shared -fPIC -g
328+
CFG_GCCISH_LINK_FLAGS_i686-pc-mingw32 := -shared -fPIC -g -m32
329329
CFG_GCCISH_DEF_FLAG_i686-pc-mingw32 :=
330330
CFG_GCCISH_PRE_LIB_FLAGS_i686-pc-mingw32 :=
331331
CFG_GCCISH_POST_LIB_FLAGS_i686-pc-mingw32 :=
@@ -367,6 +367,31 @@ CFG_LDPATH_i586-mingw32msvc :=
367367
CFG_RUN_i586-mingw32msvc=
368368
CFG_RUN_TARG_i586-mingw32msvc=
369369

370+
# x86_64-w64-mingw32 configuration
371+
CC_x86_64-w64-mingw32=$(CC)
372+
CXX_x86_64-w64-mingw32=$(CXX)
373+
CPP_x86_64-w64-mingw32=$(CPP)
374+
AR_x86_64-w64-mingw32=$(AR)
375+
CFG_LIB_NAME_x86_64-w64-mingw32=$(1).dll
376+
CFG_LIB_GLOB_x86_64-w64-mingw32=$(1)-*.dll
377+
CFG_LIB_DSYM_GLOB_x86_64-w64-mingw32=$(1)-*.dylib.dSYM
378+
CFG_GCCISH_CFLAGS_x86_64-w64-mingw32 := -Wall -Werror -g -m64 -D_WIN32_WINNT=0x0600
379+
CFG_GCCISH_CXXFLAGS_x86_64-w64-mingw32 := -fno-rtti
380+
CFG_GCCISH_LINK_FLAGS_x86_64-w64-mingw32 := -shared -fPIC -g -m64
381+
CFG_GCCISH_DEF_FLAG_x86_64-w64-mingw32 :=
382+
CFG_GCCISH_PRE_LIB_FLAGS_x86_64-w64-mingw32 :=
383+
CFG_GCCISH_POST_LIB_FLAGS_x86_64-w64-mingw32 :=
384+
CFG_DEF_SUFFIX_x86_64-w64-mingw32 := .mingw32.def
385+
CFG_INSTALL_NAME_x86_64-w64-mingw32 =
386+
CFG_LIBUV_LINK_FLAGS_x86_64-w64-mingw32 := -lWs2_32 -lpsapi -liphlpapi
387+
CFG_EXE_SUFFIX_x86_64-w64-mingw32 := .exe
388+
CFG_WINDOWSY_x86_64-w64-mingw32 := 1
389+
CFG_UNIXY_x86_64-w64-mingw32 :=
390+
CFG_PATH_MUNGE_x86_64-w64-mingw32 :=
391+
CFG_LDPATH_x86_64-w64-mingw32 :=$(CFG_LDPATH_x86_64-w64-mingw32):$(PATH)
392+
CFG_RUN_x86_64-w64-mingw32=PATH="$(CFG_LDPATH_x86_64-w64-mingw32):$(1)" $(2)
393+
CFG_RUN_TARG_x86_64-w64-mingw32=$(call CFG_RUN_x86_64-w64-mingw32,$(HLIB$(1)_H_$(CFG_BUILD_TRIPLE)),$(2))
394+
370395
# x86_64-unknown-freebsd configuration
371396
CC_x86_64-unknown-freebsd=$(CC)
372397
CXX_x86_64-unknown-freebsd=$(CXX)

src/rt/rust_uv.cpp

+2-1
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,11 @@
1313
#include <malloc.h>
1414
#endif
1515

16+
#include "uv.h"
17+
1618
#include "rust_globals.h"
1719
#include "rust_task.h"
1820
#include "rust_log.h"
19-
#include "uv.h"
2021

2122
// extern fn pointers
2223
typedef void (*extern_async_op_cb)(uv_loop_t* loop, void* data,

0 commit comments

Comments
 (0)