bison-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Patches to support python: 5/5: New files in gnulib to support python.


From: Dennis Heimbigner
Subject: Patches to support python: 5/5: New files in gnulib to support python.
Date: Tue, 03 Sep 2013 16:21:47 -0600
User-agent: Thunderbird 2.0.0.24 (Windows/20100228)

>From 2521dedb696298e87e8763a71613813d3fe9cd9f Mon Sep 17 00:00:00 2001
From: dmh <address@hidden>
Date: Tue, 3 Sep 2013 15:47:46 -0600
Subject: [PATCH 2/2] Add support for parsers using the python language. Part
 2: new files

* gnulib/build-aux/pythoncomp.sh.in: New.
* gnulib/build-aux/pythonexec.sh.in: New.
* gnulib/lib/pythoncomp.c: New.
* gnulib/lib/pythoncomp.h: New.
* gnulib/lib/pythonexec.c: New.
* gnulib/lib/pythonexec.h: New.
* gnulib/m4/pythoncomp.m4: New.
* gnulib/m4/pythonexec.m4: New.
* gnulib/modules/pythoncomp: New.
* gnulib/modules/pythoncomp-script: New.
* gnulib/modules/pythonexec: New.
* gnulib/modules/pythonexec-script: New.
---
 build-aux/pythoncomp.sh.in |  34 +++++++++
 build-aux/pythonexec.sh.in |  34 +++++++++
 lib/pythoncomp.c           | 110 +++++++++++++++++++++++++++
 lib/pythoncomp.h           |  31 ++++++++
 lib/pythonexec.c           | 180 +++++++++++++++++++++++++++++++++++++++++++++
 lib/pythonexec.h           |  40 ++++++++++
 m4/pythoncomp.m4           |  55 ++++++++++++++
 m4/pythonexec.m4           |  55 ++++++++++++++
 modules/pythoncomp         |  46 ++++++++++++
 modules/pythoncomp-script  |  20 +++++
 modules/pythonexec         |  36 +++++++++
 modules/pythonexec-script  |  24 ++++++
 12 files changed, 665 insertions(+)
 create mode 100644 build-aux/pythoncomp.sh.in
 create mode 100644 build-aux/pythonexec.sh.in
 create mode 100644 lib/pythoncomp.c
 create mode 100644 lib/pythoncomp.h
 create mode 100644 lib/pythonexec.c
 create mode 100644 lib/pythonexec.h
 create mode 100644 m4/pythoncomp.m4
 create mode 100644 m4/pythonexec.m4
 create mode 100644 modules/pythoncomp
 create mode 100644 modules/pythoncomp-script
 create mode 100644 modules/pythonexec
 create mode 100644 modules/pythonexec-script

diff --git a/build-aux/pythoncomp.sh.in b/build-aux/pythoncomp.sh.in
new file mode 100644
index 0000000..0840fad
--- /dev/null
+++ b/build-aux/pythoncomp.sh.in
@@ -0,0 +1,34 @@
+#!/bin/sh
+# Compile a Python program.
+
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
+# Written by Bruno Haible <address@hidden>, 2001.
+#
+# 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 3 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, see <http://www.gnu.org/licenses/>.
+
+# This uses the same choices as pythonexec.c, but instead of relying on the
+# environment settings at run time, it uses the environment variables
+# present at configuration time.
+#
+# This is a separate shell script, because it must be able to unset PYTHON_HOME
+# in some cases, which a simple shell command cannot do.
+#
+
+CONF_PYTHONC='@CONF_PYTHONC@'
+unset PYTHON_HOME
+if test -n "@HAVE_PYTHON@"; then
+  # In this case, $CONF_PYTHONC is "python".
+  test -z "$PYTHON_VERBOSE" || echo "$CONF_PYTHONC $@"
+  exec $CONF_PYTHONC "$@"
+fi
diff --git a/build-aux/pythonexec.sh.in b/build-aux/pythonexec.sh.in
new file mode 100644
index 0000000..1a655ec
--- /dev/null
+++ b/build-aux/pythonexec.sh.in
@@ -0,0 +1,34 @@
+#!/bin/sh
+# Execute a Python program.
+
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
+# Written by Bruno Haible <address@hidden>, 2001.
+#
+# 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 3 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, see <http://www.gnu.org/licenses/>.
+
+# This uses the same choices as pythonexec.c, but instead of relying on the
+# environment settings at run time, it uses the environment variables
+# present at configuration time.
+#
+# This is a separate shell script, because it must be able to unset PYTHON_HOME
+# in some cases, which a simple shell command cannot do.
+#
+
+CONF_PYTHON='@CONF_PYTHON@'
+unset PYTHON_HOME
+if test -n "@HAVE_PYTHON@"; then
+  # In this case, $CONF_PYTHON is "python".
+  test -z "$PYTHON_VERBOSE" || echo "$CONF_PYTHON $@"
+  exec $CONF_PYTHON "$@"
+fi
diff --git a/lib/pythoncomp.c b/lib/pythoncomp.c
new file mode 100644
index 0000000..4f58e07
--- /dev/null
+++ b/lib/pythoncomp.c
@@ -0,0 +1,110 @@
+/* Compile (Syntax Check) a Python program.
+   Copyright (C) 2001-2003, 2006-2013 Free Software Foundation, Inc.
+   Written by Bruno Haible <address@hidden>, 2001.
+
+   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 3 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, see <http://www.gnu.org/licenses/>.  */
+
+#include <config.h>
+#include <alloca.h>
+
+/* Specification.  */
+#include "pythoncomp.h"
+
+#include <errno.h>
+#include <limits.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+
+#include "pythonversion.h"
+#include "execute.h"
+#include "spawn-pipe.h"
+#include "wait-process.h"
+#include "classpath.h"
+#include "xsetenv.h"
+#include "sh-quote.h"
+#include "binary-io.h"
+#include "safe-read.h"
+#include "xalloc.h"
+#include "xmalloca.h"
+#include "concat-filename.h"
+#include "fwriteerror.h"
+#include "clean-temp.h"
+#include "error.h"
+#include "xvasprintf.h"
+#include "c-strstr.h"
+#include "gettext.h"
+
+#define _(str) gettext (str)
+
+
+/* Try to compile a set of Python sources with python.
+   Return a failure indicator (true upon error).  */
+static bool
+compile_using_pythonc (const char * const *python_sources,
+                     unsigned int python_sources_count,
+                     bool verbose, bool null_stderr)
+{
+  bool err;
+  unsigned int argc;
+  char **argv;
+  char **argp;
+  int exitstatus;
+  unsigned int i;
+
+  argc =
+    1 + python_sources_count + 4;
+  *argp++ = "-t";
+  *argp++ = "-t";
+  *argp++ = "-m";
+  *argp++ = "py_compile";
+  for (i = 0; i < python_sources_count; i++)
+    *argp++ = (char *) python_sources[i];
+  *argp = NULL;
+  /* Ensure argv length was correctly calculated.  */
+  if (argp - argv != argc)
+    abort ();
+
+  if (verbose)
+    {
+      char *command = shell_quote_argv (argv);
+      printf ("%s\n", command);
+      free (command);
+    }
+
+  exitstatus = execute ("python", "python", argv, false, false, false,
+                        null_stderr, true, true, NULL);
+  err = (exitstatus != 0);
+
+  freea (argv);
+
+  return err;
+}
+/* ============================= Main function ============================= */
+
+bool
+compile_python_class (const char * const *python_sources,
+                    unsigned int python_sources_count,
+                    bool verbose)
+{
+  bool err = false;
+  err = compile_using_python (python_sources, python_sources_count,
+                                     verbose,
+                                     false);
+                                     false);
+  return err;
+}
diff --git a/lib/pythoncomp.h b/lib/pythoncomp.h
new file mode 100644
index 0000000..0f1efc6
--- /dev/null
+++ b/lib/pythoncomp.h
@@ -0,0 +1,31 @@
+/* Compile a Python program.
+   Copyright (C) 2001-2002, 2009-2013 Free Software Foundation, Inc.
+   Copied from javaexec.h.
+
+   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 3 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, see <http://www.gnu.org/licenses/>.  */
+
+#ifndef _PYTHONCOMP_H
+#define _PYTHONCOMP_H
+
+#include <stdbool.h>
+
+/* Compile (Really Syntax Check) a Python source file
+   python_sources is an array of source file names.
+   If verbose, the command to be executed will be printed.
+   Return false if OK, true on error.  */
+extern bool compile_python_class (const char * const *python_sources,
+                                unsigned int python_sources_count,
+                                bool verbose);
+
+#endif /* _PYTHONCOMP_H */
diff --git a/lib/pythonexec.c b/lib/pythonexec.c
new file mode 100644
index 0000000..b87c9ae
--- /dev/null
+++ b/lib/pythonexec.c
@@ -0,0 +1,180 @@
+/* Execute a Python program.
+   Copyright (C) 2001-2003, 2006-2013 Free Software Foundation, Inc.
+   Written by Bruno Haible <address@hidden>, 2001.
+
+   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 3 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, see <http://www.gnu.org/licenses/>.  */
+
+#include <config.h>
+#include <alloca.h>
+
+/* Specification.  */
+#include "pythonexec.h"
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "execute.h"
+#include "classpath.h"
+#include "xsetenv.h"
+#include "sh-quote.h"
+#include "concat-filename.h"
+#include "xalloc.h"
+#include "xmalloca.h"
+#include "error.h"
+#include "gettext.h"
+
+#define _(str) gettext (str)
+
+
+bool
+execute_python_class (const char *program_name,
+                    const char * const *args,
+                    bool verbose, bool quiet,
+                    execute_fn *executer, void *private_data)
+{
+  bool err = false;
+  unsigned int nargs;
+  char *old_PYTHON_HOME;
+
+  /* Count args.  */
+  {
+    const char * const *arg;
+
+    for (nargs = 0, arg = args; *arg != NULL; nargs++, arg++)
+     ;
+  }
+
+  {
+    const char *python = getenv ("PYTHON");
+    if (python != NULL && python[0] != '\0')
+      {
+        /* Because $PYTHON may consist of a command and options, we use the
+           shell.  Because $PYTHON has been set by the user, we leave all
+           all environment variables in place, including PYTHON_HOME.
+        */
+        unsigned int command_length;
+        char *command;
+        char *argv[4];
+        const char * const *arg;
+        char *p;
+
+        command_length = strlen (python);
+        command_length += 1 + shell_quote_length (program_name);
+        for (arg = args; *arg != NULL; arg++)
+          command_length += 1 + shell_quote_length (*arg);
+        command_length += 1;
+
+        command = (char *) xmalloca (command_length);
+        p = command;
+        /* Don't shell_quote $PYTHON, because it may consist of a command
+           and options.  */
+        memcpy (p, python, strlen (python));
+        p += strlen (python);
+        *p++ = ' ';
+        p = shell_quote_copy (p, program_name);
+        for (arg = args; *arg != NULL; arg++)
+          {
+            *p++ = ' ';
+            p = shell_quote_copy (p, *arg);
+          }
+        *p++ = '\0';
+        /* Ensure command_length was correctly calculated.  */
+        if (p - command > command_length)
+          abort ();
+
+        if (verbose)
+          printf ("%s\n", command);
+
+        argv[0] = "/bin/sh";
+        argv[1] = "-c";
+        argv[2] = command;
+        argv[3] = NULL;
+        err = executer (python, "/bin/sh", argv, private_data);
+
+        freea (command);
+
+        /* Reset CLASSPATH.  */
+        reset_classpath (old_classpath);
+
+        goto done1;
+      }
+  }
+
+  /* Unset the PYTHON_HOME environment variable.  */
+  old_PYTHON_HOME = getenv ("PYTHON_HOME");
+  if (old_PYTHON_HOME != NULL)
+    {
+      old_PYTHON_HOME = xstrdup (old_PYTHON_HOME);
+      unsetenv ("PYTHON_HOME");
+    }
+
+  {
+    static bool python_tested;
+    static bool python_present;
+
+    if (!python_tested)
+      {
+        /* Test for presence of python: "python --version 2> /dev/null"  */
+        char *argv[3];
+        int exitstatus;
+
+        argv[0] = "python";
+        argv[1] = "--version";
+        argv[2] = NULL;
+        exitstatus = execute ("python", "python", argv, false, false, true, 
true,
+                              true, false, NULL);
+        python_present = (exitstatus == 0);
+        python_tested = true;
+      }
+
+    if (python_present)
+      {
+        char **argv = (char **) xmalloca ((2 + nargs + 1) * sizeof (char *));
+        unsigned int i;
+
+        argv[0] = "python";
+        argv[1] = (char *) program_name;
+        for (i = 0; i <= nargs; i++)
+          argv[2 + i] = (char *) args[i];
+
+        if (verbose)
+          {
+            char *command = shell_quote_argv (argv);
+            printf ("%s\n", command);
+            free (command);
+          }
+
+        err = executer ("python", "python", argv, private_data);
+
+        freea (argv);
+
+        goto done2;
+      }
+  }
+
+  if (!quiet)
+    error (0, 0, _("Python virtual machine not found."));
+  err = true;
+
+ done2:
+  if (old_PYTHON_HOME != NULL)
+    {
+      xsetenv ("PYTHON_HOME", old_PYTHON_HOME, 1);
+      free (old_PYTHON_HOME);
+    }
+
+ done1:
+  return err;
+}
diff --git a/lib/pythonexec.h b/lib/pythonexec.h
new file mode 100644
index 0000000..1cd8bce
--- /dev/null
+++ b/lib/pythonexec.h
@@ -0,0 +1,40 @@
+/* Execute a Python program.
+   Copyright (C) 2001-2002, 2009-2013 Free Software Foundation, Inc.
+   Copied from javaexec.h.
+
+   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 3 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, see <http://www.gnu.org/licenses/>.  */
+
+#ifndef _PYTHONEXEC_H
+#define _PYTHONEXEC_H
+
+#include <stdbool.h>
+
+typedef bool execute_fn (const char *progname,
+                         const char *prog_path, char **prog_argv,
+                         void *private_data);
+
+/* Execute a Python program
+   program_name is the Python program name to be executed.
+   args is a NULL terminated list of arguments to be passed to the program.
+   If verbose, the command to be executed will be printed.
+   Then the command is passed to the execute function together with the
+   private_data argument.  This function returns false if OK, true on error.
+   Return false if OK, true on error.
+   If quiet, error messages will not be printed.  */
+extern bool execute_python_class (const char *program_name,
+                                const char * const *args,
+                                bool verbose, bool quiet,
+                                execute_fn *executer, void *private_data);
+
+#endif /* _PYTHONEXEC_H */
diff --git a/m4/pythoncomp.m4 b/m4/pythoncomp.m4
new file mode 100644
index 0000000..218f2f0
--- /dev/null
+++ b/m4/pythoncomp.m4
@@ -0,0 +1,55 @@
+# pythoncomp.m4 serial 5
+dnl Copyright (C) 2001-2003, 2006, 2009-2013 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+# Prerequisites of pythoncomp.sh.
+# gt_PYTHONCOMP or gt_PYTHONCOMP(testclass, its-directory)
+# Sets HAVE_PYTHONCOMP to nonempty if pythoncomp.sh will work.
+
+AC_DEFUN([gt_PYTHONCOMP],
+[
+  AC_MSG_CHECKING([for Python])
+  AC_EGREP_CPP([yes], [
+#if defined _WIN32 || defined __WIN32__ || defined __CYGWIN__ || defined 
__EMX__ || defined __DJGPP__
+  yes
+#endif
+], CLASSPATH_SEPARATOR=';', CLASSPATH_SEPARATOR=':')
+  CONF_PYTHONC=
+  HAVE_PYTHON_ENVVAR=
+  HAVE_PYTHON=
+  HAVE_PYTHONCOMP=1
+  if test -n "$PYTHON"; then
+    HAVE_PYTHON_ENVVAR=1
+    CONF_PYTHONC="$PYTHON -t -t -m py_compile"
+  else
+    pushdef([AC_MSG_CHECKING],[:])dnl
+    pushdef([AC_CHECKING],[:])dnl
+    pushdef([AC_MSG_RESULT],[:])dnl
+    AC_CHECK_PROG([HAVE_PYTHON_IN_PATH], [python], [yes])
+    popdef([AC_MSG_RESULT])dnl
+    popdef([AC_CHECKING])dnl
+    popdef([AC_MSG_CHECKING])dnl
+    if test -n "$HAVE_PYTHON_IN_PATH" \
+       && python --version >/dev/null 2>/dev/null \
+       ifelse([$1], , , [&& {
+         echo "$as_me:__oline__: gij $1" >&AS_MESSAGE_LOG_FD
+         python $1 >&AS_MESSAGE_LOG_FD 2>&1
+       }]); then
+        HAVE_PYTHON=1
+        CONF_PYTHONC="python -t -t -m py_compile"
+    fi
+  fi
+  if test -n "$HAVE_PYTHONCOMP"; then
+    ac_result="$CONF_PYTHONC"
+  else
+    ac_result="no"
+  fi
+  AC_MSG_RESULT([$ac_result])
+  AC_SUBST([CONF_PYTHONC])
+  AC_SUBST([CLASSPATH])
+  AC_SUBST([CLASSPATH_SEPARATOR])
+  AC_SUBST([HAVE_PYTHON_ENVVAR])
+  AC_SUBST([HAVE_PYTHON])
+])
diff --git a/m4/pythonexec.m4 b/m4/pythonexec.m4
new file mode 100644
index 0000000..1c2d3a7
--- /dev/null
+++ b/m4/pythonexec.m4
@@ -0,0 +1,55 @@
+# pythonexec.m4 serial 5
+dnl Copyright (C) 2001-2003, 2006, 2009-2013 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+# Prerequisites of pythonexec.sh.
+# gt_PYTHONEXEC or gt_PYTHONEXEC(testclass, its-directory)
+# Sets HAVE_PYTHONEXEC to nonempty if pythonexec.sh will work.
+
+AC_DEFUN([gt_PYTHONEXEC],
+[
+  AC_MSG_CHECKING([for Python])
+  AC_EGREP_CPP([yes], [
+#if defined _WIN32 || defined __WIN32__ || defined __CYGWIN__ || defined 
__EMX__ || defined __DJGPP__
+  yes
+#endif
+], CLASSPATH_SEPARATOR=';', CLASSPATH_SEPARATOR=':')
+  CONF_PYTHON=
+  HAVE_PYTHON_ENVVAR=
+  HAVE_PYTHON=
+  HAVE_PYTHONEXEC=1
+  if test -n "$PYTHON"; then
+    HAVE_PYTHON_ENVVAR=1
+    CONF_PYTHON="$PYTHON"
+  else
+    pushdef([AC_MSG_CHECKING],[:])dnl
+    pushdef([AC_CHECKING],[:])dnl
+    pushdef([AC_MSG_RESULT],[:])dnl
+    AC_CHECK_PROG([HAVE_PYTHON_IN_PATH], [python], [yes])
+    popdef([AC_MSG_RESULT])dnl
+    popdef([AC_CHECKING])dnl
+    popdef([AC_MSG_CHECKING])dnl
+    if test -n "$HAVE_PYTHON_IN_PATH" \
+       && python --version >/dev/null 2>/dev/null \
+       ifelse([$1], , , [&& {
+         echo "$as_me:__oline__: gij $1" >&AS_MESSAGE_LOG_FD
+         python $1 >&AS_MESSAGE_LOG_FD 2>&1
+       }]); then
+        HAVE_PYTHON=1
+        CONF_PYTHON="python"
+    fi
+  fi
+  if test -n "$HAVE_PYTHONEXEC"; then
+    ac_result="$CONF_PYTHON"
+  else
+    ac_result="no"
+  fi
+  AC_MSG_RESULT([$ac_result])
+  AC_SUBST([CONF_PYTHON])
+  AC_SUBST([CLASSPATH])
+  AC_SUBST([CLASSPATH_SEPARATOR])
+  AC_SUBST([HAVE_PYTHON_ENVVAR])
+  AC_SUBST([HAVE_PYTHON])
+])
diff --git a/modules/pythoncomp b/modules/pythoncomp
new file mode 100644
index 0000000..ea5710f
--- /dev/null
+++ b/modules/pythoncomp
@@ -0,0 +1,46 @@
+Description:
+Compile a Python program.
+
+Files:
+lib/pythoncomp.h
+lib/pythoncomp.c
+
+Depends-on:
+stdbool
+unistd
+pythonversion
+execute
+spawn-pipe
+wait-process
+classpath
+xsetenv
+sh-quote
+binary-io
+safe-read
+xalloc
+xmalloca
+getline
+xconcat-filename
+fwriteerror
+clean-temp
+error
+xvasprintf
+c-strstr
+gettext-h
+pythoncomp-script
+
+configure.ac:
+
+Makefile.am:
+lib_SOURCES += pythoncomp.h pythoncomp.c
+
+Include:
+"pythoncomp.h"
+
+License:
+GPL
+
+Maintainer:
+Dennis Heimbigner
+
+
diff --git a/modules/pythoncomp-script b/modules/pythoncomp-script
new file mode 100644
index 0000000..8536a37
--- /dev/null
+++ b/modules/pythoncomp-script
@@ -0,0 +1,20 @@
+Description:
+Script to compile a Python program.
+
+Files:
+build-aux/pythoncomp.sh.in
+m4/pythoncomp.m4
+
+Depends-on:
+
+configure.ac:
+# You need to invoke gt_PYTHONCOMP yourself, possibly with arguments.
+AC_CONFIG_FILES([pythoncomp.sh:build-aux/pythoncomp.sh.in])
+
+Makefile.am:
+
+License:
+GPLed build tool
+
+Maintainer:
+Dennis Heimbigner
diff --git a/modules/pythonexec b/modules/pythonexec
new file mode 100644
index 0000000..92209b7
--- /dev/null
+++ b/modules/pythonexec
@@ -0,0 +1,36 @@
+Description:
+Execute a Python program.
+
+Files:
+lib/pythonexec.h
+lib/pythonexec.c
+
+Depends-on:
+stdbool
+execute
+classpath
+xsetenv
+sh-quote
+xconcat-filename
+xalloc
+xmalloca
+error
+gettext-h
+pythonexec-script
+
+configure.ac:
+
+Makefile.am:
+DEFS += -DEXEEXT=\"@address@hidden"
+lib_SOURCES += pythonexec.h pythonexec.c
+
+Include:
+"pythonexec.h"
+
+License:
+GPL
+
+Maintainer:
+Dennis Heimbigner
+
+
diff --git a/modules/pythonexec-script b/modules/pythonexec-script
new file mode 100644
index 0000000..6ef6b41
--- /dev/null
+++ b/modules/pythonexec-script
@@ -0,0 +1,24 @@
+Description:
+Execute a Python program.
+
+Files:
+build-aux/pythonexec.sh.in
+m4/pythonexec.m4
+
+Depends-on:
+
+configure.ac:
+# You need to invoke gt_PYTHONEXEC yourself, possibly with arguments.
+AC_CONFIG_FILES([pythonexec.sh:build-aux/pythonexec.sh.in])
+
+Makefile.am:
+
+Include:
+
+License:
+GPLed build tool
+
+Maintainer:
+Dennis Heimbigner
+
+
-- 
1.8.4.rc0.1.g8f6a3e5



reply via email to

[Prev in Thread] Current Thread [Next in Thread]