Hi all,

Since around Firefox 49, I've had trouble cross compiling Firefox using 
mingw-w64 and GCC. With the environment set up properly, I get an error log as 
follows:

 0:08.44 checking for target system type... x86_64-w64-mingw32
 0:08.45 checking whether cross compiling... yes
 0:08.46 checking for pkg_config... /usr/local/bin/pkg-config
 0:08.48 checking for pkg-config version... 0.29.1
 0:08.49 checking for tar... /usr/local/bin/gtar
 0:08.49 checking for unzip... /usr/bin/unzip
 0:08.49 checking for zip... /usr/bin/zip
 0:08.49 checking for yasm... /usr/local/bin/yasm
 0:08.51 checking yasm version... 1.3.0
 0:08.51 checking for the target C compiler... 
/usr/local/Cellar/mingw-w64/5.0.0/bin/x86_64-w64-mingw32-gcc
 0:08.66 checking whether the target C compiler can be used...
 0:08.66 DEBUG: <truncated - see config.log for full output>
 0:08.66 DEBUG: | %KERNEL Linux
 0:08.66 DEBUG: | #elif _WIN32 || __CYGWIN__
 0:08.66 DEBUG: | %KERNEL WINNT
 0:08.66 DEBUG: | #elif __NetBSD__
 0:08.66 DEBUG: | %KERNEL NetBSD
 0:08.66 DEBUG: | #elif __APPLE__
 0:08.66 DEBUG: | %KERNEL Darwin
 0:08.66 DEBUG: | #endif
 0:08.66 DEBUG: | #if _MSC_VER || __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
 0:08.66 DEBUG: | %ENDIANNESS little
 0:08.66 DEBUG: | #elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
 0:08.66 DEBUG: | %ENDIANNESS big
 0:08.66 DEBUG: | #endif
 0:08.66 DEBUG: Executing: 
`/usr/local/Cellar/mingw-w64/5.0.0/bin/x86_64-w64-mingw32-gcc -E 
/var/folders/g3/8j6q4lrd2vqd377bmwcxbq3m0000gn/T/conftest.mCmdqz.c`
 0:08.66 DEBUG: COMPILER = gcc
 0:08.67 DEBUG: VERSION = 6.2.0
 0:08.67 DEBUG: STDC_VERSION = 201112L
 0:08.67 DEBUG: CPU = x86_64
 0:08.67 DEBUG: KERNEL = 1
 0:08.67 DEBUG: ENDIANNESS = little
 0:08.67 Traceback (most recent call last):
 0:08.67   File "/Users/alex/gecko-dev/configure.py", line 94, in <module>
 0:08.67     sys.exit(main(sys.argv))
 0:08.67   File "/Users/alex/gecko-dev/configure.py", line 22, in main
 0:08.67     sandbox.run(os.path.join(os.path.dirname(__file__), 
'moz.configure'))
 0:08.67   File 
"/Users/alex/gecko-dev/python/mozbuild/mozbuild/configure/__init__.py", line 
260, in run
 0:08.67     func(*args)
 0:08.67   File 
"/Users/alex/gecko-dev/python/mozbuild/mozbuild/configure/__init__.py", line 
302, in _value_for
 0:08.67     return self._value_for_depends(obj)
 0:08.67   File "/Users/alex/gecko-dev/python/mozbuild/mozbuild/util.py", line 
924, in method_call
 0:08.67     cache[args] = self.func(instance, *args)
 0:08.67   File 
"/Users/alex/gecko-dev/python/mozbuild/mozbuild/configure/__init__.py", line 
329, in _value_for_depends
 0:08.67     return func(*resolved_args)
 0:08.67   File 
"/Users/alex/gecko-dev/python/mozbuild/mozbuild/configure/__init__.py", line 
773, in wrapped
 0:08.67     return new_func(*args, **kwargs)
 0:08.67   File 
"/Users/alex/gecko-dev/python/mozbuild/mozbuild/configure/__init__.py", line 
518, in wrapper
 0:08.67     ret = template(*args, **kwargs)
 0:08.67   File "/Users/alex/gecko-dev/build/moz.configure/checks.configure", 
line 53, in wrapped
 0:08.67     ret = func(*args, **kwargs)
 0:08.67   File 
"/Users/alex/gecko-dev/python/mozbuild/mozbuild/configure/__init__.py", line 
773, in wrapped
 0:08.67     return new_func(*args, **kwargs)
 0:08.67   File 
"/Users/alex/gecko-dev/build/moz.configure/toolchain.configure", line 631, in 
valid_compiler
 0:08.67     host_or_target)
 0:08.67   File 
"/Users/alex/gecko-dev/python/mozbuild/mozbuild/configure/__init__.py", line 
773, in wrapped
 0:08.67     return new_func(*args, **kwargs)
 0:08.67   File 
"/Users/alex/gecko-dev/build/moz.configure/toolchain.configure", line 365, in 
check_compiler
 0:08.67     if not info.kernel or info.kernel != target.kernel:
 0:08.67   File "/Users/alex/gecko-dev/python/mozbuild/mozbuild/util.py", line 
1173, in __ne__
 0:08.67     return not (self == other)
 0:08.67   File "/Users/alex/gecko-dev/python/mozbuild/mozbuild/util.py", line 
1169, in __eq__
 0:08.67     % ', '.join("'%s'" % v for v in self.POSSIBLE_VALUES))
 0:08.67 mozbuild.util.EnumStringComparisonError: Can only compare with 
'Darwin', 'DragonFly', 'FreeBSD', 'kFreeBSD', 'Linux', 'NetBSD', 'OpenBSD', 
'WINNT'
 0:08.69 *** Fix above errors and then restart with               
"/Applications/Xcode.app/Contents/Developer/usr/bin/make -f client.mk build"
 0:08.69 make[2]: *** [configure] Error 1
 0:08.69 make[1]: *** [/Users/alex/gecko-dev/objdir/Makefile] Error 2
 0:08.69 make: *** [build] Error 2

It doesn't matter if the host is Linux, macOS or MSYS2, the exact same error 
happens. Firefox 45 cross compiles fine, so I'm assuming it's to do with the 
new build system changes. Could anyone with a bit more knowledge on the changes 
shed some light on what could possibly be happening?
_______________________________________________
dev-builds mailing list
dev-builds@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-builds

Reply via email to