PATCH RFC: Remove OS/2 pexecute support from libiberty

Ian Lance Taylor ian@airs.com
Mon Mar 7 21:36:00 GMT 2005


OS/2 host support was removed from gcc four years ago:
    http://gcc.gnu.org/ml/gcc-patches/2001-02/msg01524.html

There is no OS/2 support in the GNU binutils or in gdb.

However, there is still lingering OS/2 host support for the pexecute
function in libiberty.

I plan to remove it.  Any objections?

Ian


2005-03-07  Ian Lance Taylor  <ian@airs.com>

	* pex-os2.c: Remove.
	* configure.ac: Remove *-*-os2-emx* case when setting pexecute.
	* Makefile.in (CFILES): Remove pex-os2.c.
	(CONFIGURED_OFILES): Remove pex-os2.o.
	(pex-os2.o): Remove target.
	* configure: Rebuild.


Index: Makefile.in
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/Makefile.in,v
retrieving revision 1.107
diff -u -r1.107 Makefile.in
--- Makefile.in	7 Mar 2005 21:07:47 -0000	1.107
+++ Makefile.in	7 Mar 2005 21:30:22 -0000
@@ -142,7 +142,7 @@
 	 mempcpy.c memset.c mkstemps.c					\
 	objalloc.c obstack.c						\
 	partition.c							\
-	 pex-djgpp.c pex-msdos.c pex-os2.c				\
+	 pex-djgpp.c pex-msdos.c					\
 	 pex-unix.c pex-win32.c						\
          physmem.c putenv.c						\
 	random.c regex.c rename.c rindex.c				\
@@ -188,7 +188,7 @@
 	./index.o ./insque.o						\
 	./memchr.o ./memcmp.o ./memcpy.o ./memmove.o ./mempcpy.o	\
 	 ./memset.o ./mkstemps.o					\
-	./pex-djgpp.o ./pex-msdos.o ./pex-os2.o			\
+	./pex-djgpp.o ./pex-msdos.o					\
 	 ./pex-unix.o ./pex-win32.o					\
 	 ./putenv.o							\
 	./random.o ./rename.o ./rindex.o				\
@@ -758,13 +758,6 @@
 	else true; fi
 	$(COMPILE.c) $(srcdir)/pex-msdos.c $(OUTPUT_OPTION)
 
-./pex-os2.o: $(srcdir)/pex-os2.c config.h $(INCDIR)/ansidecl.h \
-	$(INCDIR)/libiberty.h $(srcdir)/pex-common.h
-	if [ x"$(PICFLAG)" != x ]; then \
-	  $(COMPILE.c) $(PICFLAG) $(srcdir)/pex-os2.c -o pic/$@; \
-	else true; fi
-	$(COMPILE.c) $(srcdir)/pex-os2.c $(OUTPUT_OPTION)
-
 ./pex-unix.o: $(srcdir)/pex-unix.c config.h $(INCDIR)/ansidecl.h \
 	$(INCDIR)/libiberty.h $(srcdir)/pex-common.h
 	if [ x"$(PICFLAG)" != x ]; then \
Index: configure
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/configure,v
retrieving revision 1.86
diff -u -r1.86 configure
--- configure	6 Mar 2005 17:41:16 -0000	1.86
+++ configure	7 Mar 2005 21:30:24 -0000
@@ -6709,7 +6709,6 @@
      *-*-mingw* | *-*-winnt*)	pexecute=./pex-win32.o  ;;
      *-*-msdosdjgpp*)		pexecute=./pex-djgpp.o  ;;
      *-*-msdos*)		pexecute=./pex-msdos.o  ;;
-     *-*-os2-emx*)		pexecute=./pex-os2.o    ;;
      *)				pexecute=./pex-unix.o   ;;
 esac
 
Index: configure.ac
===================================================================
RCS file: /cvs/gcc/gcc/libiberty/configure.ac,v
retrieving revision 1.13
diff -u -r1.13 configure.ac
--- configure.ac	6 Mar 2005 17:41:16 -0000	1.13
+++ configure.ac	7 Mar 2005 21:30:24 -0000
@@ -523,7 +523,6 @@
      *-*-mingw* | *-*-winnt*)	pexecute=./pex-win32.o  ;;
      *-*-msdosdjgpp*)		pexecute=./pex-djgpp.o  ;;
      *-*-msdos*)		pexecute=./pex-msdos.o  ;;
-     *-*-os2-emx*)		pexecute=./pex-os2.o    ;;
      *)				pexecute=./pex-unix.o   ;;
 esac
 AC_SUBST(pexecute)
Index: pex-os2.c
===================================================================
RCS file: pex-os2.c
diff -N pex-os2.c
--- pex-os2.c	24 Jan 2003 20:02:11 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,72 +0,0 @@
-/* Utilities to execute a program in a subprocess (possibly linked by pipes
-   with other subprocesses), and wait for it.  OS/2 specialization.
-   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003
-   Free Software Foundation, Inc.
-
-This file is part of the libiberty library.
-Libiberty is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public
-License as published by the Free Software Foundation; either
-version 2 of the License, or (at your option) any later version.
-
-Libiberty 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
-Library General Public License for more details.
-
-You should have received a copy of the GNU Library General Public
-License along with libiberty; see the file COPYING.LIB.  If not,
-write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA.  */
-
-#include "pex-common.h"
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#ifdef HAVE_SYS_WAIT_H
-#include <sys/wait.h>
-#endif
-
-/* ??? Does OS2 have process.h?  */
-extern int spawnv ();
-extern int spawnvp ();
-
-int
-pexecute (program, argv, this_pname, temp_base, errmsg_fmt, errmsg_arg, flags)
-     const char *program;
-     char * const *argv;
-     const char *this_pname;
-     const char *temp_base;
-     char **errmsg_fmt, **errmsg_arg;
-     int flags;
-{
-  int pid;
-
-  if ((flags & PEXECUTE_ONE) != PEXECUTE_ONE)
-    abort ();
-  /* ??? Presumably 1 == _P_NOWAIT.  */
-  pid = (flags & PEXECUTE_SEARCH ? spawnvp : spawnv) (1, program, argv);
-  if (pid == -1)
-    {
-      *errmsg_fmt = install_error_msg;
-      *errmsg_arg = program;
-      return -1;
-    }
-  return pid;
-}
-
-int
-pwait (pid, status, flags)
-     int pid;
-     int *status;
-     int flags;
-{
-  /* ??? Here's an opportunity to canonicalize the values in STATUS.
-     Needed?  */
-  int pid = wait (status);
-  return pid;
-}



More information about the Binutils mailing list