Mercurial > hg > CbC > CbC_gcc
diff libcc1/Makefile.am @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | |
children | 84e7813d76e9 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/libcc1/Makefile.am Fri Oct 27 22:46:09 2017 +0900 @@ -0,0 +1,99 @@ +## Copyright (C) 2014-2017 Free Software Foundation, Inc. + +## This file is part of GCC. + +## GCC is free software; you can redistribute it and/or modify it under +## the terms of the GNU General Public License as published by the Free +## Software Foundation; either version 3, or (at your option) any later +## version. + +## GCC is distributed in the hope that it will be useful, but WITHOUT ANY +## WARRANTY; without even the implied warranty of MERCHANTABILITY or +## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +## for more details. + +## You should have received a copy of the GNU General Public License +## along with GCC; see the file COPYING3. If not see +## <http://www.gnu.org/licenses/>. + +ACLOCAL_AMFLAGS = -I .. -I ../config +gcc_build_dir = ../gcc +AM_CPPFLAGS = -I $(srcdir)/../include -I $(srcdir)/../libgcc \ + -I $(gcc_build_dir) -I$(srcdir)/../gcc $($@_CPPFLAGS) $(GMPINC) +CPPFLAGS_FOR_C_FAMILY = -I $(srcdir)/../gcc/c-family \ + -I $(srcdir)/../libcpp/include +CPPFLAGS_FOR_C = $(CPPFLAGS_FOR_C_FAMILY) -I $(srcdir)/../gcc/c +CPPFLAGS_FOR_CXX = $(CPPFLAGS_FOR_C_FAMILY) -I $(srcdir)/../gcc/cp +AM_CXXFLAGS = $(WARN_FLAGS) $(WERROR) $(visibility) +override CXXFLAGS := $(filter-out -fsanitize=address,$(CXXFLAGS)) +override LDFLAGS := $(filter-out -fsanitize=address,$(LDFLAGS)) +# Can be simplified when libiberty becomes a normal convenience library. +libiberty_normal = ../libiberty/libiberty.a +libiberty_noasan = ../libiberty/noasan/libiberty.a +libiberty_pic = ../libiberty/pic/libiberty.a +Wc=-Wc, +libiberty = $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \ + $(if $(wildcard $(libiberty_pic)),$(Wc)$(libiberty_pic), \ + $(Wc)$(libiberty_normal))) +libiberty_dep = $(patsubst $(Wc)%,%,$(libiberty)) + +plugindir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_version)/plugin +cc1libdir = $(libdir)/$(libsuffix) + +if ENABLE_PLUGIN +plugin_LTLIBRARIES = libcc1plugin.la libcp1plugin.la +cc1lib_LTLIBRARIES = libcc1.la +endif + +BUILT_SOURCES = c-compiler-name.h cp-compiler-name.h +MOSTLYCLEANFILES = c-compiler-name.h cp-compiler-name.h + +# Put this in a header so we don't run sed for each compilation. This +# is also simpler to debug as one can easily see the constant. +# FIXME: compute it in configure.ac and output it in config.status, or +# introduce timestamp files for some indirection to avoid rebuilding it +# every time. +c-compiler-name.h: Makefile + -rm -f $@T + echo "#define C_COMPILER_NAME \"`echo gcc | sed '$(transform)'`\"" > $@T + mv $@T $@ # $(SHELL) $(srcdir)/../move-if-change $@T $@ + +cp-compiler-name.h: Makefile + -rm -f $@T + echo "#define CP_COMPILER_NAME \"`echo g++ | sed '$(transform)'`\"" > $@T + mv $@T $@ # $(SHELL) $(srcdir)/../move-if-change $@T $@ + +shared_source = callbacks.cc callbacks.hh connection.cc connection.hh \ + marshall.cc marshall.hh rpc.hh status.hh + +marshall_c_source = marshall-c.hh +marshall_cxx_source = marshall-cp.hh + +libcc1plugin_la_LDFLAGS = -module -export-symbols $(srcdir)/libcc1plugin.sym +libcc1plugin_la_SOURCES = libcc1plugin.cc $(shared_source) $(marshall_c_source) +libcc1plugin.lo_CPPFLAGS = $(CPPFLAGS_FOR_C) +libcc1plugin_la_LIBADD = $(libiberty) +libcc1plugin_la_DEPENDENCIES = $(libiberty_dep) +libcc1plugin_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ + $(CXXFLAGS) $(libcc1plugin_la_LDFLAGS) $(LTLDFLAGS) -o $@ + +libcp1plugin_la_LDFLAGS = -module -export-symbols $(srcdir)/libcp1plugin.sym +libcp1plugin_la_SOURCES = libcp1plugin.cc $(shared_source) $(marshall_cxx_source) +libcp1plugin.lo_CPPFLAGS = $(CPPFLAGS_FOR_CXX) +libcp1plugin_la_LIBADD = $(libiberty) +libcp1plugin_la_DEPENDENCIES = $(libiberty_dep) +libcp1plugin_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ + $(CXXFLAGS) $(libcp1plugin_la_LDFLAGS) $(LTLDFLAGS) -o $@ + +LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS)) +libcc1_la_LDFLAGS = -module -export-symbols $(srcdir)/libcc1.sym +libcc1_la_SOURCES = findcomp.cc libcc1.cc libcp1.cc \ + names.cc names.hh $(shared_source) \ + $(marshall_c_source) $(marshall_cxx_source) +libcc1_la_LIBADD = $(libiberty) +libcc1_la_DEPENDENCIES = $(libiberty_dep) +libcc1_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ + $(CXXFLAGS) $(libcc1_la_LDFLAGS) $(LTLDFLAGS) -o $@