Changeset 48593 in vbox
- Timestamp:
- Sep 20, 2013 1:44:49 PM (12 years ago)
- svn:sync-xref-src-repo-rev:
- 89153
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Config.kmk
r48581 r48593 2212 2212 # can be no harm in just dropping them until cygwin is mp safe. 2213 2213 ifeq ($(KBUILD_HOST),win) 2214 VBOX_GCC_CHECK_CC = $(2) 2215 VBOX_GCC_CHECK_CXX = $(2) 2216 VBOX_GCC_CHECK_LD = $(2) 2217 VBOX_GCC32_CHECK_CXX = $(2) 2214 VBOX_GCC_CHECK_EX_CC = $(3) 2215 VBOX_GCC_CHECK_EX_CXX = $(3) 2216 VBOX_GCC_CHECK_EX_LD = $(3) 2217 VBOX_GCC_CHECK_CC = $(2) 2218 VBOX_GCC_CHECK_CXX = $(2) 2219 VBOX_GCC_CHECK_LD = $(2) 2220 VBOX_GCC32_CHECK_CXX = $(2) 2218 2221 else 2219 VBOX_GCC_CHECK_CC = $(shell \ 2220 if $(TOOL_$(VBOX_GCC_TOOL)_CC) $(subst -Wno-,-W,$(1)) -S -o /dev/null -xc /dev/null > /dev/null 2>&1; \ 2221 then echo "$(1)"; \ 2222 else echo "$(2)"; fi; ) 2223 2224 VBOX_GCC_CHECK_CXX = $(shell \ 2225 if $(TOOL_$(VBOX_GCC_TOOL)_CXX) $(subst -Wno-,-W,$(1)) -S -o /dev/null -xc++ /dev/null > /dev/null 2>&1; \ 2226 then echo "$(1)"; \ 2227 else echo "$(2)"; fi; ) 2228 2229 VBOX_GCC_CHECK_LD = $(shell \ 2230 if $(TOOL_$(VBOX_GCC_TOOL)_LD) -Wl,$(1) $(if $(eq $(KBUILD_HOST),darwin),-Wl$(COMMA)-u$(COMMA)start -Wl$(COMMA)-undefined$(COMMA)dynamic_lookup,) -nostdlib -o /dev/null -xc /dev/null > /dev/null 2>&1 ;\ 2231 then echo "-Wl,$(1)"; \ 2232 else echo "$(2)"; fi; ) 2233 2234 VBOX_GCC32_CHECK_CXX = $(shell \ 2235 if $(TOOL_$(VBOX_GCC32_TOOL)_CXX) $(1) -S -o /dev/null -xc++ /dev/null > /dev/null 2>&1; \ 2236 then echo "$(1)"; \ 2237 else echo "$(2)"; fi; ) 2238 endif 2239 2240 ifeq ($(KBUILD_HOST),win) 2241 # This isn't important (yet) on windows, so cook the result until 2242 # cygwin is feeling better. 2243 VBOX_GCC_VERSION := $(int-add $(int-mul 10000, 3), $(int-mul 100, 3), 3) 2222 VBOX_GCC_CHECK_EX_CC = $(shell \ 2223 if $(1) $(subst -Wno-,-W,$(2)) -S -o /dev/null -xc /dev/null > /dev/null 2>&1; then echo "$(2)"; else echo "$(3)"; fi; ) 2224 VBOX_GCC_CHECK_EX_CXX = $(shell \ 2225 if $(1) $(subst -Wno-,-W,$(2)) -S -o /dev/null -xc++ /dev/null > /dev/null 2>&1; then echo "$(2)"; else echo "$(3)"; fi; ) 2226 VBOX_GCC_CHECK_EX_LD = $(shell \ 2227 if $(1) -Wl,$(2) $(if $(eq $(KBUILD_HOST),darwin),-Wl$(COMMA)-u$(COMMA)start -Wl$(COMMA)-undefined$(COMMA)dynamic_lookup,) \ 2228 -nostdlib -o /dev/null -xc /dev/null > /dev/null 2>&1; \ 2229 then echo "-Wl,$(2)"; else echo "$(3)"; fi; ) 2230 2231 VBOX_GCC_CHECK_CC = $(call VBOX_GCC_CHECK_EX_CC, $(TOOL_$(VBOX_GCC_TOOL)_CC),$1,$2) 2232 VBOX_GCC_CHECK_CXX = $(call VBOX_GCC_CHECK_EX_CXX, $(TOOL_$(VBOX_GCC_TOOL)_CXX),$1,$2) 2233 VBOX_GCC_CHECK_LD = $(call VBOX_GCC_CHECK_EX_LD, $(TOOL_$(VBOX_GCC_TOOL)_LD),$1,$2) 2234 VBOX_GCC32_CHECK_CXX = $(call VBOX_GCC_CHECK_EX_CXX, $(TOOL_$(VBOX_GCC32_TOOL)_CXX),$1,$2) 2235 endif 2236 2237 ifeq ($(KBUILD_HOST),win) ## @todo can drop this now, we're not using cygwin. 2238 # This isn't important (yet) on windows, so cook the result until 2239 # cygwin is feeling better. 2240 VBOX_GCC_VERSION := $(int-add $(int-mul 10000, 3), $(int-mul 100, 3), 3) 2244 2241 else 2245 # This is kind of bad, the returned string needs to be re-evaluated before use. 2246 # The reason for this hack is that the windows kmk_ash cannot deal with $((1+1)). 2247 # Some versions of gcc (e.g. openSUSE11) return only major.minor on `gcc -dumpversion`. 2248 VBOX_GCC_VERSION = $(shell \ 2249 $(1) -dumpversion | $(SED_EXT) 's|\([0-9]\)\.\([0-9]\)\.\{0,1\}\([0-9]\{0,1\}\).*|$$(int-add $$(int-mul 10000, \1), $$(int-mul 100, \2), $$(firstword \3 0))|' ) 2250 endif 2242 # This is kind of bad, the returned string needs to be re-evaluated before use. 2243 # The reason for this hack is that the windows kmk_ash cannot deal with $((1+1)). 2244 # Some versions of gcc (e.g. openSUSE11) return only major.minor on `gcc -dumpversion`. 2245 VBOX_GCC_VERSION = $(shell \ 2246 $(1) -dumpversion | $(SED_EXT) 's|\([0-9]\)\.\([0-9]\)\.\{0,1\}\([0-9]\{0,1\}\).*|$$(int-add $$(int-mul 10000, \1), $$(int-mul 100, \2), $$(firstword \3 0))|' ) 2247 endif 2248 2249 # Find MinGW cross compilers for EFI on non-windows systems. We need to probe 2250 # them for supported options in the Dynamic Config.kmk section below. 2251 ifdef VBOX_WITH_EFI 2252 ifneq ($(KBUILD_HOST),win) 2253 ifndef VBOX_PATH_PREFIX_MINGW32 2254 VBOX_PATH_PREFIX_MINGW32 := $(firstword \ 2255 $(which i686-w64-mingw32-gcc) \ 2256 $(which i686-w32-mingw32-gcc) \ 2257 $(which i686-pc-mingw32-gcc) \ 2258 $(which i586-mingw32msvc-gcc) \ 2259 )# Add more variants. 2260 ifdef VBOX_PATH_PREFIX_MINGW32 2261 VBOX_PATH_PREFIX_MINGW32 := $(substr $(VBOX_PATH_PREFIX_MINGW32), 1, $(expr $(length-var VBOX_PATH_PREFIX_MINGW32) - 3)) 2262 endif 2263 endif 2264 ifndef VBOX_PATH_PREFIX_MINGW64 2265 VBOX_PATH_PREFIX_MINGW64 := $(firstword \ 2266 $(which x86_64-w64-mingw64-gcc) \ 2267 $(which x86_64-w64-mingw32-gcc) \ 2268 $(which x86_64-pc-mingw64-gcc) \ 2269 $(which x86_64-pc-mingw32-gcc) \ 2270 $(which x86_64-w32-mingw32-gcc) \ 2271 )# Add more variants. 2272 ifdef VBOX_PATH_PREFIX_MINGW64 2273 VBOX_PATH_PREFIX_MINGW64 := $(substr $(VBOX_PATH_PREFIX_MINGW64), 1, $(expr $(length-var VBOX_PATH_PREFIX_MINGW64) - 3)) 2274 endif 2275 endif 2276 if defined(VBOX_PATH_PREFIX_MINGW32) || defined(VBOX_PATH_PREFIX_MINGW64) 2277 if !defined(VBOX_PATH_PREFIX_MINGW32) 2278 VBOX_PATH_PREFIX_MINGW32 = $(VBOX_PATH_PREFIX_MINGW64) 2279 else if !defined(VBOX_PATH_PREFIX_MINGW64) 2280 VBOX_PATH_PREFIX_MINGW64 = $(VBOX_PATH_PREFIX_MINGW32) 2281 endif 2282 VBOX_EFI_TOOL_CHAIN := UNIXGCC 2283 endif 2284 endif # !win 2285 endif # VBOX_WITH_EFI 2251 2286 2252 2287 # YASM macros … … 2362 2397 $(QUIET)$(APPEND) '$@' 'VBOX_YASM_Wno-segreg-in-64bit ?= $(call VBOX_YASM_CHECK,-Wno-segreg-in-64bit,)' 2363 2398 2399 ifdef VBOX_PATH_PREFIX_MINGW32 2400 $(QUIET)$(APPEND) '$@' 'VBOX_MINGW32_Wno-array-bounds ?= $(call VBOX_GCC_CHECK_EX_CXX,$(VBOX_PATH_PREFIX_MINGW32)g++ -m32,-Wno-array-bounds,)' 2401 $(QUIET)$(APPEND) '$@' 'VBOX_MINGW32_Wno-unused-but-set-variable ?= $(call VBOX_GCC_CHECK_EX_CXX,$(VBOX_PATH_PREFIX_MINGW32)g++ -m32,-Wno-unused-but-set-variable,)' 2402 $(QUIET)$(APPEND) '$@' 'VBOX_MINGW32_Wno-maybe-uninitialized ?= $(call VBOX_GCC_CHECK_EX_CXX,$(VBOX_PATH_PREFIX_MINGW32)g++ -m32,-Wno-maybe-uninitialized,)' 2403 endif 2404 ifdef VBOX_PATH_PREFIX_MINGW64 2405 $(QUIET)$(APPEND) '$@' 'VBOX_MINGW64_Wno-array-bounds ?= $(call VBOX_GCC_CHECK_EX_CXX,$(VBOX_PATH_PREFIX_MINGW64)g++ -m64,-Wno-array-bounds,)' 2406 $(QUIET)$(APPEND) '$@' 'VBOX_MINGW64_Wno-unused-but-set-variable ?= $(call VBOX_GCC_CHECK_EX_CXX,$(VBOX_PATH_PREFIX_MINGW64)g++ -m64,-Wno-unused-but-set-variable,)' 2407 $(QUIET)$(APPEND) '$@' 'VBOX_MINGW64_Wno-maybe-uninitialized ?= $(call VBOX_GCC_CHECK_EX_CXX,$(VBOX_PATH_PREFIX_MINGW64)g++ -m64,-Wno-maybe-uninitialized,)' 2408 endif 2364 2409 $(QUIET)$(ECHO) '========= START OF $@ =========' 2365 2410 $(QUIET)$(CAT) $@
Note:
See TracChangeset
for help on using the changeset viewer.