X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=lto-plugin%2FMakefile.am;h=204b25f45ef2f22bb246641a2aa9f9d09719737b;hb=db8b3e148d5cc5358cd48886e5334bd50d2d3317;hp=52bf6719daa6a39e146517704886ea05973c36cf;hpb=1cd0b7167ed9b43b189c39549d8165a020aee9b6;p=gcc.git diff --git a/lto-plugin/Makefile.am b/lto-plugin/Makefile.am index 52bf6719daa..204b25f45ef 100644 --- a/lto-plugin/Makefile.am +++ b/lto-plugin/Makefile.am @@ -1,32 +1,52 @@ -# Makefile.am is used by automake 1.11 to generate Makefile.in. +## Process this file with automake to produce Makefile.in. ACLOCAL_AMFLAGS = -I .. -I ../config AUTOMAKE_OPTIONS = no-dependencies -gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER) +gcc_version := $(shell @get_gcc_base_ver@ $(top_srcdir)/../gcc/BASE-VER) target_noncanonical := @target_noncanonical@ -libexecsubdir := $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version) +libexecsubdir := $(libexecdir)/gcc/$(real_target_noncanonical)/$(gcc_version)$(accel_dir_suffix) -# How to find libelf -LIBELFLIBS = @LIBELFLIBS@ -LIBELFINC = @LIBELFINC@ - -# Which object format to parse. -LTO_FORMAT = @LTO_FORMAT@ - -AM_CPPFLAGS = -I$(top_srcdir)/../include $(LIBELFINC) -AM_CFLAGS = -Wall -Werror +AM_CPPFLAGS = -I$(top_srcdir)/../include $(DEFS) +AM_CFLAGS = @ac_lto_plugin_warn_cflags@ $(CET_HOST_FLAGS) +AM_LDFLAGS = @ac_lto_plugin_ldflags@ +AM_LIBTOOLFLAGS = --tag=disable-static +override CFLAGS := $(filter-out -fsanitize=address,$(CFLAGS)) +override LDFLAGS := $(filter-out -fsanitize=address,$(LDFLAGS)) libexecsub_LTLIBRARIES = liblto_plugin.la - -liblto_plugin_la_SOURCES = lto-plugin.c lto-plugin-$(LTO_FORMAT).c -liblto_plugin_la_LIBADD = $(LIBELFLIBS) \ - $(if $(wildcard ../libiberty/pic/libiberty.a),../libiberty/pic/libiberty.a,) -liblto_plugin_la_LDFLAGS = -no-undefined -bindir $(libexecsubdir) \ - $(if $(wildcard ../libiberty/pic/libiberty.a),,-Wc,../libiberty/libiberty.a) - -all: copy_lto_plugin - -copy_lto_plugin: all-am - $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $(libexecsub_LTLIBRARIES) `pwd`/../gcc/ - +gcc_build_dir = @gcc_build_dir@ +in_gcc_libs = $(foreach lib, $(libexecsub_LTLIBRARIES), $(gcc_build_dir)/$(lib)) + +liblto_plugin_la_SOURCES = lto-plugin.c +# Note that we intentionally override the bindir supplied by ACX_LT_HOST_FLAGS. +liblto_plugin_la_LDFLAGS = $(AM_LDFLAGS) \ + $(lt_host_flags) -module -avoid-version -bindir $(libexecsubdir) +# Can be simplified when libiberty becomes a normal convenience library. +libiberty = $(with_libiberty)/libiberty.a +libiberty_noasan = $(with_libiberty)/noasan/libiberty.a +libiberty_pic = $(with_libiberty)/pic/libiberty.a +Wc=-Wc, +liblto_plugin_la_LIBADD = \ + $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \ + $(if $(wildcard $(libiberty_pic)),$(Wc)$(libiberty_pic),)) +liblto_plugin_la_LDFLAGS += \ + $(if $(wildcard $(libiberty_noasan)),, \ + $(if $(wildcard $(libiberty_pic)),,-Wc,$(libiberty))) +liblto_plugin_la_DEPENDENCIES = \ + $(if $(wildcard $(libiberty_noasan)),$(libiberty_noasan), \ + $(if $(wildcard $(libiberty_pic)),$(libiberty_pic),)) +LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS)) +liblto_plugin_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(liblto_plugin_la_LDFLAGS) $(LTLDFLAGS) -o $@ + +all-local: $(in_gcc_libs) + +$(in_gcc_libs) : $(gcc_build_dir)/%: % + @if test "X`dlname=; . ./$*; echo dlname:$$dlname`" = "Xdlname:"; then \ + echo WARNING: $* is static, not copying to $@ >&2 ; \ + else \ + $(mkinstalldirs) $(gcc_build_dir) && \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $* `pwd`/$@ ; \ + fi