servo: Merge #6718 - Add aarch64-unknown-linux-gnu support (from akosthekiss:aarch64-support); r=jdm

* Adding dependencies
* Replacing `i8` with `libc::c_char` to build properly on platforms
  where char is unsigned.

Source-Repo: https://github.com/servo/servo
Source-Revision: b386d7ae444af868907b9faff44e8432469160bd
This commit is contained in:
Akos Kiss 2015-07-23 17:17:18 -06:00
parent f8348d597e
commit b185c71656
4 changed files with 14 additions and 5 deletions

View File

@ -73,6 +73,9 @@ git = "https://github.com/servo/rust-fontconfig"
[target.arm-unknown-linux-gnueabihf.dependencies.fontconfig]
git = "https://github.com/servo/rust-fontconfig"
[target.aarch64-unknown-linux-gnu.dependencies.fontconfig]
git = "https://github.com/servo/rust-fontconfig"
[target.arm-linux-androideabi.dependencies.fontconfig]
git = "https://github.com/servo/rust-fontconfig"
@ -85,6 +88,9 @@ git = "https://github.com/servo/rust-freetype"
[target.arm-unknown-linux-gnueabihf.dependencies.freetype]
git = "https://github.com/servo/rust-freetype"
[target.aarch64-unknown-linux-gnu.dependencies.freetype]
git = "https://github.com/servo/rust-freetype"
[target.arm-linux-androideabi.dependencies.freetype]
git = "https://github.com/servo/rust-freetype"

View File

@ -1491,7 +1491,7 @@ class MethodDefiner(PropertyDefiner):
' selfHostedName: %s\n'
' }',
' JSFunctionSpec {\n'
' name: 0 as *const i8,\n'
' name: 0 as *const libc::c_char,\n'
' call: JSNativeWrapper { op: None, info: 0 as *const JSJitInfo },\n'
' nargs: 0,\n'
' flags: 0,\n'
@ -1565,7 +1565,7 @@ class AttrDefiner(PropertyDefiner):
' setter: %s\n'
' }',
' JSPropertySpec {\n'
' name: 0 as *const i8,\n'
' name: 0 as *const libc::c_char,\n'
' flags: 0,\n'
' getter: JSNativeWrapper { op: None, info: 0 as *const JSJitInfo },\n'
' setter: JSNativeWrapper { op: None, info: 0 as *const JSJitInfo }\n'
@ -3019,7 +3019,7 @@ class CGSpecializedForwardingSetter(CGSpecializedSetter):
assert all(ord(c) < 128 for c in forwardToAttrName)
return CGGeneric("""\
let mut v = RootedValue::new(cx, UndefinedValue());
if JS_GetProperty(cx, obj, %s as *const u8 as *const i8, v.handle_mut()) == 0 {
if JS_GetProperty(cx, obj, %s as *const u8 as *const libc::c_char, v.handle_mut()) == 0 {
return JSFalse;
}
if !v.ptr.is_object() {
@ -3027,7 +3027,7 @@ if !v.ptr.is_object() {
return JSFalse;
}
let target_obj = RootedObject::new(cx, v.ptr.to_object());
JS_SetProperty(cx, target_obj.handle(), %s as *const u8 as *const i8, args.get(0))
JS_SetProperty(cx, target_obj.handle(), %s as *const u8 as *const libc::c_char, args.get(0))
""" % (str_to_const_array(attrName), attrName, str_to_const_array(forwardToAttrName)))

View File

@ -233,7 +233,7 @@ pub fn do_create_interface_objects(cx: *mut JSContext,
let constructor = RootedObject::new(cx, create_constructor(cx, cnative, cnargs, cs.as_ptr()));
assert!(!constructor.ptr.is_null());
unsafe {
assert!(JS_DefineProperty1(cx, constructor.handle(), "prototype".as_ptr() as *const i8,
assert!(JS_DefineProperty1(cx, constructor.handle(), "prototype".as_ptr() as *const libc::c_char,
rval.handle(),
JSPROP_PERMANENT | JSPROP_READONLY,
None, None) != 0);

View File

@ -50,6 +50,9 @@ x11 = "1.1"
[target.arm-unknown-linux-gnueabihf.dependencies]
x11 = "1.1"
[target.aarch64-unknown-linux-gnu.dependencies]
x11 = "1.1"
[target.x86_64-apple-darwin.dependencies]
cgl = "0.1"