diff options
-rw-r--r-- | Makefile.am | 2 | ||||
-rw-r--r-- | configure.ac | 1 | ||||
-rw-r--r-- | src/Makefile.am | 4 | ||||
-rw-r--r-- | src/vms_fab.c | 105 | ||||
-rw-r--r-- | src/vms_fab.h | 50 | ||||
-rw-r--r-- | vms/Makefile.am | 16 | ||||
-rw-r--r-- | vms/README | 22 | ||||
-rw-r--r-- | vms/config_vms.h | 56 | ||||
-rw-r--r-- | vms/make.com | 71 |
9 files changed, 2 insertions, 325 deletions
diff --git a/Makefile.am b/Makefile.am index 3ac91d62..5a0aacb0 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 f43c92fc..56452e75 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 73f3b189..991c3b5f 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 4106175b..00000000 --- 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 45f617a5..00000000 --- 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 e6228095..00000000 --- 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 110aaa81..00000000 --- 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 5cdb274d..00000000 --- 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 e1022487..00000000 --- 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 |