+2009-07-14 Taras Glek <tglek@mozilla.com>
+ Rafael Espindola <espindola@google.com>
+
+ * doc/sourcebuild.texi: Document install-plugin target.
+ * configure.ac: Added install-plugin target to language makefiles.
+ * configure: Regenerate.
+ * Makefile.in: (install-plugin): Install more headers,
+ depend on lang.install-plugin.
+
2009-07-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
* tree-vrp.c (vrp_evaluate_conditional): Mark strings for
$(GGC_H) $(TREE_DUMP_H) $(PRETTY_PRINT_H) \
$(tm_file_list) $(tm_include_list) $(tm_p_file_list) $(tm_p_include_list) \
$(host_xm_file_list) $(host_xm_include_list) $(xm_include_list) \
- intl.h $(PLUGIN_VERSION_H)
+ intl.h $(PLUGIN_VERSION_H) $(DIAGNOSTIC_H) $(C_COMMON_H) $(C_PRETTY_PRINT_H) \
+ tree-iterator.h $(PLUGIN_H) $(TREE_FLOW_H) langhooks.h
# Install the headers needed to build a plugin.
-install-plugin: installdirs
+install-plugin: installdirs lang.install-plugin
# We keep the directory structure for files in config and .def files. All
# other files are flattened to a single directory.
$(mkinstalldirs) $(DESTDIR)$(plugin_includedir)
+2009-07-14 Taras Glek <tglek@mozilla.com>
+ Rafael Espindola <espindola@google.com>
+
+ * gcc-interface/Make-lang.in (ada.install-plugin): New target for
+ installing plugin headers.
+
2009-07-13 Ed Schonberg <schonberg@adacore.com>
* exp_ch7.adb, exp_util.adb, tbuild.adb, tbuild.ads, exp_ch4.adb,
$(MAKE) -C ada $(FLAGS_TO_PASS) $(ADA_FLAGS_TO_PASS) install-gnatlib-obj
ada.install-man:
+ada.install-plugin:
ada.uninstall:
-$(RM) $(DESTDIR)$(bindir)/gnatbind$(exeext)
target_list="all.cross start.encap rest.encap tags \
install-common install-man install-info install-pdf dvi pdf \
html uninstall info man srcextra srcman srcinfo \
- mostlyclean clean distclean maintainer-clean"
+ mostlyclean clean distclean maintainer-clean install-plugin"
for t in $target_list
do
target_list="all.cross start.encap rest.encap tags \
install-common install-man install-info install-pdf dvi pdf \
html uninstall info man srcextra srcman srcinfo \
- mostlyclean clean distclean maintainer-clean"
+ mostlyclean clean distclean maintainer-clean install-plugin"
for t in $target_list
do
+2009-07-14 Taras Glek <tglek@mozilla.com>
+ Rafael Espindola <espindola@google.com>
+
+ * Make-lang.in: Added CP_PLUGIN_HEADERS and
+ c.install-target to export cp-tree.h cxx-pretty-print.h
+ name-lookup.h headers for plugins.
+
2009-07-14 Jason Merrill <jason@redhat.com>
PR c++/37276
GXX_INSTALL_NAME := $(shell echo g++|sed '$(program_transform_name)')
CXX_TARGET_INSTALL_NAME := $(target_noncanonical)-$(shell echo c++|sed '$(program_transform_name)')
GXX_TARGET_INSTALL_NAME := $(target_noncanonical)-$(shell echo g++|sed '$(program_transform_name)')
+CP_PLUGIN_HEADERS := cp-tree.h cxx-pretty-print.h name-lookup.h
#\f
# Define the names for selecting c++ in LANGUAGES.
-$(INSTALL_DATA) $< $@
-chmod a-x $@
+c++.install-plugin: installdirs
+# We keep the directory structure for files in config and .def files. All
+# other files are flattened to a single directory.
+ headers="$(CP_PLUGIN_HEADERS)"; \
+ for file in $$headers; do \
+ path=$(srcdir)/cp/$$file; \
+ dest=$(plugin_includedir)/cp/$$file; \
+ echo $(INSTALL_DATA) $$path $(DESTDIR)$$dest; \
+ dir=`dirname $$dest`; \
+ $(mkinstalldirs) $(DESTDIR)$$dir; \
+ $(INSTALL_DATA) $$path $(DESTDIR)$$dest; \
+ done
+
c++.uninstall:
-rm -rf $(DESTDIR)$(bindir)/$(CXX_INSTALL_NAME)$(exeext)
-rm -rf $(DESTDIR)$(bindir)/$(GXX_INSTALL_NAME)$(exeext)
@item install-man
Install man pages for the front end. This target should ignore
errors.
+@item install-plugin
+Install headers needed for plugins.
@item srcextra
Copies its dependencies into the source directory. This generally should
be used for generated files such as Bison output files which are not
+2009-07-14 Taras Glek <tglek@mozilla.com>
+ Rafael Espindola <espindola@google.com>
+
+ * Make-lang.in (fortran.install-plugin): New target for
+ installing plugin headers.
+
2009-07-13 H.J. Lu <hongjiu.lu@intel.com>
* module.c (mio_symbol): Remove the unused variable, formal.
fi ; \
fi
+fortran.install-plugin:
+
fortran.install-info: $(DESTDIR)$(infodir)/gfortran.info
fortran.install-man: $(DESTDIR)$(man1dir)/$(GFORTRAN_INSTALL_NAME)$(man1ext)
+2009-07-14 Taras Glek <tglek@mozilla.com>
+ Rafael Espindola <espindola@google.com>
+
+ * Make-lang.in (java.install-plugin): New target for
+ installing plugin headers.
+
2009-07-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
* class.c: Replace %J by an explicit location. Update all calls.
fi ; \
done
+java.install-plugin:
java.install-man:
java.uninstall:
+2009-07-14 Taras Glek <tglek@mozilla.com>
+ Rafael Espindola <espindola@google.com>
+
+ * Make-lang.in (objc.install-plugin): New target for
+ installing plugin headers.
+
2009-07-07 Manuel López-Ibáñez <manu@gcc.gnu.org>
* objc-act.c (next_sjlj_build_catch_list): Replace EXPR_LOCUS by
objc.man:
objc.srcinfo:
objc.srcman:
+objc.install-plugin:
objc.tags: force
cd $(srcdir)/objc; etags -o TAGS.sub *.c *.h; \
+2009-07-14 Taras Glek <tglek@mozilla.com>
+ Rafael Espindola <espindola@google.com>
+
+ * Make-lang.in (obj-c.install-plugin): New target for
+ installing plugin headers.
+
2009-06-19 Ian Lance Taylor <iant@google.com>
* objcp-decl.h (start_struct): Remove in_struct and struct_types
obj-c++.srcinfo:
obj-c++.srcextra:
obj-c++.man:
+obj-c++.install-plugin:
obj-c++.tags: force
cd $(srcdir)/objcp; etags -o TAGS.sub *.y *.c *.h; \
+2009-07-14 Taras Glek <tglek@mozilla.com>
+ Rafael Espindola <espindola@google.com>
+
+ * g++.dg/plugin/header-plugin-test.C: New.
+ * g++.dg/plugin/header_plugin.c: New.
+ * g++.dg/plugin/plugin.exp: Update.
+
2009-07-14 Uros Bizjak <ubizjak@gmail.com>
* gcc.target/i386/sse-recip-vec.c: Move arrays out of test
--- /dev/null
+// Test case for the dumb plugin.
+// { dg-do compile }
+
--- /dev/null
+#include "gcc-plugin.h"
+#include <stdlib.h>
+#include "config.h"
+#include "system.h"
+#include "coretypes.h"
+#include "tree.h"
+#include "tree-pass.h"
+#include "intl.h"
+
+/* reqs */
+#include "tm.h"
+
+/* gcc/ headers. */
+#include "diagnostic.h"
+#include "c-common.h"
+#include "c-pretty-print.h"
+#include "tree-iterator.h"
+#include "plugin.h"
+#include "tree-flow.h"
+#include "langhooks.h"
+#include "cp/cp-tree.h"
+#include "cp/cxx-pretty-print.h"
+#include "cp/name-lookup.h"
+
+int plugin_is_GPL_compatible;
+
+int
+plugin_init (struct plugin_name_args *plugin_info,
+ struct plugin_gcc_version *version)
+{
+ return 0;
+}
set plugin_test_list [list \
{ attribute_plugin.c attribute_plugin-test-1.C } \
{ selfassign.c self-assign-test-1.C self-assign-test-2.C self-assign-test-3.C } \
- { dumb_plugin.c dumb-plugin-test-1.C } ]
+ { dumb_plugin.c dumb-plugin-test-1.C } \
+ { header_plugin.c header-plugin-test.C } ]
foreach plugin_test $plugin_test_list {
# Replace each source file with its full-path name