MoonchildProductions#1251 - Part 4: Core build system changes, lots of libevent/IPC junk.

This is mostly ifdefs, but as you can see, Solaris is actually a lot like Linux. They're both more SysV than BSD at core, and most of the differences have more to do with Solaris not using glibc than anything else.

I still need to audit a lot of these changes and understand why they're needed and what the alternative approaches are. After this patch, most of the core functionality needed to build Solaris is here.
This commit is contained in:
athenian200 2019-10-01 18:28:10 -05:00 • committed by Roy Tam
commit afb2e3a054
38 changed files with 682 additions and 32 deletions

View file

@ -336,6 +336,8 @@ def split_triplet(triplet):
canonical_os = canonical_kernel = 'NetBSD'
elif os.startswith('openbsd'):
canonical_os = canonical_kernel = 'OpenBSD'
elif os.startswith('solaris'):
canonical_os = canonical_kernel = 'SunOS'
else:
die('Unknown OS: %s' % os)
@ -569,6 +571,28 @@ def target_is_linux(target):
set_define('XP_LINUX', target_is_linux)
@depends(target)
def target_is_solaris(target):
if target.kernel == 'SunOS':
return True
set_define('XP_SOLARIS', target_is_solaris)
@depends(target)
def target_is_sparc(target):
if target.cpu == 'sparc':
return True
set_define('SPARC', target_is_sparc)
@depends(target)
def target_is_sparc64(target):
if target.cpu == 'sparc64':
return True
set_define('SPARC64', target_is_sparc64)
# The application/project to build
# ==============================================================
option('--enable-application', nargs=1, env='MOZ_BUILD_APP',