Index: ChangeLog
from Akim Demaille <akim(a)epita.fr>
* configure.ac: Copyright notice.
Check the presence of the needed tools.
Index: README
--- README Tue, 30 Sep 2003 17:53:09 +0200 david_v (meta-c++-grammar/g/37_README 1.6 600)
+++ README Tue, 30 Sep 2003 18:27:32 +0200 akim (meta-c++-grammar/g/37_README 1.6 600)
@@ -1,4 +1,4 @@
-cxx-grammar
+cxx-grammar -*- text -*-
-----------
C++ syntax definition with disambiguation tools.
Index: configure.ac
--- configure.ac Tue, 30 Sep 2003 17:53:09 +0200 david_v (meta-c++-grammar/f/44_configure. 1.29 600)
+++ configure.ac Tue, 30 Sep 2003 18:48:36 +0200 akim (meta-c++-grammar/f/44_configure. 1.29 600)
@@ -1,56 +1,80 @@
-# AC_PATH_XPROG(VAR, PROG, PATH_PREFIX)
-# -------------------------------------
-AC_DEFUN([AC_PATH_XPROG],
-[AC_PATH_PROG([$1], [$2], [], [$$3/bin:$PATH])
-if test -z "$$1"; then
- AC_MSG_ERROR([$2 is required])
-fi
-])
+# Configure template for C++ Grammar. -*-Autoconf-*-
+#
+# Copyright (C) 2003 Laboratoire de Recherche et Developpement de l'EPITA.
+#
+# This program 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 2 of the License, or
+# (at your option) any later version.
+#
+# This program 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 this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+# 02111-1307 USA
-# Autoconf 2.53 needed so that buggy PATH_SEPARATOR is fixed.
-AC_PREREQ(2.53)
+AC_PREREQ(2.57)
-AC_INIT(cxx-grammar, 0.1)
+AC_INIT([cxx-grammar], 0.1, [transformers(a)lrde.epita.fr])
# Auxiliary files
-AC_CONFIG_AUX_DIR(config)
+AC_CONFIG_AUX_DIR([config])
AC_CONFIG_FILES(config/Makefile)
AC_CONFIG_FILES([config/defs],
[chmod +x config/defs])
-AM_INIT_AUTOMAKE([1.7.3 dist-bzip2])
+AM_INIT_AUTOMAKE([1.7.7 dist-bzip2])
+# Make sure $prefix is defined.
test "x$prefix" = xNONE && prefix=$ac_default_prefix
USE_XT_PACKAGES
+if test "$XT" = NONE; then
+ AC_MSG_ERROR([XT is undefined. Did you specify --with-xt=PATH?])
+fi
-AC_ARG_WITH(lrde-sdftools,
+
+AC_ARG_WITH([lrde-sdftools],
[ --with-lrde-sdftools=DIR Specify location of LRDE_SDF, [PREFIX]],
- LRDE_SDF="$withval",
- LRDE_SDF="$prefix"
+ [LRDE_SDF=$withval],
+ [LRDE_SDF=$prefix]
)
-AC_SUBST(LRDE_SDF)
+AC_SUBST([LRDE_SDF])
-AC_ARG_WITH(sdf-option,
+AC_ARG_WITH([sdf-option],
[ --with-sdf-option=DIR Specify location of SDF_OPTION, [LRDE_SDF]],
- SDF_OPTION="$withval",
- SDF_OPTION="$LRDE_SDF"
+ [SDF_OPTION=$withval],
+ [SDF_OPTION=$LRDE_SDF]
)
-AC_SUBST(SDF_OPTION)
+AC_SUBST([SDF_OPTION])
+test -f $SDF_OPTION/bin/sdf-option ||
+ AC_MSG_ERROR([cannot find sdf-option. Did you use --with-lrde-sdftools?])
+
-AC_ARG_WITH(boxedsdf,
+AC_ARG_WITH([boxedsdf],
[ --with-boxedsdf=DIR Specify location of BOXEDSDF, [LRDE_SDF]],
- BOXEDSDF="$withval",
- BOXEDSDF="$LRDE_SDF"
+ [BOXEDSDF=$withval],
+ [BOXEDSDF=$LRDE_SDF]
)
-AC_SUBST(BOXEDSDF)
+AC_SUBST([BOXEDSDF])
+test -f $BOXEDSDF/bin/boxed2sdf ||
+ AC_MSG_ERROR([cannot find boxed2sdf. Did you use --with-lrde-sdftools?])
-AC_ARG_WITH(detgen,
+
+AC_ARG_WITH([detgen],
[ --with-detgen=DIR Specify location of DETGEN, [LRDE_SDF]],
- DETGEN="$withval",
- DETGEN="$LRDE_SDF"
+ [DETGEN=$withval],
+ [DETGEN=$LRDE_SDF]
)
-AC_SUBST(DETGEN)
+AC_SUBST([DETGEN])
+test -f $DETGEN/bin/detgen ||
+ AC_MSG_ERROR([cannot find detgen. Did you use --with-lrde-sdftools?])
+
+
# Loook for common programs
AC_LANG_C
@@ -61,7 +85,7 @@
# FIXME: check if gcc offers the -fsyntax option
# FIXME: lookup for other (better ?) compilers ?
COMPILER_SYNTAX_CHECK="$CXX -ansi -pedantic -fsyntax-only"
-AC_SUBST(COMPILER_SYNTAX_CHECK)
+AC_SUBST([COMPILER_SYNTAX_CHECK])
# Output Files
AC_CONFIG_FILES([Makefile
Index: ChangeLog
from Akim Demaille <akim(a)epita.fr>
* configure.ac: Check we can find the needed tools.
Add copyright notice.
* lib/boxedsdf/Makefile.am ($(SDFS)): unpack-sdf is in SDF_TOOLS,
not ASFIX_TOOLS).
Index: README
--- README Mon, 28 Jul 2003 19:02:44 +0200 david_v (meta-sdf-detgen/4_README 1.2 644)
+++ README Tue, 30 Sep 2003 18:35:56 +0200 akim (meta-sdf-detgen/4_README 1.3 644)
@@ -1,4 +1,4 @@
-DetGen: a Deterministic Grammar Generator
+DetGen: a Deterministic Grammar Generator -*- text -*-
-------
These tools is used for extend a grammar so as to have a deterministic one.
Index: configure.ac
--- configure.ac Fri, 20 Jun 2003 15:53:39 +0200 david_v (meta-sdf-detgen/7_configure. 1.2 644)
+++ configure.ac Tue, 30 Sep 2003 18:43:34 +0200 akim (meta-sdf-detgen/7_configure. 1.3 644)
@@ -1,22 +1,45 @@
+# Configure template for SDF DetGen. -*-Autoconf-*-
+#
+# Copyright (C) 2003 Laboratoire de Recherche et Developpement de l'EPITA.
+#
+# This program 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 2 of the License, or
+# (at your option) any later version.
+#
+# This program 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 this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+# 02111-1307 USA
+
AC_PREREQ(2.57)
-AC_INIT(sdf-detgen, 0.1, valentin(a)lrde.epita.fr)
+AC_INIT([sdf-detgen], 0.1, [transformers-bugs(a)lrde.epita.fr])
-AC_CONFIG_AUX_DIR(config)
-AC_CONFIG_FILES(config/Makefile)
+AC_CONFIG_AUX_DIR([config])
+AC_CONFIG_FILES([config/Makefile])
-AM_INIT_AUTOMAKE([foreign 1.7.1 dist-bzip2])
+AM_INIT_AUTOMAKE([foreign 1.7.7 dist-bzip2])
test "x$prefix" = xNONE && prefix=$ac_default_prefix
USE_XT_PACKAGES
+test -f $SDF_TOOLS/bin/unpack-sdf ||
+ AC_MSG_ERROR([cannot find unpack-sdf. Use --with-xt.])
-AC_ARG_WITH(boxedsdf,
+AC_ARG_WITH([boxedsdf],
[ --with-boxedsdf=DIR Specify location of BOXEDSDF, [PREFIX]],
- BOXEDSDF="$withval",
- BOXEDSDF="$prefix"
+ [BOXEDSDF=$withval],
+ [BOXEDSDF=$prefix]
)
-AC_SUBST(BOXEDSDF)
+AC_SUBST([BOXEDSDF])
+test -f $BOXEDSDF/bin/boxed2sdf ||
+ AC_MSG_ERROR([cannot find boxed2sdf. Did you use --with-boxedsdf?])
AC_PROG_CC
AC_PROG_INSTALL
Index: lib/boxedsdf/Makefile.am
--- lib/boxedsdf/Makefile.am Thu, 19 Jun 2003 19:20:10 +0200 david_v (meta-sdf-detgen/12_Makefile.a 1.1 644)
+++ lib/boxedsdf/Makefile.am Tue, 30 Sep 2003 18:42:58 +0200 akim (meta-sdf-detgen/12_Makefile.a 1.2 644)
@@ -42,4 +42,4 @@
CLEANFILES = $(SDFS)
$(SDFS): $(BOXEDSDF)/share/boxedsdf/BoxedSdf2.def
- $(ASFIX_TOOLS)/bin/unpack-sdf $(BOXEDSDF)/share/boxedsdf/BoxedSdf2.def
\ No newline at end of file
+ $(SDF_TOOLS)/bin/unpack-sdf $(BOXEDSDF)/share/boxedsdf/BoxedSdf2.def
Index: ChangeLog
from Akim Demaille <akim(a)epita.fr>
* meta-sdf-boxed.prj: More ignore patterns.
* configure.ac: Add copyright notice.
Quote arguments.
Make sure we can find unpack-sdf.
Set $prefix if still NONE.
* README: Add copyright notice.
Index: configure.ac
--- configure.ac Wed, 02 Jul 2003 14:23:42 +0200 david_v (meta-sdf-boxed/42_configure. 1.11 644)
+++ configure.ac Tue, 30 Sep 2003 18:12:55 +0200 akim (meta-sdf-boxed/42_configure. 1.11 644)
@@ -1,13 +1,36 @@
+# Configure template for Boxed SDF. -*-Autoconf-*-
+#
+# Copyright (C) 2003 Laboratoire de Recherche et Developpement de l'EPITA.
+#
+# This program 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 2 of the License, or
+# (at your option) any later version.
+#
+# This program 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 this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+# 02111-1307 USA
+
AC_PREREQ(2.57)
-AC_INIT(boxedsdf, 0.2, valentin(a)lrde.epita.fr)
+AC_INIT([boxedsdf], 0.2, [valentin(a)lrde.epita.fr])
-AC_CONFIG_AUX_DIR(config)
-AC_CONFIG_FILES(config/Makefile)
+AC_CONFIG_AUX_DIR([config])
+AC_CONFIG_FILES([config/Makefile])
-AM_INIT_AUTOMAKE([foreign 1.7.1 dist-bzip2])
+AM_INIT_AUTOMAKE([foreign 1.7.7 dist-bzip2])
+# Make sure $prefix is defined.
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
USE_XT_PACKAGES
+test -f $UNPACK_SDF ||
+ AC_MSG_ERROR([cannot find unpack-sdf. Did you set --with-xt?])
AC_PROG_CC
AC_PROG_INSTALL
Index: README
--- README Wed, 02 Jul 2003 14:49:53 +0200 david_v (meta-sdf-boxed/b/24_README 1.7 644)
+++ README Tue, 30 Sep 2003 18:25:09 +0200 akim (meta-sdf-boxed/b/24_README 1.7 644)
@@ -1,4 +1,4 @@
-BoxedSdf
+BoxedSdf -*- Text -*-
--------
This package is to make easier the writing of Pretty-Print tables for Generic
@@ -23,15 +23,15 @@
A common using is:
-$ pack-boxedsdf -i MyGrammar.ppsdf | \
+$ pack-boxedsdf -i MyGrammar.ppsdf |
asfix-yield -o MyGrammar.ppdef
-$ parse-boxedsdf -i MyGrammar.ppdef | \
- boxed2sdf | \
+$ parse-boxedsdf -i MyGrammar.ppdef |
+ boxed2sdf |
pp-sdf -o MyGrammar.def
-$ parse-boxedsdf -i MyGrammar.ppdef | \
- boxed2pp-table | \
+$ parse-boxedsdf -i MyGrammar.ppdef |
+ boxed2pp-table |
pp-pp-table -o MyGrammar.pp
Note: if you have to use sdf-cons on your grammar, you should do it before the
@@ -43,8 +43,8 @@
If you want to use an already written grammar, you can merge PP information
into the Sdf grammar. Let's suppose having MyOldGrammar.def and MyOldGrammar.pp
-$ parse-sdf -i MyOldGrammar.def | \
- boxedsdf-merge -p MyOldGrammar.pp | \
+$ parse-sdf -i MyOldGrammar.def |
+ boxedsdf-merge -p MyOldGrammar.pp |
pp-boxedsdf -o MyOldGrammar.ppdef
If you want to get modular files, you can use the unpack-sdf of the StrategoXT
@@ -57,8 +57,8 @@
pp entries. boxedsdf-update is a tool that can test it. If the pp entries were
not modified, it is deleted so as to be regenerated by boxed2pp-table.
-$ parse-boxedsdf -i MyUpdatedGrammar.ppdef | \
- boxedsdf-merge -d MuOldGrammar.ppdef --verbose 1 | \
+$ parse-boxedsdf -i MyUpdatedGrammar.ppdef |
+ boxedsdf-merge -d MuOldGrammar.ppdef --verbose 1 |
pp-boxedsdf -o MyCorrectedGrammar.ppdef
Production has changed, but not the pp. Reseting it: "constructor1"
Production has changed, but not the pp. Reseting it: "constructor2"
@@ -74,10 +74,10 @@
example of use:
-$ pack-boxedsdf -I /path/to/your/syntax -s YourSdfSyntax -i YourGrammar | \
- implode-asfix | \
- YourSdfSyntax-to-BoxedSdf | \
- boxed2pp-table | \
+$ pack-boxedsdf -I /path/to/your/syntax -s YourSdfSyntax -i YourGrammar |
+ implode-asfix |
+ YourSdfSyntax-to-BoxedSdf |
+ boxed2pp-table |
pp-pp-table -o YourGrammar.pp
Writing in BoxedSdf
@@ -95,3 +95,24 @@
When a pp entry is not specified, boxed2pp-table will generate the default one
(with ppgen). So, many production do not have to have pp entries.
+
+--
+
+Copyright (C) 2003 Laboratoire de Recherche et Developpement de l'EPITA.
+
+This file is part of Boxed SDF.
+
+This program 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 2 of the License, or
+(at your option) any later version.
+
+This program 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 this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA
J'ai mis quelques idées dans le proto-article (publi-03-transformers).
C'est encore fouilli et il y a encore plein d'idées à rajouter. J'ai
essayé de mettre de l'ordre dans ces idées mais je ne pense pas encore
que ca soit le bon ordre.
Autrement Eelco m'a répondu sur la mailing list stratego-dev :
> > If you can tell me what you think of it...
>
> I think this is very useful. Could you apply these changes to the
> subversion repository directly?
--
Valentin DAVID
valentin(a)lrde.epita.fr
Akim Demaille <akim(a)epita.fr> writes:
> > Quand est-ce qu'on se la fait ?
>
> mardi. Avant, je ne peux pas :( Et vous, c'est possible ?
Ya les partiels, a partir de 18h00 c'est possible.
--
Valentin DAVID
valentin(a)lrde.epita.fr