bug-grep
[Top][All Lists]
Advanced

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

Re: VMS support: deletable?


From: Jim Meyering
Subject: Re: VMS support: deletable?
Date: Fri, 02 Apr 2010 14:54:39 +0200

Jim Meyering wrote:
> The VMS support appears to be long-unused.
> If anyone is using it, please speak up now.
> I'm planning to remove grep's vms/ directory very soon.
>
> But fear not.
> If you actually do build grep on some ancient VMS system and
> speak up only after the removal, we can always put it back.

It's gone:

>From 49cd40d4d2f21ebd867434e13f03fcca22c6e613 Mon Sep 17 00:00:00 2001
From: Jim Meyering <address@hidden>
Date: Fri, 2 Apr 2010 12:43:40 +0200
Subject: [PATCH] maint: remove all VMS-related code

* configure.ac (AC_CONFIG_FILES): Remove vms/Makefile
* Makefile.am (SUBDIRS): Remove vms.
* src/Makefile.am (EXTRA_DIST): Remove vms_fab.c and vms_fab.h.
* src/vms_fab.c, src/vms_fab.h, vms/make.com: Remove files.
* vms/Makefile.am, vms/README, vms/config_vms.h: Likewise.
---
 Makefile.am      |    2 +-
 configure.ac     |    1 -
 src/Makefile.am  |    4 +--
 src/vms_fab.c    |  105 ------------------------------------------------------
 src/vms_fab.h    |   50 -------------------------
 vms/Makefile.am  |   16 --------
 vms/README       |   22 -----------
 vms/config_vms.h |   56 -----------------------------
 vms/make.com     |   71 ------------------------------------
 9 files changed, 2 insertions(+), 325 deletions(-)
 delete mode 100644 src/vms_fab.c
 delete mode 100644 src/vms_fab.h
 delete mode 100644 vms/Makefile.am
 delete mode 100644 vms/README
 delete mode 100644 vms/config_vms.h
 delete mode 100644 vms/make.com

diff --git a/Makefile.am b/Makefile.am
index 3ac91d6..5a0aacb 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -18,7 +18,7 @@
 AUTOMAKE_OPTIONS = gnu 1.10
 ACLOCAL_AMFLAGS = -I m4

-SUBDIRS = po lib doc src tests vms gnulib-tests
+SUBDIRS = po lib doc src tests gnulib-tests

 EXTRA_DIST = build-aux/config.rpath TODO README README-alpha \
             Makefile.boot README-boot
diff --git a/configure.ac b/configure.ac
index f43c92f..56452e7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -158,7 +158,6 @@ AC_CONFIG_FILES([
   tests/Makefile
   po/Makefile.in
   doc/Makefile
-  vms/Makefile
   gnulib-tests/Makefile
 ])
 AC_OUTPUT
diff --git a/src/Makefile.am b/src/Makefile.am
index 73f3b18..991c3b5 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -42,6 +42,4 @@ grep_LDADD = $(LDADD) $(LIB_PCRE)
 localedir = $(datadir)/locale
 AM_CPPFLAGS = -I$(top_builddir)/lib -I$(top_srcdir)/lib

-EXTRA_DIST = \
-             dosbuf.c \
-             vms_fab.c vms_fab.h
+EXTRA_DIST = dosbuf.c
diff --git a/src/vms_fab.c b/src/vms_fab.c
deleted file mode 100644
index 4106175..0000000
--- a/src/vms_fab.c
+++ /dev/null
@@ -1,105 +0,0 @@
-     /*
-   Copyright (C) 1992, 1997-2002, 2004-2010 Free Software Foundation, Inc.
-
-   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, 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., 51 Franklin Street - Fifth Floor, Boston, MA
-   02110-1301, USA.  */
-
-        <vms_fab>
-
-        This macro sets up the file access block and name block for VMS.
-        It also does the initial parsing of the input string (resolving
-        wildcards,
-        if any) and finds all files matching the input pattern.
-        The address of the first matching pattern is returned.
-
-        Written by Phillip C. Brisco 8/98.
-      */
-
-#include <config.h>
-#include "vms_fab.h"
-
-void
-vms_fab (int * argp, char **argvp[])
-{
-  extern int optind;
-  int optout;
-
-  fab = cc$rms_fab;
-  nam = cc$rms_nam;
-
-  optout = 0;
-  strcpy (fna_buffer, *argvp[optind]);
-  length_of_fna_buffer = NAM$C_MAXRSS;
-
-  fab.fab$b_bid = FAB$C_BID;
-  fab.fab$b_bln = FAB$C_BLN;
-  fab.fab$l_fop = FAB$M_NAM;
-  fab.fab$l_nam = &nam;
-  fab.fab$l_fna = (char *)&fna_buffer;
-  fab.fab$b_fns = length_of_fna_buffer;
-
-  nam.nam$b_bid = NAM$C_BID;
-  nam.nam$b_bln = NAM$C_BLN;
-  nam.nam$l_esa = (char *)&expanded_name;
-  nam.nam$b_ess = NAM$C_MAXRSS;
-  nam.nam$l_rsa = (char *)&result_name;
-  nam.nam$b_rss = NAM$C_MAXRSS;
-
-  fab_stat = sys$parse (&fab);
-  fab_stat = sys$search (&fab);
-
-  if (fab_stat != 65537)
-    {
-      fprintf (stderr, "No Matches found.\n");
-      exit (EXIT_SUCCESS);
-    }
-
-  /*
-     While we find matching patterns, continue searching for more.
-   */
-  while (fab_stat == 65537)
-    {
-      /*
-         Allocate memory for the filename
-       */
-      arr_ptr[optout] = alloca (max_file_path_size + 1);
-
-      strcpy (arr_ptr[optout], result_name);
-
-      /*
-         If we don't tack on a null character at the end of the
-         filename,
-         we can get partial data which is still there from the last
-         sys$search command.
-       */
-      arr_ptr[optout][nam.nam$b_dev +
-                     nam.nam$b_dir +
-                     nam.nam$b_name +
-                     nam.nam$b_type +
-                     nam.nam$b_ver] = '\0';
-
-      fab_stat = sys$search (&fab);
-      optout++;
-    }
-
-  optout--;
-
-  /* Return a pointer to the beginning of memory that has the expanded
-     filenames.
-   */
-  *argp = optout;
-  *argvp = arr_ptr;
-
-}
diff --git a/src/vms_fab.h b/src/vms_fab.h
deleted file mode 100644
index 45f617a..0000000
--- a/src/vms_fab.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
-   Copyright (C) 1998-2002, 2004-2010 Free Software Foundation, Inc.
-
-   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, 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., 51 Franklin Street - Fifth Floor, Boston, MA
-   02110-1301, USA.  */
-
-   This file includes the setup for the file access block for VMS.
-   Written by Phillip C. Brisco 8/98.
- */
-
-#include <rms.h>
-#include <ssdef.h>
-#include <stddef.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <starlet.h>
-
-#if defined(VMS) && defined(__DECC) /* need function prototype */
-# if (__DECC_VER<50790004)           /* have an own one         */
-char *alloca(unsigned int);
-# else
-#  define alloca __ALLOCA
-# endif
-#endif
-
-
-struct FAB fab;
-struct NAM nam;
-
-int length_of_fna_buffer;
-int fab_stat;
-char expanded_name[NAM$C_MAXRSS];
-char fna_buffer[NAM$C_MAXRSS];
-char result_name[NAM$C_MAXRSS];
-char final_name[NAM$C_MAXRSS];
-int max_file_path_size = NAM$C_MAXRSS;
-char *arr_ptr[32767];
diff --git a/vms/Makefile.am b/vms/Makefile.am
deleted file mode 100644
index e622809..0000000
--- a/vms/Makefile.am
+++ /dev/null
@@ -1,16 +0,0 @@
-## Process this file with automake to create Makefile.in
-# Copyright 1997-1998, 2005-2010 Free Software Foundation, Inc.
-#
-# 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, 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/>.
-EXTRA_DIST = README make.com config_vms.h
diff --git a/vms/README b/vms/README
deleted file mode 100644
index 110aaa8..0000000
--- a/vms/README
+++ /dev/null
@@ -1,22 +0,0 @@
-  Copyright (C) 1992, 1997-2002, 2004-2010 Free Software Foundation, Inc.
-
-  Copying and distribution of this file, with or without modification,
-  are permitted in any medium without royalty provided the copyright
-  notice and this notice are preserved.
-
-** VMS
-
-Warning: untested
-  VMS users should try running the enclosed command file "make.com".
-  It may be necessary to add :
-
-#ifdef vms
-#include <perror.h>
-#endif
-
-in system.h (see HAVE_STRERROR).
-
-  If you do not have NLS :
-
-#define ENABLE_NLS 0
-#define HAVE_LIBINTL_H 0
diff --git a/vms/config_vms.h b/vms/config_vms.h
deleted file mode 100644
index 5cdb274..0000000
--- a/vms/config_vms.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Configuration file for OpenVMS */
-
-/* Copyright (C) 1992, 1997-2002, 2004-2010 Free Software Foundation, Inc.
-
-   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, 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., 51 Franklin Street - Fifth Floor, Boston, MA
-   02110-1301, USA.  */
-
-#define HAVE_STRING_H 1
-
-#define HAVE_MEMCHAR
-
-#define HAVE_STRERROR
-
-#define HAVE_STDLIB_H 1
-
-#define HAVE_UNISTD_H 1
-
-#define STDC_HEADERS
-
-#define HAVE_DIRENT_H 1
-
-#define VERSION "2.4.1"
-/* Avoid namespace collision with operating system supplied C library */
-
-/* Make sure we have the C-RTL definitions */
-#include <unistd.h>
-#include <stdio.h>
-
-/* Now override everything with the GNU version */
-#ifdef VMS
-# define getopt gnu_getopt
-# define optarg gnu_optarg
-# define optopt gnu_optopt
-# define optind gnu_optind
-# define opterr gnu_opterr
-#endif
-
-#if defined(VMS) && defined(__DECC) /* need function prototype */
-#if (__DECC_VER<50790004)           /* have an own one         */
-char *alloca(unsigned int);
-#else
-#define alloca __ALLOCA
-#endif
-#endif
diff --git a/vms/make.com b/vms/make.com
deleted file mode 100644
index e102248..0000000
--- a/vms/make.com
+++ /dev/null
@@ -1,71 +0,0 @@
-$ ! Set the LOGICAL SYS to SYS$LIBRARY if it isn't defined
-$ ! so that #include <sys/...> will search SYS$LIBRARY for the file.
-$ IF F$TRNLNM("SYS") .EQS. "" THEN DEFINE SYS SYS$LIBRARY
-$ ccopt = "/include=sys$disk:[]"
-$ if (f$search("sys$system:decc$compiler.exe").nes."")
-$ then
-$   if f$getsyi("HW_MODEL").ge.1024
-$   then
-$     ccopt = "/prefix=all" + ccopt
-$   else
-$     ccopt = "/decc/prefix=all" + ccopt
-$   endif
-$ endif
-$ if f$extract(1,3,f$getsyi("Version")) .lts. "7.0"
-$ then
-$   if f$search("x11vms:xvmsutils.olb").eqs.""
-$   then
-$     type sys$input
-To build grep on OpenVMS versions prior to 7.x you need to install the
-xvmsutils to get the close-/open-/readdir functions. The library can be
-found at http://www.decus.de:8080/www/vms/sw/xvmsutils.htmlx
-
-Exiting now
-$     exit
-$   endif
-$   llib = ",x11vms:xvmsutils.olb/lib"
-$ else
-$   llib = ""
-$ endif
-$ copy [-.vms]config_vms.h config.h
-$ cdefs ="HAVE_CONFIG_H"
-$ WRITE SYS$OUTPUT "Compiling ALLOCA..."
-$ CC'ccopt' ALLOCA.C   /DEFINE=('cdefs')
-$ WRITE SYS$OUTPUT "Compiling DFA..."
-$ CC'ccopt' DFA.C      /DEFINE=('cdefs')
-$ WRITE SYS$OUTPUT "Compiling GETOPT..."
-$ CC'ccopt' GETOPT.C   /DEFINE=('cdefs')
-$ WRITE SYS$OUTPUT "Compiling GETOPT1..."
-$ CC'ccopt' GETOPT1.C   /DEFINE=('cdefs')
-$ WRITE SYS$OUTPUT "Compiling GREP..."
-$ CC'ccopt' GREP.C     /DEFINE=('cdefs',initialize_main="vms_fab")
-$ WRITE SYS$OUTPUT "Compiling KWSET..."
-$ CC'ccopt' KWSET.C    /DEFINE=('cdefs')
-$ WRITE SYS$OUTPUT "Compiling OBSTACK..."
-$ CC'ccopt' OBSTACK.C  /DEFINE=('cdefs')
-$ WRITE SYS$OUTPUT "Compiling REGEX..."
-$ CC'ccopt' REGEX.C    /DEFINE=('cdefs')
-$ WRITE SYS$OUTPUT "Compiling SAVEDIR..."
-$ CC'ccopt' SAVEDIR.C   /DEFINE=('cdefs')
-$ WRITE SYS$OUTPUT "Compiling SEARCH..."
-$ CC'ccopt' SEARCH.C   /DEFINE=('cdefs')
-$ WRITE SYS$OUTPUT "Compiling STPCPY..."
-$ CC'ccopt' STPCPY.C   /DEFINE=('cdefs')
-$ WRITE SYS$OUTPUT "Compiling VMS_FAB..."
-$ CC'ccopt' VMS_FAB.C   /DEFINE=('cdefs')
-$ WRITE SYS$OUTPUT "Compiling GREPMAT..."
-$ CC'ccopt' GREPMAT.C   /DEFINE=('cdefs')
-$ WRITE SYS$OUTPUT "Linking GREP..."
-$ LINK GREP,ALLOCA,DFA,GETOPT,GETOPT1,KWSET,OBSTACK,REGEX,SEARCH,VMS_FAB,-
-       SAVEDIR,STPCPY,GREPMAT'llib'
-$ WRITE SYS$OUTPUT "Compiling EGREPMAT..."
-$ CC'ccopt' EGREPMAT.C   /DEFINE=('cdefs')
-$ WRITE SYS$OUTPUT "Linking EGREP..."
-$ LINK/exe=egrep.exe 
grep,ALLOCA,DFA,GETOPT,GETOPT1,KWSET,OBSTACK,REGEX,SEARCH,-
-       VMS_FAB,SAVEDIR,STPCPY,EGREPMAT'llib'
-$ WRITE SYS$OUTPUT "Compiling FGREPMAT..."
-$ CC'ccopt' FGREPMAT.C   /DEFINE=('cdefs')
-$ WRITE SYS$OUTPUT "Linking FGREP..."
-$ LINK/exe=fgrep.exe 
GREP,ALLOCA,DFA,GETOPT,GETOPT1,KWSET,OBSTACK,REGEX,SEARCH,-
-       VMS_FAB,savedir,stpcpy,FGREPMAT'llib'
-$ EXIT
--
1.7.0.4.293.ga50de




reply via email to

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