summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMikko Lehtonen <scoopr@iki.fi>2017-05-01 04:05:17 +0300
committerMikko Lehtonen <scoopr@iki.fi>2017-05-03 00:54:14 +0300
commit335e5c726608e73af062315bcd76cf639e27330c (patch)
tree584a8c3d36f92940340fa5af20fd0432f6f65007 /src
parent839036dc264dc6ddcad3e8f51708a25ecb45a55e (diff)
objc: Fix broken option handling
Diffstat (limited to 'src')
-rw-r--r--src/codegen/mod.rs6
-rw-r--r--src/options.rs4
2 files changed, 7 insertions, 3 deletions
diff --git a/src/codegen/mod.rs b/src/codegen/mod.rs
index 001b2909..697c140f 100644
--- a/src/codegen/mod.rs
+++ b/src/codegen/mod.rs
@@ -2994,13 +2994,13 @@ mod utils {
result: &mut Vec<P<ast::Item>>) {
let use_objc = if ctx.options().objc_extern_crate {
quote_item!(ctx.ext_cx(),
- use objc;
+ #[macro_use]
+ extern crate objc;
)
.unwrap()
} else {
quote_item!(ctx.ext_cx(),
- #[macro_use]
- extern crate objc;
+ use objc;
)
.unwrap()
};
diff --git a/src/options.rs b/src/options.rs
index ca54dbc6..bbf9c0dd 100644
--- a/src/options.rs
+++ b/src/options.rs
@@ -341,6 +341,10 @@ pub fn builder_from_flags<I>
builder = builder.whitelist_recursively(false);
}
+ if matches.is_present("objc-extern-crate") {
+ builder = builder.objc_extern_crate(true);
+ }
+
if let Some(opaque_types) = matches.values_of("opaque-type") {
for ty in opaque_types {
builder = builder.opaque_type(ty);