]>
Commit | Line | Data |
---|---|---|
8d9254fc | 1 | ## Copyright (C) 2014-2020 Free Software Foundation, Inc. |
ddc8de03 PM |
2 | |
3 | ## This file is part of GCC. | |
4 | ||
5 | ## GCC is free software; you can redistribute it and/or modify it under | |
6 | ## the terms of the GNU General Public License as published by the Free | |
7 | ## Software Foundation; either version 3, or (at your option) any later | |
8 | ## version. | |
9 | ||
10 | ## GCC is distributed in the hope that it will be useful, but WITHOUT ANY | |
11 | ## WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
12 | ## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
13 | ## for more details. | |
14 | ||
15 | ## You should have received a copy of the GNU General Public License | |
16 | ## along with GCC; see the file COPYING3. If not see | |
17 | ## <http://www.gnu.org/licenses/>. | |
18 | ||
19 | ACLOCAL_AMFLAGS = -I .. -I ../config | |
f8a7e154 | 20 | gcc_build_dir = ../gcc |
ddc8de03 | 21 | AM_CPPFLAGS = -I $(srcdir)/../include -I $(srcdir)/../libgcc \ |
8db29d88 AO |
22 | -I $(gcc_build_dir) -I$(srcdir)/../gcc $($@_CPPFLAGS) $(GMPINC) |
23 | CPPFLAGS_FOR_C_FAMILY = -I $(srcdir)/../gcc/c-family \ | |
24 | -I $(srcdir)/../libcpp/include | |
25 | CPPFLAGS_FOR_C = $(CPPFLAGS_FOR_C_FAMILY) -I $(srcdir)/../gcc/c | |
26 | CPPFLAGS_FOR_CXX = $(CPPFLAGS_FOR_C_FAMILY) -I $(srcdir)/../gcc/cp | |
af3bef0e | 27 | AM_CXXFLAGS = $(WARN_FLAGS) $(WERROR) $(visibility) $(CET_HOST_FLAGS) |
1352bc88 IS |
28 | if DARWIN_DYNAMIC_LOOKUP |
29 | AM_CXXFLAGS += -Wl,-undefined,dynamic_lookup | |
30 | endif | |
56f274b2 JJ |
31 | override CXXFLAGS := $(filter-out -fsanitize=address,$(CXXFLAGS)) |
32 | override LDFLAGS := $(filter-out -fsanitize=address,$(LDFLAGS)) | |
33 | # Can be simplified when libiberty becomes a normal convenience library. | |
34 | libiberty_normal = ../libiberty/libiberty.a | |
35 | libiberty_noasan = ../libiberty/noasan/libiberty.a | |
36 | libiberty_pic = ../libiberty/pic/libiberty.a | |
37 | Wc=-Wc, | |
38 | libiberty = $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \ | |
39 | $(if $(wildcard $(libiberty_pic)),$(Wc)$(libiberty_pic), \ | |
40 | $(Wc)$(libiberty_normal))) | |
41 | libiberty_dep = $(patsubst $(Wc)%,%,$(libiberty)) | |
ddc8de03 PM |
42 | |
43 | plugindir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_version)/plugin | |
44 | cc1libdir = $(libdir)/$(libsuffix) | |
45 | ||
46 | if ENABLE_PLUGIN | |
8db29d88 | 47 | plugin_LTLIBRARIES = libcc1plugin.la libcp1plugin.la |
ddc8de03 PM |
48 | cc1lib_LTLIBRARIES = libcc1.la |
49 | endif | |
50 | ||
ddc8de03 PM |
51 | shared_source = callbacks.cc callbacks.hh connection.cc connection.hh \ |
52 | marshall.cc marshall.hh rpc.hh status.hh | |
53 | ||
8db29d88 AO |
54 | marshall_c_source = marshall-c.hh |
55 | marshall_cxx_source = marshall-cp.hh | |
56 | ||
ddc8de03 | 57 | libcc1plugin_la_LDFLAGS = -module -export-symbols $(srcdir)/libcc1plugin.sym |
8db29d88 AO |
58 | libcc1plugin_la_SOURCES = libcc1plugin.cc $(shared_source) $(marshall_c_source) |
59 | libcc1plugin.lo_CPPFLAGS = $(CPPFLAGS_FOR_C) | |
ddc8de03 | 60 | libcc1plugin_la_LIBADD = $(libiberty) |
56f274b2 JJ |
61 | libcc1plugin_la_DEPENDENCIES = $(libiberty_dep) |
62 | libcc1plugin_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \ | |
63 | $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ | |
64 | $(CXXFLAGS) $(libcc1plugin_la_LDFLAGS) $(LTLDFLAGS) -o $@ | |
ddc8de03 | 65 | |
8db29d88 AO |
66 | libcp1plugin_la_LDFLAGS = -module -export-symbols $(srcdir)/libcp1plugin.sym |
67 | libcp1plugin_la_SOURCES = libcp1plugin.cc $(shared_source) $(marshall_cxx_source) | |
68 | libcp1plugin.lo_CPPFLAGS = $(CPPFLAGS_FOR_CXX) | |
69 | libcp1plugin_la_LIBADD = $(libiberty) | |
70 | libcp1plugin_la_DEPENDENCIES = $(libiberty_dep) | |
71 | libcp1plugin_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \ | |
72 | $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ | |
73 | $(CXXFLAGS) $(libcp1plugin_la_LDFLAGS) $(LTLDFLAGS) -o $@ | |
74 | ||
56f274b2 | 75 | LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS)) |
ddc8de03 | 76 | libcc1_la_LDFLAGS = -module -export-symbols $(srcdir)/libcc1.sym |
8db29d88 AO |
77 | libcc1_la_SOURCES = findcomp.cc libcc1.cc libcp1.cc \ |
78 | names.cc names.hh $(shared_source) \ | |
79 | $(marshall_c_source) $(marshall_cxx_source) | |
ddc8de03 | 80 | libcc1_la_LIBADD = $(libiberty) |
56f274b2 JJ |
81 | libcc1_la_DEPENDENCIES = $(libiberty_dep) |
82 | libcc1_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \ | |
83 | $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ | |
84 | $(CXXFLAGS) $(libcc1_la_LDFLAGS) $(LTLDFLAGS) -o $@ |