mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-09 11:25:00 +00:00
Merge mozilla-central and inbound
This commit is contained in:
commit
4f7dd51a89
2
CLOBBER
2
CLOBBER
@ -18,4 +18,4 @@
|
||||
# Modifying this file will now automatically clobber the buildbot machines \o/
|
||||
#
|
||||
|
||||
Bug 922160 needs a clobber due to WebIDL binding dependency issues (bug 928195).
|
||||
Bug 914270 needs a clobber since moving variables to moz.build always requires a clobber (bug 852814)
|
||||
|
@ -11,7 +11,7 @@ interface nsIAccessible;
|
||||
/**
|
||||
* This interface gives access to an accessible's set of relations.
|
||||
*/
|
||||
[scriptable, uuid(9f85fc0d-2969-48e6-b822-68140f7e5770)]
|
||||
[scriptable, uuid(55b308c4-2ae4-46bc-b4cd-4d4370e0a660)]
|
||||
interface nsIAccessibleRelation : nsISupports
|
||||
{
|
||||
/**
|
||||
@ -109,6 +109,21 @@ interface nsIAccessibleRelation : nsISupports
|
||||
*/
|
||||
const unsigned long RELATION_DEFAULT_BUTTON = 0x10;
|
||||
|
||||
/**
|
||||
* The target object is the containing document object.
|
||||
*/
|
||||
const unsigned long RELATION_CONTAINING_DOCUMENT = 0x11;
|
||||
|
||||
/**
|
||||
* The target object is the topmost containing document object in the tab pane.
|
||||
*/
|
||||
const unsigned long RELATION_CONTAINING_TAB_PANE = 0x12;
|
||||
|
||||
/**
|
||||
* The target object is the containing application object.
|
||||
*/
|
||||
const unsigned long RELATION_CONTAINING_APPLICATION = 0x14;
|
||||
|
||||
/**
|
||||
* Returns the type of the relation.
|
||||
*/
|
||||
|
@ -109,7 +109,27 @@ MOZ_BEGIN_ENUM_CLASS(RelationType)
|
||||
*/
|
||||
DEFAULT_BUTTON = 0x10,
|
||||
|
||||
LAST = DEFAULT_BUTTON
|
||||
/**
|
||||
* The target object is the containing document object.
|
||||
*/
|
||||
CONTAINING_DOCUMENT = 0x11,
|
||||
|
||||
/**
|
||||
* The target object is the topmost containing document object in the tab pane.
|
||||
*/
|
||||
CONTAINING_TAB_PANE = 0x12,
|
||||
|
||||
/**
|
||||
* The target object is the containing window object.
|
||||
*/
|
||||
CONTAINING_WINDOW = 0x13,
|
||||
|
||||
/**
|
||||
* The target object is the containing application object.
|
||||
*/
|
||||
CONTAINING_APPLICATION = 0x14,
|
||||
|
||||
LAST = CONTAINING_APPLICATION
|
||||
|
||||
MOZ_END_ENUM_CLASS(RelationType)
|
||||
|
||||
|
@ -110,3 +110,21 @@ RELATIONTYPE(DEFAULT_BUTTON,
|
||||
ATK_RELATION_NULL,
|
||||
NAVRELATION_DEFAULT_BUTTON,
|
||||
IA2_RELATION_NULL)
|
||||
|
||||
RELATIONTYPE(CONTAINING_DOCUMENT,
|
||||
"containing document",
|
||||
ATK_RELATION_NULL,
|
||||
NAVRELATION_CONTAINING_DOCUMENT,
|
||||
IA2_RELATION_CONTAINING_DOCUMENT)
|
||||
|
||||
RELATIONTYPE(CONTAINING_TAB_PANE,
|
||||
"containing tab pane",
|
||||
ATK_RELATION_NULL,
|
||||
NAVRELATION_CONTAINING_TAB_PANE,
|
||||
IA2_RELATION_CONTAINING_TAB_PANE)
|
||||
|
||||
RELATIONTYPE(CONTAINING_APPLICATION,
|
||||
"containing application",
|
||||
ATK_RELATION_NULL,
|
||||
NAVRELATION_CONTAINING_APPLICATION,
|
||||
IA2_RELATION_CONTAINING_APPLICATION)
|
||||
|
@ -13,6 +13,8 @@
|
||||
#include "nsAccUtils.h"
|
||||
#include "nsAccessibleRelation.h"
|
||||
#include "nsAccessibilityService.h"
|
||||
#include "ApplicationAccessible.h"
|
||||
#include "nsCoreUtils.h"
|
||||
#include "nsIAccessibleRelation.h"
|
||||
#include "nsIAccessibleRole.h"
|
||||
#include "nsEventShell.h"
|
||||
@ -2180,6 +2182,33 @@ Accessible::RelationByType(RelationType aType)
|
||||
return Relation();
|
||||
}
|
||||
|
||||
case RelationType::CONTAINING_DOCUMENT:
|
||||
return Relation(mDoc);
|
||||
|
||||
case RelationType::CONTAINING_TAB_PANE: {
|
||||
nsCOMPtr<nsIDocShell> docShell =
|
||||
nsCoreUtils::GetDocShellFor(GetNode());
|
||||
if (docShell) {
|
||||
// Walk up the parent chain without crossing the boundary at which item
|
||||
// types change, preventing us from walking up out of tab content.
|
||||
nsCOMPtr<nsIDocShellTreeItem> root;
|
||||
docShell->GetSameTypeRootTreeItem(getter_AddRefs(root));
|
||||
if (root) {
|
||||
// If the item type is typeContent, we assume we are in browser tab
|
||||
// content. Note, this includes content such as about:addons,
|
||||
// for consistency.
|
||||
int32_t itemType = 0;
|
||||
root->GetItemType(&itemType);
|
||||
if (itemType == nsIDocShellTreeItem::typeContent)
|
||||
return Relation(nsAccUtils::GetDocAccessibleFor(root));
|
||||
}
|
||||
}
|
||||
return Relation();
|
||||
}
|
||||
|
||||
case RelationType::CONTAINING_APPLICATION:
|
||||
return Relation(ApplicationAcc());
|
||||
|
||||
default:
|
||||
return Relation();
|
||||
}
|
||||
@ -2214,7 +2243,10 @@ Accessible::GetRelations(nsIArray **aRelations)
|
||||
nsIAccessibleRelation::RELATION_EMBEDDED_BY,
|
||||
nsIAccessibleRelation::RELATION_POPUP_FOR,
|
||||
nsIAccessibleRelation::RELATION_PARENT_WINDOW_OF,
|
||||
nsIAccessibleRelation::RELATION_DEFAULT_BUTTON
|
||||
nsIAccessibleRelation::RELATION_DEFAULT_BUTTON,
|
||||
nsIAccessibleRelation::RELATION_CONTAINING_DOCUMENT,
|
||||
nsIAccessibleRelation::RELATION_CONTAINING_TAB_PANE,
|
||||
nsIAccessibleRelation::RELATION_CONTAINING_APPLICATION
|
||||
};
|
||||
|
||||
for (uint32_t idx = 0; idx < ArrayLength(relationTypes); idx++) {
|
||||
|
@ -202,7 +202,10 @@ protected:
|
||||
NAVRELATION_DEFAULT_BUTTON = 0x100d,
|
||||
NAVRELATION_DESCRIBED_BY = 0x100e,
|
||||
NAVRELATION_DESCRIPTION_FOR = 0x100f,
|
||||
NAVRELATION_NODE_PARENT_OF = 0x1010
|
||||
NAVRELATION_NODE_PARENT_OF = 0x1010,
|
||||
NAVRELATION_CONTAINING_DOCUMENT = 0x1011,
|
||||
NAVRELATION_CONTAINING_TAB_PANE = 0x1012,
|
||||
NAVRELATION_CONTAINING_APPLICATION = 0x1014
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -11,6 +11,7 @@
|
||||
#include "DocAccessible.h"
|
||||
#include "nsAccUtils.h"
|
||||
#include "nsCoreUtils.h"
|
||||
#include "Relation.h"
|
||||
#include "uiaRawElmProvider.h"
|
||||
|
||||
#include "mozilla/Preferences.h"
|
||||
@ -60,33 +61,12 @@ ServiceProvider::QueryService(REFGUID aGuidService, REFIID aIID,
|
||||
if (aIID != IID_IAccessible)
|
||||
return E_NOINTERFACE;
|
||||
|
||||
nsCOMPtr<nsIDocShell> docShell =
|
||||
nsCoreUtils::GetDocShellFor(mAccessible->GetNode());
|
||||
if (!docShell)
|
||||
return E_UNEXPECTED;
|
||||
|
||||
// Walk up the parent chain without crossing the boundary at which item
|
||||
// types change, preventing us from walking up out of tab content.
|
||||
nsCOMPtr<nsIDocShellTreeItem> root;
|
||||
docShell->GetSameTypeRootTreeItem(getter_AddRefs(root));
|
||||
if (!root)
|
||||
return E_UNEXPECTED;
|
||||
|
||||
|
||||
// If the item type is typeContent, we assume we are in browser tab content.
|
||||
// Note this includes content such as about:addons, for consistency.
|
||||
int32_t itemType;
|
||||
root->GetItemType(&itemType);
|
||||
if (itemType != nsIDocShellTreeItem::typeContent)
|
||||
Relation rel = mAccessible->RelationByType(RelationType::CONTAINING_TAB_PANE);
|
||||
AccessibleWrap* tabDoc = static_cast<AccessibleWrap*>(rel.Next());
|
||||
if (!tabDoc)
|
||||
return E_NOINTERFACE;
|
||||
|
||||
// Make sure this is a document.
|
||||
DocAccessible* docAcc = nsAccUtils::GetDocAccessibleFor(root);
|
||||
if (!docAcc)
|
||||
return E_UNEXPECTED;
|
||||
|
||||
*aInstancePtr = static_cast<IAccessible*>(docAcc);
|
||||
|
||||
*aInstancePtr = static_cast<IAccessible*>(tabDoc);
|
||||
(reinterpret_cast<IUnknown*>(*aInstancePtr))->AddRef();
|
||||
return S_OK;
|
||||
}
|
||||
|
@ -18,6 +18,9 @@ const RELATION_NODE_PARENT_OF = nsIAccessibleRelation.RELATION_NODE_PARENT_OF;
|
||||
const RELATION_PARENT_WINDOW_OF = nsIAccessibleRelation.RELATION_PARENT_WINDOW_OF;
|
||||
const RELATION_POPUP_FOR = nsIAccessibleRelation.RELATION_POPUP_FOR;
|
||||
const RELATION_SUBWINDOW_OF = nsIAccessibleRelation.RELATION_SUBWINDOW_OF;
|
||||
const RELATION_CONTAINING_DOCUMENT = nsIAccessibleRelation.RELATION_CONTAINING_DOCUMENT;
|
||||
const RELATION_CONTAINING_TAB_PANE = nsIAccessibleRelation.RELATION_CONTAINING_TAB_PANE;
|
||||
const RELATION_CONTAINING_APPLICATION = nsIAccessibleRelation.RELATION_CONTAINING_APPLICATION;
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// General
|
||||
|
@ -167,6 +167,11 @@
|
||||
testRelation("legend", RELATION_LABEL_FOR, "fieldset");
|
||||
testRelation("fieldset", RELATION_LABELLED_BY, "legend");
|
||||
|
||||
// containing relations
|
||||
testRelation("control1_1", RELATION_CONTAINING_DOCUMENT, document);
|
||||
testRelation("control1_1", RELATION_CONTAINING_TAB_PANE, getTabDocAccessible("control1_1"));
|
||||
testRelation("control1_1", RELATION_CONTAINING_APPLICATION, getApplicationAccessible());
|
||||
|
||||
// finish test
|
||||
SimpleTest.finish();
|
||||
}
|
||||
|
@ -2,7 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
USE_STATIC_LIBS = 1
|
||||
|
||||
LOCAL_INCLUDES = -I$(srcdir)/../build
|
||||
|
@ -16,3 +16,4 @@ SOURCES += [
|
||||
|
||||
LIBRARY_NAME = 'browserabout_s'
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2,7 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
USE_STATIC_LIBS = 1
|
||||
|
||||
LOCAL_INCLUDES = -I$(srcdir)/../build
|
||||
|
@ -19,3 +19,5 @@ LIBRARY_NAME = 'browserdir_s'
|
||||
XPCSHELL_TESTS_MANIFESTS += [
|
||||
'tests/unit/xpcshell.ini',
|
||||
]
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2,7 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
USE_STATIC_LIBS = 1
|
||||
|
||||
DEFINES += \
|
||||
|
@ -22,3 +22,4 @@ EXTRA_PP_COMPONENTS += [
|
||||
|
||||
LIBRARY_NAME = 'browser_feeds_s'
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2,7 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
USE_STATIC_LIBS = 1
|
||||
|
||||
|
||||
|
@ -42,3 +42,4 @@ EXTRA_PP_JS_MODULES += [
|
||||
'MigrationUtils.jsm',
|
||||
]
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -3,7 +3,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
USE_STATIC_LIBS = 1
|
||||
|
||||
|
||||
|
@ -26,3 +26,5 @@ EXTRA_COMPONENTS += [
|
||||
'nsSetDefaultBrowser.js',
|
||||
'nsSetDefaultBrowser.manifest',
|
||||
]
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -3,7 +3,6 @@
|
||||
# You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
MODULES = stlport
|
||||
FORCE_STATIC_LIB = 1
|
||||
STL_FLAGS =
|
||||
|
||||
# Force to build a static library, instead of a fake library, without
|
||||
|
@ -6,3 +6,4 @@
|
||||
|
||||
LIBRARY_NAME = 'stlport_static'
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2,7 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||||
# You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB= 1
|
||||
STL_FLAGS =
|
||||
NO_EXPAND_LIBS = 1
|
||||
NO_PROFILE_GUIDED_OPTIMIZE = 1
|
||||
|
@ -16,3 +16,4 @@ if CONFIG['MOZ_LIBSTDCXX_HOST_VERSION']:
|
||||
'stdc++compat.cpp',
|
||||
]
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -41,6 +41,7 @@ _MOZBUILD_EXTERNAL_VARIABLES := \
|
||||
DIRS \
|
||||
EXTRA_PP_COMPONENTS \
|
||||
EXTRA_PP_JS_MODULES \
|
||||
FORCE_STATIC_LIB \
|
||||
GTEST_CMMSRCS \
|
||||
GTEST_CPPSRCS \
|
||||
GTEST_CSRCS \
|
||||
|
@ -9145,7 +9145,10 @@ MOZ_ARG_WITH_STRING(intl-api,
|
||||
])
|
||||
if test -z "$WITH_INTL"; then
|
||||
if test "$MOZ_BUILD_APP" = "browser"; then
|
||||
WITH_INTL="--with-intl-api"
|
||||
# Don't build the Intl API til we can update ICU (bug 924839). Don't take
|
||||
# the smaller step of building but not exposing it, either, as we also
|
||||
# don't want dead code in shipping builds.
|
||||
WITH_INTL="--without-intl-api"
|
||||
else
|
||||
# Internationalization isn't built or exposed by default in non-desktop
|
||||
# builds. Bugs to enable:
|
||||
|
@ -986,7 +986,6 @@ CSPSourceList.fromString = function(aStr, aCSPRep, self, enforceSelfChecks) {
|
||||
// if a source is a *, then we can permit all sources
|
||||
if (src.permitAll) {
|
||||
slObj._permitAllSources = true;
|
||||
return slObj;
|
||||
} else {
|
||||
slObj._sources.push(src);
|
||||
}
|
||||
|
20
content/base/test/csp/file_CSP_bug909029_none.html
Normal file
20
content/base/test/csp/file_CSP_bug909029_none.html
Normal file
@ -0,0 +1,20 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<!-- file_CSP.sjs mocks a resource load -->
|
||||
<link rel='stylesheet' type='text/css'
|
||||
href='file_CSP.sjs?testid=noneExternalStylesBlocked&type=text/css' />
|
||||
</head>
|
||||
<body>
|
||||
<p id="inline-style">This should be green</p>
|
||||
<p id="inline-script">This should be black</p>
|
||||
<style>
|
||||
p#inline-style { color:rgb(0, 128, 0); }
|
||||
</style>
|
||||
<script>
|
||||
// Use inline script to set a style attribute
|
||||
document.getElementById("inline-script").style.color = "rgb(0, 128, 0)";
|
||||
</script>
|
||||
<img src="file_CSP.sjs?testid=noneExternalImgLoaded&type=img/png" />
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1 @@
|
||||
Content-Security-Policy: default-src * ; style-src 'none' 'unsafe-inline';
|
19
content/base/test/csp/file_CSP_bug909029_star.html
Normal file
19
content/base/test/csp/file_CSP_bug909029_star.html
Normal file
@ -0,0 +1,19 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<link rel='stylesheet' type='text/css'
|
||||
href='file_CSP.sjs?testid=starExternalStylesLoaded&type=text/css' />
|
||||
</head>
|
||||
<body>
|
||||
<p id="inline-style">This should be green</p>
|
||||
<p id="inline-script">This should be black</p>
|
||||
<style>
|
||||
p#inline-style { color:rgb(0, 128, 0); }
|
||||
</style>
|
||||
<script>
|
||||
// Use inline script to set a style attribute
|
||||
document.getElementById("inline-script").style.color = "rgb(0, 128, 0)";
|
||||
</script>
|
||||
<img src="file_CSP.sjs?testid=starExternalImgLoaded&type=img/png" />
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1 @@
|
||||
Content-Security-Policy: default-src *; style-src * 'unsafe-inline';
|
@ -78,6 +78,10 @@ support-files =
|
||||
file_CSP_bug910139.sjs
|
||||
file_CSP_bug910139.xml
|
||||
file_CSP_bug910139.xsl
|
||||
file_CSP_bug909029_star.html
|
||||
file_CSP_bug909029_star.html^headers^
|
||||
file_CSP_bug909029_none.html
|
||||
file_CSP_bug909029_none.html^headers^
|
||||
|
||||
[test_CSP.html]
|
||||
[test_CSP_bug663567.html]
|
||||
@ -94,3 +98,4 @@ support-files =
|
||||
[test_bug836922_npolicies.html]
|
||||
[test_csp_redirects.html]
|
||||
[test_CSP_bug910139.html]
|
||||
[test_CSP_bug909029.html]
|
||||
|
140
content/base/test/csp/test_CSP_bug909029.html
Normal file
140
content/base/test/csp/test_CSP_bug909029.html
Normal file
@ -0,0 +1,140 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Bug 909029 - CSP source-lists ignore some source expressions like 'unsafe-inline' when * or 'none' are used (e.g., style-src, script-src)</title>
|
||||
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id=content style="visibility:hidden">
|
||||
<iframe id=testframe1></iframe>
|
||||
<iframe id=testframe2></iframe>
|
||||
</div>
|
||||
<script class="testbody" type="text/javascript">
|
||||
SimpleTest.waitForExplicitFinish();
|
||||
|
||||
window.tests = {
|
||||
starExternalStylesLoaded: -1,
|
||||
starExternalImgLoaded: -1,
|
||||
noneExternalStylesBlocked: -1,
|
||||
noneExternalImgLoaded: -1,
|
||||
starInlineStyleAllowed: -1,
|
||||
starInlineScriptBlocked: -1,
|
||||
noneInlineStyleAllowed: -1,
|
||||
noneInlineScriptBlocked: -1
|
||||
}
|
||||
|
||||
function examiner() {
|
||||
SpecialPowers.addObserver(this, "csp-on-violate-policy", false);
|
||||
SpecialPowers.addObserver(this, "http-on-modify-request", false);
|
||||
}
|
||||
examiner.prototype = {
|
||||
observe: function(subject, topic, data) {
|
||||
// subject should be an nsURI, and should be either allowed or blocked.
|
||||
if (!SpecialPowers.can_QI(subject))
|
||||
return;
|
||||
|
||||
var testpat = new RegExp("testid=([a-zA-Z]+)");
|
||||
|
||||
if (topic === "http-on-modify-request") {
|
||||
//these things were allowed by CSP
|
||||
var asciiSpec = SpecialPowers.getPrivilegedProps(SpecialPowers.do_QueryInterface(subject, "nsIHttpChannel"), "URI.asciiSpec");
|
||||
if (!testpat.test(asciiSpec))
|
||||
return;
|
||||
var testid = testpat.exec(asciiSpec)[1];
|
||||
window.testResult(testid,
|
||||
/Loaded/.test(testid),
|
||||
"resource loaded");
|
||||
}
|
||||
|
||||
if(topic === "csp-on-violate-policy") {
|
||||
// these were blocked... record that they were blocked
|
||||
// try because the subject could be an nsIURI or an nsISupportsCString
|
||||
try {
|
||||
var asciiSpec = SpecialPowers.getPrivilegedProps(SpecialPowers.do_QueryInterface(subject, "nsIURI"), "asciiSpec");
|
||||
if (!testpat.test(asciiSpec)) return;
|
||||
var testid = testpat.exec(asciiSpec)[1];
|
||||
window.testResult(testid,
|
||||
/Blocked/.test(testid),
|
||||
"resource blocked by CSP");
|
||||
} catch(e) {
|
||||
// if that fails, the subject is probably a string. Strings are only
|
||||
// reported for inline and eval violations. Since we are testing those
|
||||
// via the observed effects of script on CSSOM, we can simply ignore
|
||||
// these subjects.
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
// must eventually call this to remove the listener,
|
||||
// or mochitests might get borked.
|
||||
remove: function() {
|
||||
SpecialPowers.removeObserver(this, "csp-on-violate-policy");
|
||||
SpecialPowers.removeObserver(this, "http-on-modify-request");
|
||||
}
|
||||
}
|
||||
|
||||
window.examiner = new examiner();
|
||||
|
||||
window.testResult = function(testname, result, msg) {
|
||||
//dump("in testResult: testname = " + testname + "\n");
|
||||
|
||||
//test already complete.... forget it... remember the first result.
|
||||
if (window.tests[testname] != -1)
|
||||
return;
|
||||
|
||||
window.tests[testname] = result;
|
||||
is(result, true, testname + ' test: ' + msg);
|
||||
|
||||
// if any test is incomplete, keep waiting
|
||||
for (var v in window.tests)
|
||||
if(tests[v] == -1)
|
||||
return;
|
||||
|
||||
// ... otherwise, finish
|
||||
window.examiner.remove();
|
||||
SimpleTest.finish();
|
||||
}
|
||||
|
||||
// Helpers for inline script/style checks
|
||||
var black = 'rgb(0, 0, 0)';
|
||||
var green = 'rgb(0, 128, 0)';
|
||||
function getElementColorById(doc, id) {
|
||||
return window.getComputedStyle(doc.contentDocument.getElementById(id)).color;
|
||||
}
|
||||
|
||||
function checkInlineWithStar() {
|
||||
var testframe = document.getElementById('testframe1');
|
||||
window.testResult("starInlineStyleAllowed",
|
||||
getElementColorById(testframe, 'inline-style') === green,
|
||||
"Inline styles should be allowed (style-src 'unsafe-inline' with star)");
|
||||
window.testResult("starInlineScriptBlocked",
|
||||
getElementColorById(testframe, 'inline-script') === black,
|
||||
"Inline scripts should be blocked (style-src 'unsafe-inline' with star)");
|
||||
}
|
||||
|
||||
function checkInlineWithNone() {
|
||||
// If a directive has 'none' in addition to other sources, 'none' is ignored
|
||||
// and the other sources are used. 'none' is only a valid source if it is
|
||||
// used by itself.
|
||||
var testframe = document.getElementById('testframe2');
|
||||
window.testResult("noneInlineStyleAllowed",
|
||||
getElementColorById(testframe, 'inline-style') === green,
|
||||
"Inline styles should be allowed (style-src 'unsafe-inline' with none)");
|
||||
window.testResult("noneInlineScriptBlocked",
|
||||
getElementColorById(testframe, 'inline-script') === black,
|
||||
"Inline scripts should be blocked (style-src 'unsafe-inline' with none)");
|
||||
}
|
||||
|
||||
SpecialPowers.pushPrefEnv(
|
||||
{'set':[["security.csp.speccompliant", true]]},
|
||||
function () {
|
||||
document.getElementById('testframe1').src = 'file_CSP_bug909029_star.html';
|
||||
document.getElementById('testframe1').addEventListener('load', checkInlineWithStar, false);
|
||||
document.getElementById('testframe2').src = 'file_CSP_bug909029_none.html';
|
||||
document.getElementById('testframe2').addEventListener('load', checkInlineWithNone, false);
|
||||
}
|
||||
);
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
@ -2,8 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||||
# You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
||||
INCLUDES += \
|
||||
|
@ -18,3 +18,4 @@ LIBRARY_NAME = 'mediaresourcemanager'
|
||||
|
||||
include('/ipc/chromium/chromium-config.mozbuild')
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -4,9 +4,7 @@
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
SHORT_LIBNAME = mozsqlt3
|
||||
ifdef MOZ_FOLD_LIBS
|
||||
FORCE_STATIC_LIB = 1
|
||||
else
|
||||
ifndef MOZ_FOLD_LIBS
|
||||
FORCE_SHARED_LIB = 1
|
||||
endif
|
||||
VISIBILITY_FLAGS =
|
||||
|
@ -16,3 +16,5 @@ SOURCES += [
|
||||
'sqlite3.c',
|
||||
]
|
||||
|
||||
if CONFIG['MOZ_FOLD_LIBS']:
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -717,6 +717,7 @@ _cairo_win32_printing_surface_paint_image_pattern (cairo_win32_surface_t *surf
|
||||
assert (status == CAIRO_STATUS_SUCCESS);
|
||||
|
||||
cairo_matrix_multiply (&m, &m, &surface->gdi_ctm);
|
||||
cairo_matrix_multiply(&m, &m, &surface->ctm);
|
||||
SaveDC (surface->dc);
|
||||
_cairo_matrix_to_win32_xform (&m, &xform);
|
||||
|
||||
|
@ -17,7 +17,6 @@ include $(srcdir)/files.mk
|
||||
# on Windows, we're going to link graphite with gkmedias instead of libxul
|
||||
ifeq (WINNT,$(OS_TARGET))
|
||||
VISIBILITY_FLAGS =
|
||||
FORCE_STATIC_LIB = 1
|
||||
endif
|
||||
|
||||
ifeq (WINNT,$(OS_TARGET))
|
||||
|
@ -6,11 +6,10 @@
|
||||
|
||||
MODULE = 'graphite2'
|
||||
|
||||
if CONFIG['OS_TARGET'] != 'WINNT':
|
||||
LIBXUL_LIBRARY = True
|
||||
if CONFIG['OS_TARGET'] == 'WINNT':
|
||||
FORCE_STATIC_LIB = True
|
||||
else:
|
||||
# FORCE_STATIC_LIB = True
|
||||
pass
|
||||
LIBXUL_LIBRARY = True
|
||||
|
||||
# This should contain all of the _PUBLIC_HEADERS from files.mk
|
||||
EXPORTS.graphite2 += [
|
||||
|
@ -24,11 +24,6 @@
|
||||
# Mozilla author(s): Jonathan Kew
|
||||
#
|
||||
|
||||
|
||||
ifeq ($(OS_ARCH),WINNT)
|
||||
FORCE_STATIC_LIB = 1
|
||||
endif
|
||||
|
||||
LOCAL_INCLUDES += -I$(srcdir)
|
||||
|
||||
|
||||
|
@ -6,11 +6,10 @@
|
||||
|
||||
MODULE = 'harfbuzz'
|
||||
|
||||
if CONFIG['OS_ARCH'] != 'WINNT':
|
||||
LIBXUL_LIBRARY = True
|
||||
if CONFIG['OS_ARCH'] == 'WINNT':
|
||||
FORCE_STATIC_LIB = True
|
||||
else:
|
||||
# FORCE_STATIC_LIB = True
|
||||
pass
|
||||
LIBXUL_LIBRARY = True
|
||||
|
||||
EXPORTS.harfbuzz += [
|
||||
'hb-blob.h',
|
||||
|
@ -27,7 +27,6 @@
|
||||
|
||||
ifeq (WINNT,$(OS_TARGET))
|
||||
VISIBILITY_FLAGS =
|
||||
FORCE_STATIC_LIB = 1
|
||||
endif
|
||||
|
||||
CSRCS = \
|
||||
|
@ -6,11 +6,10 @@
|
||||
|
||||
MODULE = 'ots'
|
||||
|
||||
if CONFIG['OS_TARGET'] != 'WINNT':
|
||||
LIBXUL_LIBRARY = True
|
||||
if CONFIG['OS_TARGET'] == 'WINNT':
|
||||
FORCE_STATIC_LIB = True
|
||||
else:
|
||||
# FORCE_STATIC_LIB = True
|
||||
pass
|
||||
LIBXUL_LIBRARY = True
|
||||
|
||||
EXPORTS += [
|
||||
'../include/opentype-sanitiser.h',
|
||||
|
@ -125,7 +125,7 @@ gfxWindowsSurface::CreateSimilarSurface(gfxContentType aContent,
|
||||
}
|
||||
|
||||
cairo_surface_t *surface;
|
||||
if (GetContentType() == GFX_CONTENT_COLOR_ALPHA) {
|
||||
if (!mForPrinting && GetContentType() == GFX_CONTENT_COLOR_ALPHA) {
|
||||
// When creating a similar surface to a transparent surface, ensure
|
||||
// the new surface uses a DIB. cairo_surface_create_similar won't
|
||||
// use a DIB for a GFX_CONTENT_COLOR surface if this surface doesn't
|
||||
|
@ -10,7 +10,6 @@
|
||||
DIST_INSTALL = 1
|
||||
SDK_LIBRARY = $(LIBRARY)
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
USE_STATIC_LIBS = 1
|
||||
|
||||
LOCAL_INCLUDES += -I$(srcdir)/../src
|
||||
|
@ -13,6 +13,4 @@ MOZILLA_INTERNAL_API = 1
|
||||
LOCAL_INCLUDES += -I$(srcdir)/.. \
|
||||
-I$(srcdir)/../../src
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
@ -14,3 +14,4 @@ LIBRARY_NAME = 'unicharutil_s'
|
||||
|
||||
EXPORT_LIBRARY = True
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -21,3 +21,5 @@ include('objs.mozbuild')
|
||||
SOURCES += intl_unicharutil_util_cppsrcs
|
||||
|
||||
LIBRARY_NAME = 'unicharutil_external_s'
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -31,7 +31,6 @@ LIBS = $(NSPR_LIBS)
|
||||
ifdef JS_SHARED_LIBRARY
|
||||
FORCE_SHARED_LIB = 1
|
||||
endif
|
||||
FORCE_STATIC_LIB = 1
|
||||
DIST_INSTALL = 1
|
||||
|
||||
###############################################
|
||||
|
@ -41,6 +41,7 @@ _MOZBUILD_EXTERNAL_VARIABLES := \
|
||||
DIRS \
|
||||
EXTRA_PP_COMPONENTS \
|
||||
EXTRA_PP_JS_MODULES \
|
||||
FORCE_STATIC_LIB \
|
||||
GTEST_CMMSRCS \
|
||||
GTEST_CPPSRCS \
|
||||
GTEST_CSRCS \
|
||||
|
@ -4,7 +4,5 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
|
||||
DEFINES += -DANSI_ARROWS -DHAVE_TCGETATTR -DHIDE -DUSE_DIRENT -DSYS_UNIX \
|
||||
-DHAVE_STDLIB -DUNIQUE_HISTORY
|
||||
|
@ -11,3 +11,4 @@ SOURCES += [
|
||||
'sysunix.c',
|
||||
]
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2358,8 +2358,13 @@ CodeGenerator::visitCallDirectEval(LCallDirectEval *lir)
|
||||
static const uint32_t EntryTempMask = Registers::TempMask & ~(1 << OsrFrameReg.code());
|
||||
|
||||
bool
|
||||
CodeGenerator::generateArgumentsChecks()
|
||||
CodeGenerator::generateArgumentsChecks(bool bailout)
|
||||
{
|
||||
// This function can be used the normal way to check the argument types,
|
||||
// before entering the function and bailout when arguments don't match.
|
||||
// For debug purpose, this is can also be used to force/check that the
|
||||
// arguments are correct. Upon fail it will hit a breakpoint.
|
||||
|
||||
MIRGraph &mir = gen->graph();
|
||||
MResumePoint *rp = mir.entryResumePoint();
|
||||
|
||||
@ -2389,8 +2394,18 @@ CodeGenerator::generateArgumentsChecks()
|
||||
masm.guardTypeSet(Address(StackPointer, offset), types, temp, &miss);
|
||||
}
|
||||
|
||||
if (miss.used() && !bailoutFrom(&miss, graph.entrySnapshot()))
|
||||
return false;
|
||||
if (miss.used()) {
|
||||
if (bailout) {
|
||||
if (!bailoutFrom(&miss, graph.entrySnapshot()))
|
||||
return false;
|
||||
} else {
|
||||
Label success;
|
||||
masm.jump(&success);
|
||||
masm.bind(&miss);
|
||||
masm.breakpoint();
|
||||
masm.bind(&success);
|
||||
}
|
||||
}
|
||||
|
||||
masm.freeStack(frameSize());
|
||||
|
||||
@ -5679,6 +5694,12 @@ CodeGenerator::generate()
|
||||
masm.bind(&skip);
|
||||
#endif
|
||||
|
||||
#ifdef DEBUG
|
||||
// Assert that the argument types are correct.
|
||||
if (!generateArgumentsChecks(/* bailout = */ false))
|
||||
return false;
|
||||
#endif
|
||||
|
||||
if (!generatePrologue())
|
||||
return false;
|
||||
if (!generateBody())
|
||||
|
@ -43,7 +43,7 @@ class OutOfLineCallPostWriteBarrier;
|
||||
|
||||
class CodeGenerator : public CodeGeneratorSpecific
|
||||
{
|
||||
bool generateArgumentsChecks();
|
||||
bool generateArgumentsChecks(bool bailout = true);
|
||||
bool generateBody();
|
||||
|
||||
public:
|
||||
|
@ -160,6 +160,14 @@ MacroAssembler::guardObjectType(Register obj, const TypeSet *types,
|
||||
}
|
||||
|
||||
if (hasTypeObjects) {
|
||||
// We are possibly going to overwrite the obj register. So already
|
||||
// emit the branch, since branch depends on previous value of obj
|
||||
// register and there is definitely a branch following. So no need
|
||||
// to invert the condition.
|
||||
if (lastBranch.isInitialized())
|
||||
lastBranch.emit(*this);
|
||||
lastBranch = BranchGCPtr();
|
||||
|
||||
// Note: Some platforms give the same register for obj and scratch.
|
||||
// Make sure when writing to scratch, the obj register isn't used anymore!
|
||||
loadPtr(Address(obj, JSObject::offsetOfType()), scratch);
|
||||
|
@ -354,3 +354,5 @@ HOST_SOURCES += [
|
||||
'jskwgen.cpp',
|
||||
'jsoplengen.cpp',
|
||||
]
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -1,4 +1,10 @@
|
||||
function f(stdlib, foreign, buffer) {
|
||||
function f1() { "use asm"; function g() {} return g }
|
||||
if (this.jsFuns) {
|
||||
ok(jsFuns.isAsmJSModule(f1), "f1 is an asm.js module");
|
||||
ok(jsFuns.isAsmJSFunction(f1()), "f1.g is an asm.js function");
|
||||
}
|
||||
|
||||
function f2(stdlib, foreign, buffer) {
|
||||
"use asm";
|
||||
var i32 = new stdlib.Int32Array(buffer);
|
||||
function main(n) {
|
||||
@ -10,17 +16,56 @@ function f(stdlib, foreign, buffer) {
|
||||
}
|
||||
return main;
|
||||
}
|
||||
|
||||
var i32 = new Int32Array(4096/4);
|
||||
for (var i = 0; i < 100; i++)
|
||||
if (this.jsFuns)
|
||||
ok(jsFuns.isAsmJSModule(f2), "f2 is an asm.js module");
|
||||
var i32 = new Int32Array(1024);
|
||||
for (var i = 0; i < i32.length; i++)
|
||||
i32[i] = i;
|
||||
var f2Main = f2(this, null, i32.buffer);
|
||||
if (this.jsFuns)
|
||||
ok(jsFuns.isAsmJSFunction(f2Main), "f2.main is an asm.js function");
|
||||
if (f2Main(4) !== 6)
|
||||
throw "f2Main(4)";
|
||||
if (f2Main(100) !== 4950)
|
||||
throw "f2.main(100)";
|
||||
var sum = (((i32.length - 1) * i32.length) / 2);
|
||||
if (f2Main(i32.length) !== sum)
|
||||
throw "f2.main(" + i32.length + ")";
|
||||
if (f2Main(i32.length + 100) !== sum)
|
||||
throw "f2.main(" + i32.length + ")";
|
||||
|
||||
var fMain = f(this, null, i32.buffer);
|
||||
if (fMain(4) !== 6)
|
||||
throw "f.main(4)";
|
||||
if (fMain(100) !== 4950)
|
||||
throw "f.main(100)";
|
||||
if (fMain(5000) !== 4950)
|
||||
throw "f.main(5000)";
|
||||
function f3(stdlib, foreign, buffer) {
|
||||
"use asm";
|
||||
var done = foreign.done;
|
||||
var i32 = new stdlib.Int32Array(buffer);
|
||||
function main() {
|
||||
var i = 0, sum = 0;
|
||||
while (1) {
|
||||
for (i = 0; (i|0) < 1000; i=(i+1)|0)
|
||||
sum = (sum + i)|0;
|
||||
if (done(sum|0)|0)
|
||||
break;
|
||||
}
|
||||
return sum|0;
|
||||
}
|
||||
return main;
|
||||
}
|
||||
var begin;
|
||||
var lastSum;
|
||||
function done(sum) {
|
||||
if (sum !== ((lastSum + 499500)|0))
|
||||
throw "bad sum: " + sum + ", " + lastSum + ", " + ((lastSum + 499500)|0);
|
||||
lastSum = sum;
|
||||
return (Date.now() - begin) > 3000;
|
||||
}
|
||||
var f3Main = f3(this, {done:done}, i32.buffer);
|
||||
if (this.jsFuns)
|
||||
ok(jsFuns.isAsmJSFunction(f3Main), "f3.main is an asm.js function");
|
||||
|
||||
postMessage("ok");
|
||||
begin = Date.now();
|
||||
lastSum = 0;
|
||||
if (f3Main() !== lastSum)
|
||||
throw "f3.main()";
|
||||
|
||||
if (!this.jsFuns)
|
||||
postMessage("ok");
|
||||
|
@ -10,70 +10,27 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=854209
|
||||
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
|
||||
</head>
|
||||
<body>
|
||||
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=854209">asm.js browser tests</a>
|
||||
<p id="display"></p>
|
||||
<div id="content" style="display: none">
|
||||
|
||||
</div>
|
||||
<pre id="test">
|
||||
<script class="testbody" type="text/javascript">
|
||||
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=854209">asm.js browser tests</a>
|
||||
<p id="display"></p>
|
||||
<div id="content" style="display: none"></div>
|
||||
<pre id="test"></pre>
|
||||
|
||||
var jsFuns = SpecialPowers.Cu.getJSTestingFunctions();
|
||||
<script>
|
||||
var jsFuns = SpecialPowers.Cu.getJSTestingFunctions();
|
||||
ok(jsFuns.isAsmJSCompilationAvailable());
|
||||
</script>
|
||||
|
||||
ok(jsFuns.isAsmJSCompilationAvailable());
|
||||
<script src="http://mochi.test:8888/tests/js/xpconnect/tests/mochitest/file_asmjs.js"></script>
|
||||
|
||||
function f1() { "use asm"; function g() {} return g }
|
||||
ok(jsFuns.isAsmJSModule(f1), "f1 is an asm.js module");
|
||||
ok(jsFuns.isAsmJSFunction(f1()), "f1.g is an asm.js function");
|
||||
<script>
|
||||
var w = new Worker('http://mochi.test:8888/tests/js/xpconnect/tests/mochitest/file_asmjs.js');
|
||||
w.onmessage = function(e) {
|
||||
ok(e.data === "ok", "Worker asm.js tests");
|
||||
SimpleTest.finish();
|
||||
}
|
||||
|
||||
function f2(stdlib, foreign, buffer) {
|
||||
"use asm";
|
||||
var i32 = new stdlib.Int32Array(buffer);
|
||||
function main(n) {
|
||||
n = n|0;
|
||||
var i = 0, sum = 0;
|
||||
for (; (i|0) < (n|0); i=(i+1)|0)
|
||||
sum = (sum + (i32[(i<<2)>>2]|0))|0;
|
||||
return sum|0;
|
||||
}
|
||||
return main;
|
||||
}
|
||||
ok(jsFuns.isAsmJSModule(f2), "f2 is an asm.js module");
|
||||
var i32 = new Int32Array(4096/4);
|
||||
for (var i = 0; i < 100; i++)
|
||||
i32[i] = i;
|
||||
var f2Main = f2(this, null, i32.buffer);
|
||||
ok(jsFuns.isAsmJSFunction(f2Main), "f2.main is an asm.js function");
|
||||
ok(f2Main(4) == 6, "f2.main(4)");
|
||||
ok(f2Main(100) == 4950, "f2.main(100)");
|
||||
ok(f2Main(5000) == 4950, "f2.main(5000)");
|
||||
SimpleTest.waitForExplicitFinish();
|
||||
</script>
|
||||
|
||||
function f3(stdlib, foreign, buffer) {
|
||||
"use asm";
|
||||
var i32 = new stdlib.Int32Array(buffer);
|
||||
function main(n,o) {
|
||||
n = n|0;
|
||||
o = o|0;
|
||||
var i = 0, j = 0, sum = 0;
|
||||
for (i = 0; (i|0) < (n|0); i=(i+1)|0)
|
||||
for (j = 0; (j|0) < (o|0); j=(j+1)|0)
|
||||
sum = (sum + (i32[(j<<2)>>2]|0))|0;
|
||||
return sum|0;
|
||||
}
|
||||
return main;
|
||||
}
|
||||
var f3Main = f3(this, null, i32.buffer);
|
||||
ok(jsFuns.isAsmJSFunction(f3Main), "f3.main is an asm.js function");
|
||||
ok(f3Main(200000, 1000) == ((4950*200000)|0), "f3.main(200000, 1000)");
|
||||
|
||||
var w = new Worker('http://mochi.test:8888/tests/js/xpconnect/tests/mochitest/file_asmjs.js');
|
||||
w.onmessage = function(e) {
|
||||
ok(e.data === "ok", "Worker asm.js tests");
|
||||
SimpleTest.finish();
|
||||
}
|
||||
|
||||
SimpleTest.waitForExplicitFinish();
|
||||
</script>
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -2,7 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB= 1
|
||||
ifeq ($(OS_TARGET),WINNT)
|
||||
VISIBILITY_FLAGS =
|
||||
endif
|
||||
|
@ -51,3 +51,4 @@ LIBRARY_NAME = 'cubeb'
|
||||
|
||||
MSVC_ENABLE_PGO = True
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -16,9 +16,6 @@ ifeq ($(AS),yasm)
|
||||
AS_DASH_C_FLAG=
|
||||
endif
|
||||
|
||||
# need static lib for some of the libimg componentry to link properly
|
||||
FORCE_STATIC_LIB = 1
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
||||
jpeg_nbits_table.h: $(srcdir)/genTables.py
|
||||
|
@ -150,3 +150,5 @@ LIBRARY_NAME = 'mozjpeg'
|
||||
|
||||
MSVC_ENABLE_PGO = True
|
||||
|
||||
# need static lib for some of the libimg componentry to link properly
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2,7 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB= 1
|
||||
ifeq (WINNT,$(OS_TARGET))
|
||||
VISIBILITY_FLAGS =
|
||||
endif
|
||||
|
@ -15,3 +15,4 @@ LIBRARY_NAME = 'nestegg'
|
||||
|
||||
MSVC_ENABLE_PGO = True
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2,7 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB= 1
|
||||
ifeq (WINNT,$(OS_TARGET))
|
||||
VISIBILITY_FLAGS =
|
||||
endif
|
||||
|
@ -15,3 +15,4 @@ LIBRARY_NAME = 'ogg'
|
||||
|
||||
MSVC_ENABLE_PGO = True
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2,8 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||||
# You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB= 1
|
||||
|
||||
DEFINES += \
|
||||
-DOPUS_BUILD \
|
||||
-DOPUS_VERSION='"v1.1-beta-23-gf2446c2-mozilla"' \
|
||||
|
@ -17,3 +17,4 @@ LIBRARY_NAME = 'opus'
|
||||
|
||||
MSVC_ENABLE_PGO = True
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -3,7 +3,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB= 1
|
||||
ifeq ($(OS_ARCH),WINNT)
|
||||
VISIBILITY_FLAGS=
|
||||
endif
|
||||
|
@ -49,3 +49,4 @@ LIBRARY_NAME = 'mozpng'
|
||||
|
||||
MSVC_ENABLE_PGO = True
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2,8 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||||
# You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
|
||||
# We don't compile the full speex codec, only the resampler.
|
||||
DEFINES += -DOUTSIDE_SPEEX
|
||||
# Speex wants a random prefix when building in another program, to avoid name
|
||||
|
@ -24,3 +24,4 @@ SOURCES += [
|
||||
|
||||
MSVC_ENABLE_PGO = True
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2,7 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
ifeq (WINNT,$(OS_TARGET))
|
||||
VISIBILITY_FLAGS =
|
||||
endif
|
||||
|
@ -26,3 +26,4 @@ SOURCES += [
|
||||
|
||||
MSVC_ENABLE_PGO = True
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2,7 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB= 1
|
||||
LOCAL_INCLUDES += -I$(topsrcdir)/media/libtremor/include/tremor
|
||||
|
||||
ifeq ($(OS_ARCH),AIX)
|
||||
|
@ -23,3 +23,4 @@ SOURCES += [
|
||||
'tremor_window.c',
|
||||
]
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2,7 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB= 1
|
||||
ifeq (WINNT,$(OS_TARGET))
|
||||
VISIBILITY_FLAGS =
|
||||
endif
|
||||
|
@ -33,3 +33,4 @@ SOURCES += [
|
||||
|
||||
MSVC_ENABLE_PGO = True
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -5,7 +5,6 @@
|
||||
|
||||
DEFINES += -DHAVE_CONFIG_H=vpx_config.h
|
||||
|
||||
FORCE_STATIC_LIB= 1
|
||||
ifeq (WINNT,$(OS_TARGET))
|
||||
VISIBILITY_FLAGS =
|
||||
endif
|
||||
|
@ -92,3 +92,4 @@ SOURCES += [
|
||||
|
||||
MSVC_ENABLE_PGO = True
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -3,7 +3,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB= 1
|
||||
ifeq (WINNT,$(OS_TARGET))
|
||||
VISIBILITY_FLAGS =
|
||||
endif
|
||||
|
@ -49,3 +49,5 @@ elif CONFIG['OS_TARGET'] == 'WINNT':
|
||||
LOCAL_INCLUDES += [
|
||||
'/media/mtransport/third_party/nrappkit/src/port/win32/include',
|
||||
]
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2,7 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||||
# You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
STLFLAGS =
|
||||
ifdef MOZ_GLUE_PROGRAM_LDFLAGS
|
||||
SDK_LIBRARY = $(REAL_LIBRARY)
|
||||
|
@ -33,3 +33,4 @@ if CONFIG['MOZ_REPLACE_MALLOC']:
|
||||
|
||||
LIBRARY_NAME = 'memory'
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -4,8 +4,6 @@
|
||||
|
||||
VPATH = $(srcdir) $(srcdir)/src/src
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
|
||||
ifdef MOZ_GLUE_PROGRAM_LDFLAGS
|
||||
SDK_LIBRARY = $(REAL_LIBRARY)
|
||||
DIST_INSTALL = 1
|
||||
|
@ -40,3 +40,4 @@ if CONFIG['OS_TARGET'] == 'Darwin' and not CONFIG['MOZ_REPLACE_MALLOC']:
|
||||
|
||||
LIBRARY_NAME = 'jemalloc'
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -11,9 +11,7 @@ endif
|
||||
|
||||
DIST_INSTALL = 1
|
||||
|
||||
ifeq (gonk,$(MOZ_WIDGET_TOOLKIT))
|
||||
FORCE_STATIC_LIB= 1
|
||||
else
|
||||
ifneq (gonk,$(MOZ_WIDGET_TOOLKIT))
|
||||
FORCE_SHARED_LIB= 1
|
||||
endif
|
||||
|
||||
|
@ -43,3 +43,5 @@ SOURCES += [
|
||||
|
||||
LIBRARY_NAME = 'mozalloc'
|
||||
|
||||
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk':
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -4,8 +4,6 @@
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
ifndef MOZ_JEMALLOC3
|
||||
FORCE_STATIC_LIB= 1
|
||||
|
||||
ifeq ($(OS_ARCH),SunOS)
|
||||
ifndef GNU_CC
|
||||
MODULE_OPTIMIZE_FLAGS = -xO5
|
||||
|
@ -15,4 +15,4 @@ if not CONFIG['MOZ_JEMALLOC3']:
|
||||
'jemalloc.c',
|
||||
]
|
||||
LIBRARY_NAME = 'jemalloc'
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2,7 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
STL_FLAGS =
|
||||
|
||||
# exported_headers.mk defines the headers exported by mfbt. It is included by
|
||||
|
@ -10,3 +10,4 @@ MODULE = 'mozglue'
|
||||
|
||||
LIBRARY_NAME = 'mfbt'
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -4,7 +4,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB= 1
|
||||
ifeq ($(OS_ARCH),WINNT)
|
||||
USE_STATIC_LIBS = 1
|
||||
endif
|
||||
|
@ -36,3 +36,4 @@ SOURCES += [
|
||||
'randtable.c',
|
||||
]
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2,7 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
ifeq ($(OS_ARCH),WINNT)
|
||||
USE_STATIC_LIBS = 1
|
||||
endif
|
||||
|
@ -13,3 +13,4 @@ SOURCES += [
|
||||
'nss_secutil.c',
|
||||
]
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -4,7 +4,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
ifeq ($(OS_ARCH),WINNT)
|
||||
USE_STATIC_LIBS = 1
|
||||
endif
|
||||
|
@ -26,3 +26,4 @@ SOURCES += [
|
||||
'mar_read.c',
|
||||
]
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
@ -2,7 +2,6 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
FORCE_STATIC_LIB = 1
|
||||
ifeq ($(OS_ARCH),WINNT)
|
||||
USE_STATIC_LIBS = 1
|
||||
endif
|
||||
|
@ -13,3 +13,4 @@ SOURCES += [
|
||||
'mar_verify.c',
|
||||
]
|
||||
|
||||
FORCE_STATIC_LIB = True
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user