From c0539d2eb68feeb1596ffb31ce5cb2e0ae476d6e Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Mon, 26 Jul 2010 21:12:10 +0000 Subject: Use an export file. Plugins must export llvm::Registry symbols. Also, don't link in all the clang libraries statically. llvm-svn: 109436 --- clang/examples/PrintFunctionNames/Makefile | 11 ++++++++--- clang/examples/PrintFunctionNames/PrintFunctionNames.exports | 1 + 2 files changed, 9 insertions(+), 3 deletions(-) create mode 100644 clang/examples/PrintFunctionNames/PrintFunctionNames.exports (limited to 'clang/examples/PrintFunctionNames') diff --git a/clang/examples/PrintFunctionNames/Makefile b/clang/examples/PrintFunctionNames/Makefile index 0ff5189437c..125ac4854ff 100644 --- a/clang/examples/PrintFunctionNames/Makefile +++ b/clang/examples/PrintFunctionNames/Makefile @@ -10,10 +10,15 @@ CLANG_LEVEL := ../.. LIBRARYNAME = PrintFunctionNames +# If we don't need RTTI or EH, there's no reason to export anything +# from the plugin. +ifneq ($(REQUIRES_RTTI), 1) +ifneq ($(REQUIRES_EH), 1) +EXPORTED_SYMBOL_FILE = $(PROJ_SRC_DIR)/PrintFunctionNames.exports +endif +endif + LINK_LIBS_IN_SHARED = 1 SHARED_LIBRARY = 1 -USEDLIBS = clangIndex.a clangFrontend.a clangDriver.a clangSema.a \ - clangAnalysis.a clangAST.a clangParse.a clangLex.a clangBasic.a - include $(CLANG_LEVEL)/Makefile diff --git a/clang/examples/PrintFunctionNames/PrintFunctionNames.exports b/clang/examples/PrintFunctionNames/PrintFunctionNames.exports new file mode 100644 index 00000000000..0ff590d30d7 --- /dev/null +++ b/clang/examples/PrintFunctionNames/PrintFunctionNames.exports @@ -0,0 +1 @@ +_ZN4llvm8Registry* -- cgit v1.2.3