From 199563534a2fc38f72fa93c4fdd03221afe06996 Mon Sep 17 00:00:00 2001 From: Nico Weber Date: Fri, 23 Dec 2022 09:29:38 -0500 Subject: [PATCH] [gn] port f29cfab55d1f --- .../Analysis/InlineAdvisorPlugin/CMakeLists.txt | 4 +++- .../gn/secondary/llvm/unittests/Analysis/BUILD.gn | 28 +--------------------- .../Analysis/InlineAdvisorPlugin/BUILD.gn | 25 +++++++++++++++++++ 3 files changed, 29 insertions(+), 28 deletions(-) create mode 100644 llvm/utils/gn/secondary/llvm/unittests/Analysis/InlineAdvisorPlugin/BUILD.gn diff --git a/llvm/unittests/Analysis/InlineAdvisorPlugin/CMakeLists.txt b/llvm/unittests/Analysis/InlineAdvisorPlugin/CMakeLists.txt index a819808..d7165e4 100644 --- a/llvm/unittests/Analysis/InlineAdvisorPlugin/CMakeLists.txt +++ b/llvm/unittests/Analysis/InlineAdvisorPlugin/CMakeLists.txt @@ -10,7 +10,9 @@ if (NOT WIN32) endif() unset(LLVM_LINK_COMPONENTS) - add_llvm_library(InlineAdvisorPlugin MODULE BUILDTREE_ONLY InlineAdvisorPlugin.cpp) + add_llvm_library(InlineAdvisorPlugin MODULE BUILDTREE_ONLY + InlineAdvisorPlugin.cpp + ) # Put PLUGIN next to the unit test executable. set_output_directory(InlineAdvisorPlugin BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/../ diff --git a/llvm/utils/gn/secondary/llvm/unittests/Analysis/BUILD.gn b/llvm/utils/gn/secondary/llvm/unittests/Analysis/BUILD.gn index ee865bc..d946c57 100644 --- a/llvm/utils/gn/secondary/llvm/unittests/Analysis/BUILD.gn +++ b/llvm/utils/gn/secondary/llvm/unittests/Analysis/BUILD.gn @@ -1,31 +1,5 @@ import("//third-party/unittest/unittest.gni") -# Keyed off LLVM_ENABLE_PLUGINS in the CMake build, which is usually false -# on Windows and true elsewhere. -if (host_os != "win") { - foreach(plugin, [ "InlineAdvisorPlugin" ]) { - loadable_module(plugin) { - # Put plugin next to the unit test executable. - output_dir = target_out_dir - - sources = [ "$plugin.cpp" ] - - deps = [ - # TestPlugin doesn't want to link in any LLVM code, it just needs its - # headers. - "//llvm/include/llvm/IR:public_tablegen", - ] - - 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" ] - } - } - } -} - unittest("AnalysisTests") { deps = [ "//llvm/lib/Analysis", @@ -84,7 +58,7 @@ unittest("AnalysisTests") { # Otherwise, reconfiguring with plugins disabled will leave behind a stale # executable. if (host_os != "win") { - deps += [ ":InlineAdvisorPlugin" ] + deps += [ "InlineAdvisorPlugin" ] } # Support plugins. diff --git a/llvm/utils/gn/secondary/llvm/unittests/Analysis/InlineAdvisorPlugin/BUILD.gn b/llvm/utils/gn/secondary/llvm/unittests/Analysis/InlineAdvisorPlugin/BUILD.gn new file mode 100644 index 0000000..96d7b36 --- /dev/null +++ b/llvm/utils/gn/secondary/llvm/unittests/Analysis/InlineAdvisorPlugin/BUILD.gn @@ -0,0 +1,25 @@ +# Keyed off LLVM_ENABLE_PLUGINS in the CMake build, which is usually false +# on Windows and true elsewhere. +if (host_os != "win") { + loadable_module("InlineAdvisorPlugin") { + # Put plugin next to the unit test executable. + output_dir = + rebase_path(get_label_info("//llvm/unittests/Analysis:AnalysisTests", + "target_out_dir")) + + sources = [ "InlineAdvisorPlugin.cpp" ] + + deps = [ + # TestPlugin doesn't want to link in any LLVM code, it just needs its + # headers. + "//llvm/include/llvm/IR:public_tablegen", + ] + + 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" ] + } + } +} -- 2.7.4