summaryrefslogtreecommitdiffstats
path: root/python/mozbuild
Commit message (Collapse)AuthorAgeLines
* MoonchildProductions#1251 - Part 19: Make the unpreprocessed file script ↵athenian2002019-10-21-3/+8
| | | | | | | | | | | | | | | | | | | | | | work on Solaris. https://www.tachytelic.net/2019/01/grep-recursively/ During testing, I tried simply replacing grep with ggrep, which was non-portable but worked fine. Using an environment variable with os.getenv set to 'g' also worked, but the problem with that approach is that you have to set it manually and some times the script will mess up if you don't explictly define it to an empty string for platforms that don't need it. Setting TOOLCHAIN_PREFIX to 'g' seemed to solve all of my problems except this one, and it appears to be the only non-portable use of GNU grep in the whole tree. To understand what I tried to do here, let me present with you with two commands that yield the same output on my machine: find . -name '*.xul' | xargs grep -E "#include" ggrep -E -r "#include" --include="*.xul" . I just tried to make the Python script follow the logic of those two commands, though I'm not sure how well I succeeded since I got no errors. I visualized everything this way: ggrep -E -r "<strings>" --include="<filesuffixes>" <path> find <path> -name '<filesuffixes>' | xargs grep -E "<strings>" And arranged it all accordingly to the best of my ability, though I should point out that Python is not my strong suit.
* MoonchildProductions#1251 - Part 4: Core build system changes, lots of ↵athenian2002019-10-21-0/+3
| | | | | | | | 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.
* MoonchildProductions#1251 - Part 2: Make the mozconfig loader POSIX-compliant.athenian2002019-10-21-20/+18
| | | | | | https://bugzilla.mozilla.org/show_bug.cgi?id=1360571 Solaris uses ksh as the default shell, and furthermore bash doesn't seem to support the 'local' keyword feature when invoked as sh on OpenIndiana. We could just change the script to use bash (it is an option even on Solaris), but this fix is available and Mozilla has been using it since Firefox 55 with no issues on any other platforms. It was specfically done this way to avoid any need to change existing mozconfig files, so I feel confident saying the change is totally benign and if anything the way it is now is technically a POSIX compliance issue inherited from Mozilla that we'll hit if we ever try to compile this on any Unix platform where bash isn't sh.
* Fix false positives in the preprocessor-checkerJustOff2018-12-18-1/+1
|
* Flush some more buildlog output to screen when prudent.wolfbeast2018-09-12-0/+2
|
* Shell quote environment variable values when dumping them in dump_env.pytrav902018-08-11-1/+7
| | | | The mozconfig output parsing code already (mostly) handles shell quoted strings, because that's what `set` outputs. By quoting environment variable values, we avoid a bunch of problems with "weird" values.
* Make sure the waiting message is actually displayed.wolfbeast2018-06-08-1/+2
|
* Don't search for directives that are never used aloneJustOff2018-06-02-1/+2
|
* Refine the file extensions even moreJustOff2018-06-01-1/+1
|
* Update the list of directives and file extensions for checkJustOff2018-06-01-3/+5
|
* Check if there are any unpreprocessed filesJustOff2018-06-01-0/+7
|
* Remove other gonk widget conditionals and unused files.wolfbeast2018-05-13-35/+9
| | | | Tag #288.
* Convert MOZILLA_OFFICIAL conditionals to MC_OFFICIAL where needed.wolfbeast2018-04-13-1/+1
| | | | | | | | | - `--enable-official-branding` implies `MC_OFFICIAL` (no need to specifically set it) - `--enable-official-vendor` can be used to set `MC_OFFICIAL` on builds without `--enable-official-branding` that should still be considered official release versions. - `MC_OFFICIAL` implies `--enable-release`, meaning `DEVELOPER_OPTIONS` isn't set - `MC_OFFICIAL` makes `nsXULAppInfo.getIsOfficial` return `true` - `MC_OFFICIAL` makes `AppConstants.MOZILLA_OFFICIAL` (for compatibility in extensions) and `AppConstants.MC_OFFICIAL` return `true` - Optional, for the time being: `MOZILLA_OFFICIAL` is still present in some places in case someone wants to build a Mozilla-alike official application and has the rights and necessary keys to use Mozilla-official third-party services. This must always be combined with `MC_OFFICIAL` to have a sane combination of defines. This may be removed in the future.
* Remove base conditional code for crash reporter and injector.wolfbeast2018-03-30-2/+0
|
* Get rid of link to irrelevant information after build.wolfbeast2018-03-29-4/+0
|
* Remove Rust from the tree.wolfbeast2018-03-13-552/+4
| | | | Part 4 for #58
* Remove MOZ_MULETMatt A. Tobin2018-03-01-3/+1
|
* Pick up major+minor milestone version from GRE milestone file.wolfbeast2018-02-21-3/+9
|
* Add mach installer and mach mar for Windows Installer and MAR file generationMatt A. Tobin2018-02-17-0/+18
|
* Merge branch 'master' into configurebuild-workMatt A. Tobin2018-02-04-1/+1
|\
| * Require at least GCC 4.9 to buildtrav902018-02-04-1/+1
| |
* | Use MOZ_PHOENIX instead of checking for 'browser' in MOZ_BUILD_APPMatt A. Tobin2018-02-03-1/+1
|/
* Use UTC where appropriate in python filesMatt A. Tobin2018-02-02-1/+1
|
* Preprocessor warnings should not be fatal errorsMatt A. Tobin2018-02-02-13/+6
|
* Add m-esr52 at 52.6.0Matt A. Tobin2018-02-02-0/+57244