import("//llvm/utils/gn/build/symbol_exports.gni") assert(host_os != "win", "loadable modules not supported on win") symbol_exports("exports") { exports_file = "Hello.exports" } loadable_module("Hello") { output_name = "LLVMHello" deps = [ ":exports", # LLVMHello doesn't want to link in any LLVM code, it just # needs its headers. "//llvm/include/llvm/IR:public_tablegen", ] sources = [ "Hello.cpp" ] if (host_os != "mac" && host_os != "win") { # The GN build currently doesn't globally pass -fPIC, but that's # needed for building .so files on ELF. Just pass it manually # for loadable_modules for now. cflags = [ "-fPIC" ] } }