@@ -36,21 +36,7 @@ CFG_GCCISH_CFLAGS += -fno-omit-frame-pointer
36
36
# embedded into the executable, so use a no-op command.
37
37
CFG_DSYMUTIL := true
38
38
39
- # Hack: not sure how to test if a file exists in make other than this
40
- OS_SUPP = $(patsubst % ,--suppressions=% ,\
41
- $(wildcard $(CFG_SRC_DIR ) src/etc/$(CFG_OSTYPE ) .supp* ) )
42
-
43
- ifneq ($(findstring mingw,$(CFG_OSTYPE ) ) ,)
44
- CFG_WINDOWSY := 1
45
- endif
46
-
47
- ifdef CFG_DISABLE_OPTIMIZE_CXX
48
- $(info cfg : disabling C++ optimization (CFG_DISABLE_OPTIMIZE_CXX))
49
- CFG_GCCISH_CFLAGS += -O0
50
- else
51
- CFG_GCCISH_CFLAGS += -O2
52
- endif
53
-
39
+ # x86_64-unknown-linux-gnu configuration
54
40
CFG_LIB_NAME_x86_64-unknown-linux-gnu =lib$(1 ) .so
55
41
CFG_LIB_GLOB_x86_64-unknown-linux-gnu =lib$(1 ) -*.so
56
42
CFG_LIB_DSYM_GLOB_x86_64-unknown-linux-gnu =lib$(1 ) -*.dylib.dSYM
@@ -62,10 +48,9 @@ CFG_GCCISH_PRE_LIB_FLAGS_x86_64-unknown-linux-gnu := -Wl,-whole-archive
62
48
CFG_GCCISH_POST_LIB_FLAGS_x86_64-unknown-linux-gnu := -Wl,-no-whole-archive -Wl,-znoexecstack
63
49
CFG_DEF_SUFFIX_x86_64-unknown-linux-gnu := .linux.def
64
50
CFG_INSTALL_NAME_x86_64-unknown-linux-gnu =
65
- CFG_UNIXY := 1
66
- CFG_LDENV := LD_LIBRARY_PATH
67
51
CFG_GCCISH_CROSS_x86_64-unknown-linux-gnu =
68
52
53
+ # x86_64-apple-darwin configuration
69
54
CFG_LIB_NAME_x86_64-apple-darwin =lib$(1 ) .dylib
70
55
CFG_LIB_GLOB_x86_64-apple-darwin =lib$(1 ) -*.dylib
71
56
CFG_LIB_DSYM_GLOB_x86_64-apple-darwin =lib$(1 ) -*.dylib.dSYM
@@ -78,10 +63,11 @@ CFG_GCCISH_POST_LIB_FLAGS_x86_64-apple-darwin :=
78
63
CFG_DEF_SUFFIX_x86_64-apple-darwin := .darwin.def
79
64
CFG_INSTALL_NAME_x86_64-apple-darwin = -Wl,-install_name,@rpath/$(1 )
80
65
66
+ # arm-unknown-android configuration
81
67
CFG_LIB_NAME_arm-unknown-android =lib$(1 ) .so
82
68
CFG_LIB_GLOB_arm-unknown-android =lib$(1 ) -*.so
83
69
CFG_LIB_DSYM_GLOB_arm-unknown-android =lib$(1 ) -*.dylib.dSYM
84
- CFG_GCCISH_CFLAGS_arm-unknown-android := -fPIC - Wall -g -D__arm__ -DANDROID -D__ANDROID__
70
+ CFG_GCCISH_CFLAGS_arm-unknown-android := -Wall -g -fPIC -D__arm__ -DANDROID -D__ANDROID__
85
71
CFG_GCCISH_CXXFLAGS_arm-unknown-android := -fno-rtti
86
72
CFG_GCCISH_LINK_FLAGS_arm-unknown-android := -shared -fPIC -ldl -g -lm -lsupc++ -lgnustl_shared
87
73
CFG_GCCISH_DEF_FLAG_arm-unknown-android := -Wl,--export-dynamic,--dynamic-list=
@@ -91,6 +77,51 @@ CFG_DEF_SUFFIX_arm-unknown-android := .android.def
91
77
CFG_INSTALL_NAME_arm-unknown-android =
92
78
CFG_GCCISH_CROSS_arm-unknown-android = $(CFG_CROSS_PREFIX_arm )
93
79
80
+ # i686-pc-mingw32 configuration
81
+ CFG_LIB_NAME_i686-pc-mingw32 =lib$(1 ) .dll
82
+ CFG_LIB_GLOB_i686-pc-mingw32 =lib$(1 ) -*.dll
83
+ CFG_LIB_DSYM_GLOB_i686-pc-mingw32 =lib$(1 ) -*.dylib.dSYM
84
+ CFG_GCCISH_CFLAGS_i686-pc-mingw32 := -Wall -Werror -g -march=i686
85
+ CFG_GCCISH_CXXFLAGS_i686-pc-mingw32 := -fno-rtti
86
+ CFG_GCCISH_LINK_FLAGS_i686-pc-mingw32 := -shared -fPIC -g
87
+ CFG_GCCISH_DEF_FLAG_i686-pc-mingw32 :=
88
+ CFG_GCCISH_PRE_LIB_FLAGS_i686-pc-mingw32 :=
89
+ CFG_GCCISH_POST_LIB_FLAGS_i686-pc-mingw32 :=
90
+ CFG_DEF_SUFFIX_i686-pc-mingw32 := .def
91
+ CFG_INSTALL_NAME_i686-pc-mingw32 =
92
+ CFG_GCCISH_CROSS_i686-pc-mingw32 =
93
+
94
+ # Hack: not sure how to test if a file exists in make other than this
95
+ OS_SUPP = $(patsubst % ,--suppressions=% ,\
96
+ $(wildcard $(CFG_SRC_DIR ) src/etc/$(CFG_OSTYPE ) .supp* ) )
97
+
98
+ ifneq ($(findstring mingw,$(CFG_OSTYPE ) ) ,)
99
+ CFG_WINDOWSY := 1
100
+ endif
101
+ ifneq ($(findstring linux,$(CFG_OSTYPE ) ) ,)
102
+ CFG_UNIXY := 1
103
+ endif
104
+ ifneq ($(findstring darwin,$(CFG_OSTYPE ) ) ,)
105
+ CFG_UNIXY := 1
106
+ endif
107
+
108
+ ifdef CFG_DISABLE_OPTIMIZE_CXX
109
+ $(info cfg : disabling C++ optimization (CFG_DISABLE_OPTIMIZE_CXX))
110
+ CFG_GCCISH_CFLAGS += -O0
111
+ else
112
+ CFG_GCCISH_CFLAGS += -O2
113
+ endif
114
+
115
+ CFG_TESTLIB =$(CFG_BUILD_DIR ) /$(2 ) /$(strip \
116
+ $(if $(findstring stage0,$(1 ) ) , \
117
+ stage0/$(CFG_LIBDIR ) , \
118
+ $(if $(findstring stage1,$(1 ) ) , \
119
+ stage1/$(CFG_LIBDIR ) , \
120
+ $(if $(findstring stage2,$(1 ) ) , \
121
+ stage2/$(CFG_LIBDIR ) , \
122
+ $(if $(findstring stage3,$(1 ) ) , \
123
+ stage3/$(CFG_LIBDIR ) , \
124
+ ) ) ) ) ) /rustc/$(CFG_HOST_TRIPLE ) /$(CFG_LIBDIR )
94
125
95
126
ifneq ($(findstring linux,$(CFG_OSTYPE ) ) ,)
96
127
# -znoexecstack is here because librt is for some reason being created
@@ -123,30 +154,26 @@ ifdef CFG_UNIXY
123
154
CFG_RUN_TARG =$(call CFG_RUN,,$(2 ) )
124
155
CFG_RUN_TEST =$(call CFG_RUN,,$(CFG_VALGRIND ) $(1 ) )
125
156
CFG_LIBUV_LINK_FLAGS =
126
- ifdef CFG_FBSD
127
- CFG_LIBUV_LINK_FLAGS =-lpthread -lkvm
128
- endif
129
157
130
- # FIXME: This is surely super broken
131
- # ifdef CFG_ENABLE_MINGW_CROSS
132
- # CFG_WINDOWSY := 1
133
- # CFG_INFO := $(info cfg: mingw-cross)
134
- # CFG_GCCISH_CROSS := i586-mingw32msvc-
135
- # ifdef CFG_VALGRIND
136
- # CFG_VALGRIND += wine
137
- # endif
138
-
139
- # CFG_GCCISH_CFLAGS := -march=i586
140
- # CFG_GCCISH_PRE_LIB_FLAGS :=
141
- # CFG_GCCISH_POST_LIB_FLAGS :=
142
- # CFG_GCCISH_DEF_FLAG :=
143
- # CFG_GCCISH_LINK_FLAGS := -shared
144
-
145
- # ifeq ($(CFG_CPUTYPE), x86_64)
146
- # CFG_GCCISH_CFLAGS += -m32
147
- # CFG_GCCISH_LINK_FLAGS += -m32
148
- # endif
149
- # endif
158
+ ifdef CFG_ENABLE_MINGW_CROSS
159
+ CFG_WINDOWSY := 1
160
+ CFG_INFO := $(info cfg: mingw-cross)
161
+ CFG_GCCISH_CROSS := i586-mingw32msvc-
162
+ ifdef CFG_VALGRIND
163
+ CFG_VALGRIND += wine
164
+ endif
165
+
166
+ CFG_GCCISH_CFLAGS := -march=i586
167
+ CFG_GCCISH_PRE_LIB_FLAGS :=
168
+ CFG_GCCISH_POST_LIB_FLAGS :=
169
+ CFG_GCCISH_DEF_FLAG :=
170
+ CFG_GCCISH_LINK_FLAGS := -shared
171
+
172
+ ifeq ($(CFG_CPUTYPE), x86_64)
173
+ CFG_GCCISH_CFLAGS += -m32
174
+ CFG_GCCISH_LINK_FLAGS += -m32
175
+ endif
176
+ endif
150
177
ifdef CFG_VALGRIND
151
178
CFG_VALGRIND += --error-exitcode=100 \
152
179
--quiet \
@@ -161,48 +188,28 @@ ifdef CFG_UNIXY
161
188
endif
162
189
endif
163
190
164
-
165
191
ifdef CFG_WINDOWSY
166
192
CFG_INFO := $(info cfg: windows-y environment)
167
193
168
194
CFG_EXE_SUFFIX := .exe
169
- CFG_LIB_NAME =$(1 ) .dll
170
- CFG_LIB_GLOB =$(1 ) -*.dll
171
- CFG_DEF_SUFFIX := .def
172
195
ifdef MSYSTEM
173
196
CFG_LDPATH :=$(CFG_LDPATH ) :$$PATH
174
197
CFG_RUN=PATH ="$(CFG_LDPATH ) :$(1 ) " $(2 )
175
198
else
176
199
CFG_LDPATH :=
177
200
CFG_RUN =$(2 )
178
201
endif
179
-
180
- CFG_TESTLIB =$(CFG_BUILD_DIR ) /$(2 ) /$(strip \
181
- $(if $(findstring stage0,$(1 ) ) , \
182
- stage0/$(CFG_LIBDIR ) , \
183
- $(if $(findstring stage1,$(1 ) ) , \
184
- stage1/$(CFG_LIBDIR ) , \
185
- $(if $(findstring stage2,$(1 ) ) , \
186
- stage2/$(CFG_LIBDIR ) , \
187
- $(if $(findstring stage3,$(1 ) ) , \
188
- stage3/$(CFG_LIBDIR ) , \
189
- ) ) ) ) ) /rustc/$(CFG_BUILD_TRIPLE ) /$(CFG_LIBDIR )
190
-
191
- CFG_RUN_TARG =$(call CFG_RUN,$(HLIB$(1 ) _H_$(CFG_BUILD_TRIPLE ) ) ,$(2 ) )
202
+ CFG_RUN_TARG =$(call CFG_RUN,$(HLIB$(1 ) _H_$(CFG_HOST_TRIPLE ) ) ,$(2 ) )
192
203
CFG_RUN_TEST =$(call CFG_RUN,$(call CFG_TESTLIB,$(1 ) ,$(3 ) ) ,$(1 ) )
193
204
CFG_LIBUV_LINK_FLAGS =-lWs2_32 -lpsapi -liphlpapi
194
205
195
206
ifndef CFG_ENABLE_MINGW_CROSS
196
207
CFG_PATH_MUNGE := $(strip perl -i.bak -p \
197
208
-e 's@\\(\S) @/\1@go;' \
198
209
-e 's@^/([a-zA-Z])/@\1:/@o;')
199
- CFG_GCCISH_CFLAGS += -march=i686
200
- CFG_GCCISH_LINK_FLAGS += -shared -fPIC
201
210
endif
202
- CFG_INSTALL_NAME =
203
211
endif
204
212
205
-
206
213
CFG_INFO := $(info cfg: using $(CFG_C_COMPILER ) )
207
214
ifeq ($(CFG_C_COMPILER ) ,clang)
208
215
ifeq ($(origin CC),default)
0 commit comments