Platform/Platform-specific build defines: Difference between revisions
< Platform
Jump to navigation
Jump to search
(Finish removal all of the rest of the B2G stuff and add in GeckoView) |
(→Prefs files: Add geckoview prefs file) |
||
Line 204: | Line 204: | ||
| style="background: green; color: white"|✓ | | style="background: green; color: white"|✓ | ||
| ?? | | ?? | ||
<!-- iOS --> | |||
| | |||
|- | |||
|[https://hg.mozilla.org/mozilla-central/file/tip/mobile/android/app/geckoview-prefs.js geckoview-prefs.js] | |||
<!-- Windows: Desktop --> | |||
| | |||
<!-- OS X: Desktop --> | |||
| | |||
<!-- Linux-gtk: Desktop --> | |||
| | |||
<!-- Android: Fennec, GeckoView --> | |||
| | |||
| style="background: green; color: white"|✓ | |||
<!-- iOS --> | <!-- iOS --> | ||
| | | |
Revision as of 12:07, 10 October 2018
In the Gecko code we have a bunch of preprocessor conditions that help us conditionally compile code for specific platforms. These can get confusing so here is a handy-dandy table to help you keep them straight.
OS | Windows | OS X | Linux-gtk | Android | iOS | |
---|---|---|---|---|---|---|
Product | Desktop | Desktop | Desktop | Fennec | GeckoView | iOS |
XP_WIN | ✓ | ?? | ||||
XP_DARWIN | ✓ | ?? | ✓ | |||
XP_MACOSX | ✓ | ?? | ||||
XP_IOS | ?? | ✓ | ||||
XP_UNIX | ✓ | ✓ | ✓ | ?? | ✓ | |
XP_LINUX | ✓ | ✓ | ?? | |||
ANDROID | ✓ | ?? | ||||
MOZ_WIDGET_GTK | ✓ | ?? | ||||
MOZ_WIDGET_ANDROID | ✓ | ?? | ||||
MOZ_WIDGET_UIKIT | ?? | ✓ |
Prefs files
Here is a similar table, but to see which prefs get used in which product:
OS | Windows | OS X | Linux-gtk | Android | iOS | |
---|---|---|---|---|---|---|
Product | Desktop | Desktop | Desktop | Fennec | GeckoView | iOS |
all.js | ✓ | ✓ | ✓ | ✓ | ?? | ✓ |
firefox.js | ✓ | ✓ | ✓ | ?? | ||
mobile.js | ✓ | ?? | ||||
geckoview-prefs.js | ✓ |
Reftest conditions
Here is another table that tells you what conditions are true on various platforms for use in reftest.list conditions.
OS | Windows | OS X | Linux-gtk | Android | iOS | |
---|---|---|---|---|---|---|
Product | Desktop | Desktop | Desktop | Fennec | GeckoView | iOS |
Android | ✓ | ?? | ||||
cocoaWidget | ✓ | ?? | ||||
gtkWidget | ✓ | ?? | ||||
qtWidget | ?? | |||||
winWidget | ✓ | ?? |
Mochitest conditions
Here is another table that tells you what different condition values are on various platforms for use in mochitest.ini/a11y.ini/chrome.ini/browser.ini conditions.
OS | Windows | OS X | Linux-gtk | Android | iOS | |
---|---|---|---|---|---|---|
Product | Desktop | Desktop | Desktop | Fennec | GeckoView | iOS |
os | win | mac | linux | android | ? | ?? |
toolkit | windows | cocoa | gtk2 or gtk3 | android | ?? | ?? |
buildapp | ?? | ?? | ?? | ?? | ?? | ?? |
You may also be interested in Platform/Channel-specific_build_defines