xref: /netbsd-src/external/gpl3/gcc/dist/lto-plugin/Makefile.am (revision 32d1c65c71fbdb65a012e8392a62a757dd6853e9)
1## Process this file with automake to produce Makefile.in.
2
3ACLOCAL_AMFLAGS = -I .. -I ../config
4AUTOMAKE_OPTIONS = no-dependencies
5
6gcc_version := $(shell @get_gcc_base_ver@ $(top_srcdir)/../gcc/BASE-VER)
7target_noncanonical := @target_noncanonical@
8libexecsubdir := $(libexecdir)/gcc/$(real_target_noncanonical)/$(gcc_version)$(accel_dir_suffix)
9
10AM_CPPFLAGS = -I$(top_srcdir)/../include $(DEFS)
11AM_CFLAGS = @ac_lto_plugin_warn_cflags@ $(CET_HOST_FLAGS)
12AM_LDFLAGS = @ac_lto_plugin_ldflags@
13AM_LIBTOOLFLAGS = --tag=disable-static
14override CFLAGS := $(filter-out -fsanitize=address -fsanitize=hwaddress,$(CFLAGS))
15override LDFLAGS := $(filter-out -fsanitize=address -fsanitize=hwaddress,$(LDFLAGS))
16
17libexecsub_LTLIBRARIES = liblto_plugin.la
18gcc_build_dir = @gcc_build_dir@
19in_gcc_libs = $(foreach lib, $(libexecsub_LTLIBRARIES), $(gcc_build_dir)/$(lib))
20
21if LTO_PLUGIN_USE_SYMVER
22if LTO_PLUGIN_USE_SYMVER_GNU
23version_arg = -Wl,--version-script=$(srcdir)/lto-plugin.map
24endif
25if LTO_PLUGIN_USE_SYMVER_SUN
26version_arg = -Wl,-M,$(srcdir)/lto-plugin.map
27endif
28version_dep = $(srcdir)/lto-plugin.map
29else
30version_arg = -export-symbols-regex onload
31version_dep =
32endif
33
34liblto_plugin_la_SOURCES = lto-plugin.c
35# Note that we intentionally override the bindir supplied by ACX_LT_HOST_FLAGS.
36liblto_plugin_la_LDFLAGS = $(AM_LDFLAGS) \
37	$(lt_host_flags) -module -avoid-version -bindir $(libexecsubdir) \
38	$(version_arg)
39# Can be simplified when libiberty becomes a normal convenience library.
40libiberty = $(with_libiberty)/libiberty.a
41libiberty_noasan = $(with_libiberty)/noasan/libiberty.a
42libiberty_pic = $(with_libiberty)/pic/libiberty.a
43Wc=-Wc,
44liblto_plugin_la_LIBADD = \
45	$(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \
46	$(if $(wildcard $(libiberty_pic)),$(Wc)$(libiberty_pic),))
47liblto_plugin_la_LDFLAGS += \
48	$(if $(wildcard $(libiberty_noasan)),, \
49	$(if $(wildcard $(libiberty_pic)),,-Wc,$(libiberty)))
50liblto_plugin_la_DEPENDENCIES = \
51	$(if $(wildcard $(libiberty_noasan)),$(libiberty_noasan), \
52	$(if $(wildcard $(libiberty_pic)),$(libiberty_pic),)) \
53	$(version_dep)
54LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
55liblto_plugin_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
56	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
57	$(liblto_plugin_la_LDFLAGS) $(LTLDFLAGS) -o $@
58
59all-local: $(in_gcc_libs)
60
61$(in_gcc_libs) : $(gcc_build_dir)/%: %
62	@if test "X`dlname=; . ./$*; echo dlname:$$dlname`" = "Xdlname:"; then \
63	  echo WARNING: $* is static, not copying to $@ >&2 ; \
64	else \
65	  $(mkinstalldirs) $(gcc_build_dir) && \
66	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $* `pwd`/$@ ; \
67	fi
68