X-Git-Url: http://nitlanguage.org diff --git a/src/compiler/compiler_ffi.nit b/src/compiler/compiler_ffi.nit index 8466af1..42423f9 100644 --- a/src/compiler/compiler_ffi.nit +++ b/src/compiler/compiler_ffi.nit @@ -49,10 +49,11 @@ extern void nitni_global_ref_incr(void*); extern void nitni_global_ref_decr(void*); """ + var cflags = self.cflags[""].join(" ") nitni_ccu.write_as_nitni(self, v.compiler.modelbuilder.compile_dir) for file in nitni_ccu.files do - var f = new ExternCFile(file, c_compiler_options) + var f = new ExternCFile(file, cflags) f.pkgconfigs.add_all pkgconfigs v.compiler.extern_bodies.add(f) end @@ -76,11 +77,8 @@ extern void nitni_global_ref_decr(void*); redef fun collect_linker_libs do - var s = c_linker_options - if s.is_empty then return null - var res = new ArraySet[String] - res.add s - return res + if not self.ldflags.keys.has("") then return null + return self.ldflags[""] end private var compiled_callbacks = new Array[NitniCallback] @@ -390,7 +388,7 @@ redef class MExplicitCall var recv_var = null if mproperty.is_init then var recv_mtype = recv_mtype - recv_var = nitni_visitor.init_instance(recv_mtype) + recv_var = nitni_visitor.init_instance_or_extern(recv_mtype) nitni_visitor.add("{mtype.ctype} recv /* var self: {mtype} */;") nitni_visitor.add("recv = {recv_var};") else