Backed out changeset d61e206198fe (bug 1903061) for causing python failures. CLOSED TREE

This commit is contained in:
Stanca Serban 2024-06-20 09:57:23 +03:00
parent 29f4e9cacf
commit 4521510921
9 changed files with 38 additions and 32 deletions

View File

@ -403,14 +403,7 @@ def add_warning(warning, compiler=None, when=None):
# Like the warning checks above, but for general compilation flags.
@dependable
def compilation_flags():
return namespace(
cflags=[],
cxxflags=[],
host_cflags=[],
host_cxxflags=[],
cmflags=[],
cmmflags=[],
)
return namespace(cflags=[], cxxflags=[], host_cflags=[], host_cxxflags=[])
# Tests whether GCC or clang support the given compilation flag; if the flag

View File

@ -372,26 +372,6 @@ def expand_libs_list_style(c_compiler, link, linker_flags, extra_flags):
set_config("EXPAND_LIBS_LIST_STYLE", expand_libs_list_style)
# Objective-C/ Objective-C++ flags.
# ---------------------------------
@depends(compilation_flags, toolkit)
def add_cmflags(compilation_flags, toolkit):
cmflags = ["-x", "objective-c", "-fobjc-exceptions"]
cmmflags = ["-x", "objective-c++", "-fobjc-exceptions"]
compilation_flags.cmflags.extend(cmflags)
compilation_flags.cmmflags.extend(cmmflags)
if toolkit == "uikit":
uiflags = ["-fobjc-abi-version=2", "-fobjc-legacy-dispatch"]
compilation_flags.cmflags.extend(uiflags)
compilation_flags.cmmflags.extend(uiflags)
set_config("OS_COMPILE_CMFLAGS", compilation_flags.cmflags)
set_config("OS_COMPILE_CMMFLAGS", compilation_flags.cmmflags)
# Please keep these last in this file.
add_old_configure_assignment("_COMPILATION_ASFLAGS", asm_flags.asflags)
add_old_configure_assignment("_COMPILATION_HOST_ASFLAGS", asm_flags.host_asflags)

View File

@ -203,8 +203,10 @@ endif
HOST_COBJS = $(addprefix host_,$(notdir $(HOST_CSRCS:.c=.$(OBJ_SUFFIX))))
# HOST_CPPOBJS can have different extensions (eg: .cpp, .cc)
HOST_CPPOBJS = $(addprefix host_,$(notdir $(addsuffix .$(OBJ_SUFFIX),$(basename $(HOST_CPPSRCS)))))
HOST_CMOBJS = $(addprefix host_,$(notdir $(HOST_CMSRCS:.m=.$(OBJ_SUFFIX))))
HOST_CMMOBJS = $(addprefix host_,$(notdir $(HOST_CMMSRCS:.mm=.$(OBJ_SUFFIX))))
ifndef HOST_OBJS
_HOST_OBJS = $(HOST_COBJS) $(HOST_CPPOBJS)
_HOST_OBJS = $(HOST_COBJS) $(HOST_CPPOBJS) $(HOST_CMOBJS) $(HOST_CMMOBJS)
HOST_OBJS = $(strip $(_HOST_OBJS))
endif
else
@ -266,7 +268,7 @@ TAG_PROGRAM = xargs etags -a
# (moved this from config.mk so that config.mk can be included
# before the CPPSRCS are defined)
#
ifneq ($(HOST_CPPSRCS),)
ifneq ($(HOST_CPPSRCS)$(HOST_CMMSRCS),)
HOST_CPP_PROG_LINK = 1
endif
@ -556,7 +558,7 @@ define src_objdep
$(basename $3$(notdir $1)).$2: $1 $$(call mkdir_deps,$$(MDDEPDIR))
endef
$(foreach f,$(CSRCS) $(SSRCS) $(CPPSRCS) $(CMSRCS) $(CMMSRCS) $(ASFILES),$(eval $(call src_objdep,$(f),$(OBJ_SUFFIX))))
$(foreach f,$(HOST_CSRCS) $(HOST_CPPSRCS),$(eval $(call src_objdep,$(f),$(OBJ_SUFFIX),host_)))
$(foreach f,$(HOST_CSRCS) $(HOST_CPPSRCS) $(HOST_CMSRCS) $(HOST_CMMSRCS),$(eval $(call src_objdep,$(f),$(OBJ_SUFFIX),host_)))
$(foreach f,$(WASM_CSRCS) $(WASM_CPPSRCS),$(eval $(call src_objdep,$(f),wasm)))
# The Rust compiler only outputs library objects, and so we need different
@ -580,6 +582,18 @@ $(HOST_CPPOBJS):
$(HOST_CXX) $(HOST_OUTOPTION)$@ -c $(HOST_CPPFLAGS) $(HOST_CXXFLAGS) $(NSPR_CFLAGS) $<
$(call BUILDSTATUS,END_Object $@)
$(HOST_CMOBJS):
$(REPORT_BUILD_VERBOSE)
$(call BUILDSTATUS,OBJECT_FILE $@)
$(HOST_CC) $(HOST_OUTOPTION)$@ -c $(HOST_CPPFLAGS) $(HOST_CFLAGS) $(HOST_CMFLAGS) $(NSPR_CFLAGS) $<
$(call BUILDSTATUS,END_Object $@)
$(HOST_CMMOBJS):
$(REPORT_BUILD_VERBOSE)
$(call BUILDSTATUS,OBJECT_FILE $@)
$(HOST_CXX) $(HOST_OUTOPTION)$@ -c $(HOST_CPPFLAGS) $(HOST_CXXFLAGS) $(HOST_CMMFLAGS) $(NSPR_CFLAGS) $<
$(call BUILDSTATUS,END_Object $@)
$(COBJS):
$(REPORT_BUILD_VERBOSE)
$(call BUILDSTATUS,OBJECT_FILE $@)

View File

@ -764,6 +764,19 @@ HOST_LDFLAGS=`echo \
$HOST_LDFLAGS \
$_COMPILATION_HOST_LDFLAGS`
HOST_CMFLAGS="-x objective-c -fobjc-exceptions"
HOST_CMMFLAGS="-x objective-c++ -fobjc-exceptions"
OS_COMPILE_CMFLAGS="-x objective-c -fobjc-exceptions"
OS_COMPILE_CMMFLAGS="-x objective-c++ -fobjc-exceptions"
if test "$MOZ_WIDGET_TOOLKIT" = uikit; then
OS_COMPILE_CMFLAGS="$OS_COMPILE_CMFLAGS -fobjc-abi-version=2 -fobjc-legacy-dispatch"
OS_COMPILE_CMMFLAGS="$OS_COMPILE_CMMFLAGS -fobjc-abi-version=2 -fobjc-legacy-dispatch"
fi
AC_SUBST(HOST_CMFLAGS)
AC_SUBST(HOST_CMMFLAGS)
AC_SUBST(OS_COMPILE_CMFLAGS)
AC_SUBST(OS_COMPILE_CMMFLAGS)
OS_CFLAGS="$CFLAGS"
OS_CXXFLAGS="$CXXFLAGS"
OS_CPPFLAGS="$CPPFLAGS"

View File

@ -478,6 +478,7 @@ class RecursiveMakeBackend(MakeBackend):
elif isinstance(obj, HostSources):
suffix_map = {
".c": "HOST_CSRCS",
".mm": "HOST_CMMSRCS",
".cpp": "HOST_CPPSRCS",
}
variables = [suffix_map[obj.canonical_suffix]]

View File

@ -1121,7 +1121,7 @@ class TreeMetadataEmitter(LoggingMixin):
all_suffixes = list(suffix_map.keys())
varmap = dict(
SOURCES=(Sources, all_suffixes),
HOST_SOURCES=(HostSources, [".c", ".cpp"]),
HOST_SOURCES=(HostSources, [".c", ".mm", ".cpp"]),
UNIFIED_SOURCES=(UnifiedSources, [".c", ".mm", ".m", ".cpp"]),
)
# Only include a WasmSources context if there are any WASM_SOURCES.

View File

@ -20,3 +20,8 @@ HOST_SOURCES += [
HOST_SOURCES += [
"d.c",
]
HOST_SOURCES += [
"e.mm",
"f.mm",
]