summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4>2011-04-15 11:37:51 +0000
committerbstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4>2011-04-15 11:37:51 +0000
commit42a70d8fff905f47a192ea807263669f1de4f77e (patch)
tree64e22975a613158254339c61baa45c7154bf310d
parentec38267c41ffb5ff86dae35277b4d1d358335376 (diff)
downloadgcc-42a70d8fff905f47a192ea807263669f1de4f77e.tar.gz
2011-04-15 Basile Starynkevitch <basile@starynkevitch.net>
* meltplugin.texi: New file to wrap the melt.texi chapter when making MELT as a plugin. * meltpluginapi.texi: New file to wrap the generated meltgendoc.texi chapter when making MELT as a plugin. * make-melt-source-tar.sh: Copy these two files and some other texi files. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@172488 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--contrib/ChangeLog.MELT8
-rwxr-xr-xcontrib/make-melt-source-tar.sh9
-rw-r--r--contrib/meltplugin.texi140
-rw-r--r--contrib/meltpluginapi.texi101
4 files changed, 258 insertions, 0 deletions
diff --git a/contrib/ChangeLog.MELT b/contrib/ChangeLog.MELT
index 1e5ca6e28ce..8c439d39cca 100644
--- a/contrib/ChangeLog.MELT
+++ b/contrib/ChangeLog.MELT
@@ -1,4 +1,12 @@
+2011-04-15 Basile Starynkevitch <basile@starynkevitch.net>
+ * meltplugin.texi: New file to wrap the melt.texi chapter when
+ making MELT as a plugin.
+ * meltpluginapi.texi: New file to wrap the generated
+ meltgendoc.texi chapter when making MELT as a plugin.
+ * make-melt-source-tar.sh: Copy these two files and some other
+ texi files.
+
2011-04-13 Basile Starynkevitch <basile@starynkevitch.net>
* build-melt-plugin.sh (install_melt): Install warmelt-predef.melt
correctly.
diff --git a/contrib/make-melt-source-tar.sh b/contrib/make-melt-source-tar.sh
index ca1795fc992..dd767d859c2 100755
--- a/contrib/make-melt-source-tar.sh
+++ b/contrib/make-melt-source-tar.sh
@@ -55,9 +55,18 @@ copymelt() {
## just a reminder
echo $0: You should have recently run in gcc/ of build tree: make upgrade-warmelt
+copymelt COPYING3
copymelt gcc/DATESTAMP GCCMELT-DATESTAMP
copymelt gcc/REVISION GCCMELT-REVISION
+copymelt gcc/doc/include/fdl.texi
+copymelt gcc/doc/include/funding.texi
+copymelt gcc/doc/include/gpl.texi
+copymelt gcc/doc/include/gpl_v3.texi
+copymelt gcc/doc/include/texinfo.tex
+
+copymelt contrib/meltplugin.texi
+copymelt contrib/meltpluginapi.texi
## copy the non MELT files which are in MISSINGMELT_PLUGIN_HEADERS, that is
## the files which really should be available in the plugin/include/
diff --git a/contrib/meltplugin.texi b/contrib/meltplugin.texi
new file mode 100644
index 00000000000..ac204418383
--- /dev/null
+++ b/contrib/meltplugin.texi
@@ -0,0 +1,140 @@
+\input texinfo @c -*-texinfo-*-
+@c %**start of header
+@setfilename meltplugin.info
+@c don't need @include gcc-common.texi
+
+@settitle MELT plugin documentation
+
+@c Create a separate index for command line options.
+@defcodeindex op
+@c Merge the standard indexes into a single one.
+@syncodeindex fn cp
+@syncodeindex vr cp
+@syncodeindex ky cp
+@syncodeindex pg cp
+@syncodeindex tp cp
+@paragraphindent 1
+@copying
+Copyright @copyright{} 2011 Free Software Foundation, Inc.
+
+
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.3 or
+any later version published by the Free Software Foundation; with the
+Invariant Sections being ``Funding Free Software'', the Front-Cover
+Texts being (a) (see below), and with the Back-Cover Texts being (b)
+(see below). A copy of the license is included in the section entitled
+``GNU Free Documentation License''.
+
+(a) The FSF's Front-Cover Text is:
+
+ A GNU Manual
+
+(b) The FSF's Back-Cover Text is:
+
+ You have freedom to copy and modify this GNU Manual, like GNU
+ software. Copies published by the Free Software Foundation raise
+ funds for GNU development.
+@end copying
+@ifnottex
+@dircategory Software development
+@direntry
+* MELT plugin: (meltplugin). MELT plugin for GCC.
+@end direntry
+This file documents the MELT plugin for GCC.
+@sp 1
+@insertcopying
+@sp 1
+@end ifnottex
+
+@setchapternewpage odd
+@titlepage
+@title the MELT plugin for GCC
+@versionsubtitle
+@author Basile Starynkevitch
+@page
+@vskip 0pt plus 1filll
+@insertcopying
+@end titlepage
+@summarycontents
+@contents
+@page
+
+@node Top
+@top Introduction
+@cindex introduction
+
+This manual documents briefly how to use the MELT plugin for GCC. The
+ use of the GNU compilers is documented in a separate manual.
+ @xref{Top,, Introduction, gcc, Using the GNU Compiler Collection
+ (GCC)}. The MELT plugin for GCC permits you to develop your specific
+ extensions of GCC in a powerful, lispy, domain specific language
+ (also called MELT).
+
+This manual is mainly a reference manual rather than a tutorial. It
+discusses how to use the MELT plugin for GCC.
+Additional tutorial information for GCC is linked to from
+@uref{http://gcc.gnu.org/readings.html} and for MELT is linked to from
+@uref{http://gcc-melt.org/}.
+
+MELT documentation is made of a human written docuemtation (this
+document) and of a machine generated documentation. The machine
+generated documentation explains the MELT definitions (of functions,
+classes, selectors, primitives, etc...). Since it is generated from a
+GPLv3 source code, that generated documentation is released separately
+under a GPLv3 license. (the main author of this document, Basile
+Starynkevitch, understands that GPL and GFDL licenses are
+incompatible, so merging these two documentations is inappropriate.).
+
+@menu
+* MELT:: the Middle End Lisp Translator.
+* Funding:: How to help assure funding for free software.
+* GNU Project:: The GNU Project and GNU/Linux.
+
+* Copying:: GNU General Public License says
+ how you can copy and share GCC.
+* GNU Free Documentation License:: How you can copy and share this manual.
+* MELT Option Index:: Index to MELT plugin command line options.
+* MELT Concept Index:: Index of MELT concepts and symbol names.
+@end menu
+
+@include melt.texi
+
+@include funding.texi
+@include gnu.texi
+@include gpl_v3.texi
+@c ---------------------------------------------------------------------
+@c GFDL
+@c ---------------------------------------------------------------------
+
+@include fdl.texi
+
+@c ---------------------------------------------------------------------
+@c Indexes
+@c ---------------------------------------------------------------------
+
+@node MELT Option Index
+@unnumbered MELT Option Index
+
+MELT plugin's command line options are indexed here without any
+initial @samp{-} or @samp{--}. Where an option has both positive and
+negative forms (such as @option{-f@var{option}} and
+@option{-fno-@var{option}}), relevant entries in the manual are
+indexed under the most appropriate form; it may sometimes be useful to
+look up both forms. Each option has a plugin form
+@option{-fplugin-melt-arg-@var{option}} and a MELT branch form
+@option{-fmelt-@var{option}} which is used in the GCC experimental
+MELT branch.
+
+@printindex op
+
+@node MELT Concept Index
+@unnumbered MELT Concept Index
+
+@printindex cp
+
+@c ---------------------------------------------------------------------
+@c Epilogue
+@c ---------------------------------------------------------------------
+
+@bye
diff --git a/contrib/meltpluginapi.texi b/contrib/meltpluginapi.texi
new file mode 100644
index 00000000000..65da2667d98
--- /dev/null
+++ b/contrib/meltpluginapi.texi
@@ -0,0 +1,101 @@
+\input texinfo @c -*-texinfo-*-
+@c %**start of header
+@setfilename meltpluginapi.info
+@c don't need @include gcc-common.texi
+
+@settitle MELT plugin API (generated documentation)
+
+@c Create a separate index for command line options.
+@defcodeindex op
+@c Merge the standard indexes into a single one.
+@syncodeindex fn cp
+@syncodeindex vr cp
+@syncodeindex ky cp
+@syncodeindex pg cp
+@syncodeindex tp cp
+
+
+@copying
+Copyright @copyright{} 2011 Free Software Foundation, Inc.
+This document is generated from MELT source code so is under GPLv3+
+
+ This file is part of the MELT plugin for GCC (GCC MELT)
+
+ GCC MELT 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 MELT 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 MELT; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>.
+
+@end copying
+
+@ifnottex
+@dircategory Software development
+@direntry
+* MELT plugin API: (meltpluginapi). MELT plugin API.
+@end direntry
+
+This file documents the MELT plugin API. MELT is a plugin for
+GCC. This document is mostly generated from MELT source code (GPLv3+)
+so is unde the GPLv3+ license.
+
+@sp 1
+@insertcopying
+@sp 1
+@end ifnottex
+
+@setchapternewpage odd
+@titlepage
+@title the MELT plugin for GCC
+@versionsubtitle
+@author Basile Starynkevitch
+@page
+@vskip 0pt plus 1filll
+@insertcopying
+@end titlepage
+@summarycontents
+@contents
+@page
+
+@node Top
+@top Introduction
+@cindex introduction
+
+This document (mostly generated from MELT source code) documents the
+MELT application programming interface. It is a reference manual
+generated from (GPLv3+ licensed) MELT source code, so is itself GPLv3+
+licensed.
+
+Additional tutorial information for GCC is linked to from
+@uref{http://gcc.gnu.org/readings.html} and for MELT is linked to from
+@uref{http://gcc-melt.org/}.
+
+@menu
+* MELT Programming Reference:: the MELT API.
+@end menu
+
+@c the meltgendoc.texi is generated from various *.melt source files
+@c under GPLv3+ so is under GPLv3+
+@include meltgendoc.texi
+
+@include gnu.texi
+@include gpl_v3.texi
+
+@node MELT API Index
+@unnumbered MELT API Index
+
+@printindex cp
+
+@c ---------------------------------------------------------------------
+@c Epilogue
+@c ---------------------------------------------------------------------
+
+@bye