Remove QNX port - Mailing list pgsql-patches

From Bruce Momjian
Subject Remove QNX port
Date
Msg-id 200601050151.k051pK626950@candle.pha.pa.us
Whole thread Raw
List pgsql-patches
This applied patch removes the QNX port.  The removal of this port has
been discussed for several releases because it is invasive and not
reportedly used by anyone anymore.

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
cvs diff: doc/FAQ_QNX4 was removed, no comparison available
Index: configure
===================================================================
RCS file: /cvsroot/pgsql/configure,v
retrieving revision 1.469
diff -c -c -r1.469 configure
*** configure    17 Dec 2005 00:35:49 -0000    1.469
--- configure    5 Jan 2006 01:40:22 -0000
***************
*** 1511,1517 ****
  nextstep*) template=nextstep ;;
   openbsd*) template=openbsd ;;
       osf*) template=osf ;;
-      qnx*) template=qnx4 ;;
       sco*) template=sco ;;
   solaris*) template=solaris ;;
     sunos*) template=sunos4 ;;
--- 1511,1516 ----
Index: configure.in
===================================================================
RCS file: /cvsroot/pgsql/configure.in,v
retrieving revision 1.439
diff -c -c -r1.439 configure.in
*** configure.in    17 Dec 2005 00:35:50 -0000    1.439
--- configure.in    5 Jan 2006 01:40:23 -0000
***************
*** 64,70 ****
  nextstep*) template=nextstep ;;
   openbsd*) template=openbsd ;;
       osf*) template=osf ;;
-      qnx*) template=qnx4 ;;
       sco*) template=sco ;;
   solaris*) template=solaris ;;
     sunos*) template=sunos4 ;;
--- 64,69 ----
Index: doc/src/sgml/installation.sgml
===================================================================
RCS file: /cvsroot/pgsql/doc/src/sgml/installation.sgml,v
retrieving revision 1.250
diff -c -c -r1.250 installation.sgml
*** doc/src/sgml/installation.sgml    4 Dec 2005 03:52:29 -0000    1.250
--- doc/src/sgml/installation.sgml    5 Jan 2006 01:40:24 -0000
***************
*** 2038,2059 ****
        <entry>1.5</entry>
       </row>
       <row>
-       <entry><systemitem class="osname">QNX 4 RTOS</></entry>
-       <entry><systemitem>x86</></entry>
-       <entry>7.2</entry>
-       <entry>Bernd Tegge (<email>tegge@repas-aeg.de</email>), 2001-12-10
-       </entry>
-       <entry>needs updates to semaphore code;
-        see also <filename>doc/FAQ_QNX4</filename></entry>
-      </row>
-      <row>
-       <entry><systemitem class="osname">QNX RTOS v6</></entry>
-       <entry><systemitem>x86</></entry>
-       <entry>7.2</entry>
-       <entry>Igor Kovalenko (<email>Igor.Kovalenko@motorola.com</email>), 2001-11-20</entry>
-       <entry>patches available in archives, but too late for 7.2</entry>
-      </row>
-      <row>
        <entry><systemitem class="osname">SCO OpenServer</></entry>
        <entry><systemitem>x86</></entry>
        <entry>7.3.1</entry>
--- 2038,2043 ----
Index: doc/src/sgml/runtime.sgml
===================================================================
RCS file: /cvsroot/pgsql/doc/src/sgml/runtime.sgml,v
retrieving revision 1.359
diff -c -c -r1.359 runtime.sgml
*** doc/src/sgml/runtime.sgml    23 Dec 2005 23:28:35 -0000    1.359
--- doc/src/sgml/runtime.sgml    5 Jan 2006 01:40:25 -0000
***************
*** 480,489 ****
      relevant for <productname>PostgreSQL</>). Almost all modern
      operating systems provide these features, but not all of them have
      them turned on or sufficiently sized by default, especially systems
!     with BSD heritage. (For the <systemitem class="osname">Windows</>,
!     <systemitem class="osname">QNX</> and <systemitem class="osname">BeOS</>
!     ports, <productname>PostgreSQL</> provides its own replacement
!     implementation of these facilities.)
     </para>

     <para>
--- 480,488 ----
      relevant for <productname>PostgreSQL</>). Almost all modern
      operating systems provide these features, but not all of them have
      them turned on or sufficiently sized by default, especially systems
!     with BSD heritage. (For the <systemitem class="osname">Windows</> and
!     <systemitem class="osname">BeOS</> ports, <productname>PostgreSQL</>
!     provides its own replacement implementation of these facilities.)
     </para>

     <para>
Index: src/backend/Makefile
===================================================================
RCS file: /cvsroot/pgsql/src/backend/Makefile,v
retrieving revision 1.113
diff -c -c -r1.113 Makefile
*** src/backend/Makefile    9 Dec 2005 21:19:34 -0000    1.113
--- src/backend/Makefile    5 Jan 2006 01:40:25 -0000
***************
*** 27,40 ****
  # The backend doesn't need evecvs diff: src/backend/port/dynloader/qnx4.c was removed, no comparison available
cvs diff: src/backend/port/dynloader/qnx4.h was removed, no comparison available
cvs diff: src/backend/port/qnx4/Makefile was removed, no comparison available
cvs diff: src/backend/port/qnx4/ipc.h was removed, no comparison available
cvs diff: src/backend/port/qnx4/isnan.c was removed, no comparison available
cvs diff: src/backend/port/qnx4/sem.c was removed, no comparison available
cvs diff: src/backend/port/qnx4/sem.h was removed, no comparison available
cvs diff: src/backend/port/qnx4/shm.c was removed, no comparison available
cvs diff: src/backend/port/qnx4/shm.h was removed, no comparison available
cvs diff: src/backend/port/qnx4/tstsem.c was removed, no comparison available
cvs diff: src/backend/port/qnx4/tstshm.c was removed, no comparison available
rything that's in LIBS, however
  LIBS := $(filter-out -lz -lreadline -ledit -ltermcap -lncurses -lcurses, $(LIBS))

- ifeq ($(PORTNAME), qnx4)
- # This file crashes qnx4's wlink and is therefore not in
- # bootstrap/SUBSYS.o on that platform. (Wotta hack ... is it still
- # necessary?) [ Yes, until the Watcom compiler goes open source it's
- # effectively unsupported ]
- OBJS += bootstrap/bootstrap.o
- endif
-
  ##########################################################################

  all: submake-libpgport postgres $(POSTGRES_IMP)
--- 27,32 ----
Index: src/backend/bootstrap/Makefile
===================================================================
RCS file: /cvsroot/pgsql/src/backend/bootstrap/Makefile,v
retrieving revision 1.32
diff -c -c -r1.32 Makefile
*** src/backend/bootstrap/Makefile    29 Nov 2003 19:51:40 -0000    1.32
--- src/backend/bootstrap/Makefile    5 Jan 2006 01:40:25 -0000
***************
*** 12,27 ****

  override CPPFLAGS := -I$(srcdir) $(CPPFLAGS)

- # qnx4's wlink currently crashes with bootstrap.o
- ifneq ($(PORTNAME), qnx4)
  OBJS= bootparse.o bootstrap.o
- else
- OBJS= bootparse.o
- endif
-

! # make sure bootstrap.o is built even on qnx4
! all: SUBSYS.o bootstrap.o

  SUBSYS.o: $(OBJS)
      $(LD) $(LDREL) $(LDOUT) $@ $^
--- 12,20 ----

  override CPPFLAGS := -I$(srcdir) $(CPPFLAGS)

  OBJS= bootparse.o bootstrap.o

! all: SUBSYS.o

  SUBSYS.o: $(OBJS)
      $(LD) $(LDREL) $(LDOUT) $@ $^
Index: src/backend/port/Makefile
===================================================================
RCS file: /cvsroot/pgsql/src/backend/port/Makefile,v
retrieving revision 1.20
diff -c -c -r1.20 Makefile
*** src/backend/port/Makefile    29 Nov 2003 19:51:54 -0000    1.20
--- src/backend/port/Makefile    5 Jan 2006 01:40:25 -0000
***************
*** 25,33 ****

  OBJS+=$(TAS)

- ifeq ($(PORTNAME), qnx4)
- OBJS+=qnx4/SUBSYS.o
- endif
  ifeq ($(PORTNAME), beos)
  OBJS+=beos/SUBSYS.o
  endif
--- 25,30 ----
***************
*** 43,53 ****
  SUBSYS.o: $(OBJS)
      $(LD) $(LDREL) $(LDOUT) $@ $^

- qnx4/SUBSYS.o: qnx4.dir
-
- qnx4.dir:
-     $(MAKE) -C qnx4 all
-
  beos/SUBSYS.o: beos.dir

  beos.dir:
--- 40,45 ----
***************
*** 74,79 ****
      rm -f SUBSYS.o $(OBJS) ipc_test ipc_test.o
      $(MAKE) -C beos clean
      $(MAKE) -C darwin clean
-     $(MAKE) -C qnx4 clean
      $(MAKE) -C win32 clean

--- 66,70 ----
Index: src/backend/utils/misc/ps_status.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/utils/misc/ps_status.c,v
retrieving revision 1.27
diff -c -c -r1.27 ps_status.c
*** src/backend/utils/misc/ps_status.c    22 Nov 2005 18:17:26 -0000    1.27
--- src/backend/utils/misc/ps_status.c    5 Jan 2006 01:40:27 -0000
***************
*** 63,69 ****
  #define PS_USE_PS_STRINGS
  #elif (defined(BSD) || defined(__bsdi__) || defined(__hurd__)) && !defined(__darwin__)
  #define PS_USE_CHANGE_ARGV
! #elif defined(__linux__) || defined(_AIX) || defined(__sgi) || (defined(sun) && !defined(BSD)) || defined(ultrix) ||
defined(__ksr__)|| defined(__osf__) || defined(__QNX__) || defined(__svr4__) || defined(__svr5__) ||
defined(__darwin__)
  #define PS_USE_CLOBBER_ARGV
  #elif defined (WIN32)
  #define PS_USE_WIN32
--- 63,69 ----
  #define PS_USE_PS_STRINGS
  #elif (defined(BSD) || defined(__bsdi__) || defined(__hurd__)) && !defined(__darwin__)
  #define PS_USE_CHANGE_ARGV
! #elif defined(__linux__) || defined(_AIX) || defined(__sgi) || (defined(sun) && !defined(BSD)) || defined(ultrix) ||
defined(__ksr__)|| defined(__osf__) || defined(__svr4__) || defined(__svr5__) || defined(__darwin__) 
  #define PS_USE_CLOBBER_ARGV
  #elif defined (WIN32)
  #define PS_USE_WIN32
***************
*** 73,79 ****


  /* Different systems want the buffer padded differently */
! #if defined(_AIX) || defined(__linux__) || defined(__QNX__) || defined(__svr4__)
  #define PS_PADDING '\0'
  #else
  #define PS_PADDING ' '
--- 73,79 ----


  /* Different systems want the buffer padded differently */
! #if defined(_AIX) || defined(__linux__) || defined(__svr4__)
  #define PS_PADDING '\0'
  cvs diff: src/makefiles/Makefile.qnx4 was removed, no comparison available
cvs diff: src/template/qnx4 was removed, no comparison available#else
  #define PS_PADDING ' '
Index: src/backend/utils/sort/tuplesort.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/utils/sort/tuplesort.c,v
retrieving revision 1.56
diff -c -c -r1.56 tuplesort.c
*** src/backend/utils/sort/tuplesort.c    22 Nov 2005 18:17:27 -0000    1.56
--- src/backend/utils/sort/tuplesort.c    5 Jan 2006 01:40:28 -0000
***************
*** 2153,2159 ****
       * Some rather brain-dead implementations of qsort will sometimes call the
       * comparison routine to compare a value to itself.  (At this writing only
       * QNX 4 is known to do such silly things.)  Don't raise a bogus error in
!      * that case.
       */
      if (state->enforceUnique && !equal_hasnull && tuple1 != tuple2)
          ereport(ERROR,
--- 2153,2159 ----
       * Some rather brain-dead implementations of qsort will sometimes call the
       * comparison routine to compare a value to itself.  (At this writing only
       * QNX 4 is known to do such silly things.)  Don't raise a bogus error in
!      * that case.   Update: The QNX port is gone.
       */
      if (state->enforceUnique && !equal_hasnull && tuple1 != tuple2)
          ereport(ERROR,
Index: src/bin/ipcclean/ipcclean.sh
===================================================================
RCS file: /cvsroot/pgsql/src/bin/ipcclean/ipcclean.sh,v
retrieving revision 1.15
diff -c -c -r1.15 ipcclean.sh
*** src/bin/ipcclean/ipcclean.sh    29 Nov 2003 19:52:04 -0000    1.15
--- src/bin/ipcclean/ipcclean.sh    5 Jan 2006 01:40:28 -0000
***************
*** 36,52 ****
  # Feel free to add yours here.
  #-----------------------------------
  #
- # This is QNX 4.25
- #
- if [ `uname` = 'QNX' ]; then
-     if ps -eA  | grep -s '[p]ostmaster' >/dev/null 2>&1 ; then
-         echo "$CMDNAME: a postmaster is still running" 1>&2
-         exit 1
-     fi
-     rm -f /dev/shmem/PgS*
-     exit $?
- fi
- #
  # This is based on RedHat 5.2.
  #
  if [ `uname` = 'Linux' ]; then
--- 36,41 ----
Index: src/include/pg_config_manual.h
===================================================================
RCS file: /cvsroot/pgsql/src/include/pg_config_manual.h,v
retrieving revision 1.18
diff -c -c -r1.18 pg_config_manual.h
*** src/include/pg_config_manual.h    7 Oct 2005 20:11:03 -0000    1.18
--- src/include/pg_config_manual.h    5 Jan 2006 01:40:28 -0000
***************
*** 155,168 ****
  /*
   * Disable UNIX sockets for those operating system.
   */
! #if defined(__QNX__) || defined(__BEOS__) || defined(WIN32)
  #undef HAVE_UNIX_SOCKETS
  #endif

  /*
   * Define this if your operating system supports link()
   */
! #if !defined(__QNX__) && !defined(__BEOS__) && \
      !defined(WIN32) && !defined(__CYGWIN__)
  #define HAVE_WORKING_LINK 1
  #endif
--- 155,168 ----
  /*
   * Disable UNIX sockets for those operating system.
   */
! #if defined(__BEOS__) || defined(WIN32)
  #undef HAVE_UNIX_SOCKETS
  #endif

  /*
   * Define this if your operating system supports link()
   */
! #if !defined(__BEOS__) && \
      !defined(WIN32) && !defined(__CYGWIN__)
  #define HAVE_WORKING_LINK 1
  #endif
Index: src/include/storage/s_lock.h
===================================================================
RCS file: /cvsroot/pgsql/src/include/storage/s_lock.h,v
retrieving revision 1.146
diff -c -c -r1.146 s_lock.h
*** src/include/storage/s_lock.h    30 Dec 2005 21:43:41 -0000    1.146
--- src/include/storage/s_lock.h    5 Jan 2006 01:40:28 -0000
***************
*** 684,708 ****
  #endif    /* HPUX on IA64, non gcc */


- #if defined(__QNX__) && defined(__WATCOMC__)    /* QNX */
- /*
-  * QNX 4 using WATCOM C
-  */
- #define HAS_TEST_AND_SET
-
- typedef unsigned char slock_t;
-
- #define TAS(lock) wc_tas(lock)
- extern slock_t wc_tas(volatile slock_t *lock);
- #pragma aux wc_tas =\
-         "    mov   al,1    " \
-         " lock    xchg    al,[esi]" \
-         parm [esi]        \
-         value [al];
-
- #endif     /* __QNX__ and __WATCOMC__*/
-
-
  #if defined(__sgi)    /* SGI compiler */
  /*
   * SGI IRIX 5
--- 684,689 ----
Index: src/pl/plpgsql/src/Makefile
===================================================================
RCS file: /cvsroot/pgsql/src/pl/plpgsql
cvs diff: src/test/regress/expected/float8-exp-three-digits.out was removed, no comparison available
/src/Makefile,v
retrieving revision 1.27
diff -c -c -r1.27 Makefile
*** src/pl/plpgsql/src/Makefile    9 Dec 2005 21:19:36 -0000    1.27
--- src/pl/plpgsql/src/Makefile    5 Jan 2006 01:40:29 -0000
***************
*** 21,34 ****

  OBJS = pl_gram.o pl_handler.o pl_comp.o pl_exec.o pl_funcs.o

- ifneq ($(PORTNAME), qnx4)
  all: all-lib
- else
- all:
-     @echo "*****"
-     @echo "* PL/pgSQL was not built due to library manager problems."
-     @echo "*****"
- endif

  # Shared library stuff
  include $(top_srcdir)/src/Makefile.shlib
--- 21,27 ----
Index: src/port/isinf.c
===================================================================
RCS file: /cvsroot/pgsql/src/port/isinf.c,v
retrieving revision 1.7
diff -c -c -r1.7 isinf.c
*** src/port/isinf.c    15 Oct 2005 02:49:51 -0000    1.7
--- src/port/isinf.c    5 Jan 2006 01:40:29 -0000
***************
*** 74,91 ****
  }
  #endif
  #endif
-
- #ifdef __QNX__
- #include <float.h>
-
- int
- isinf(double x)
- {
-     if (x == HUGE_VAL)
-         return 1;
-     if (x == -HUGE_VAL)
-         return -1;
-     return 0;
- }
-
- #endif
--- 74,76 ----
Index: src/test/regress/pg_regress.sh
===================================================================
RCS file: /cvsroot/pgsql/src/test/regress/pg_regress.sh,v
retrieving revision 1.62
diff -c -c -r1.62 pg_regress.sh
*** src/test/regress/pg_regress.sh    9 Dec 2005 21:19:36 -0000    1.62
--- src/test/regress/pg_regress.sh    5 Jan 2006 01:40:29 -0000
***************
*** 216,222 ****
  # On some platforms we can't use Unix sockets.
  # ----------
  case $host_platform in
!     *-*-cygwin* | *-*-mingw32* | *-*-qnx* | *beos*)
          unix_sockets=no;;
      *)
          unix_sockets=yes;;
--- 216,222 ----
  # On some platforms we can't use Unix sockets.
  # ----------
  case $host_platform in
!     *-*-cygwin* | *-*-mingw32* | *beos*)
          unix_sockets=no;;
      *)
          unix_sockets=yes;;
***************
*** 228,234 ****
  # ----------

  case $host_platform in
!     *-*-qnx* | *-*-sco3.2v5*)
          DIFFFLAGS=-b;;
      *)
          DIFFFLAGS=-w;;
--- 228,234 ----
  # ----------

  case $host_platform in
!     *-*-sco3.2v5*)
          DIFFFLAGS=-b;;
      *)
          DIFFFLAGS=-w;;
Index: src/test/regress/resultmap
===================================================================
RCS file: /cvsroot/pgsql/src/test/regress/resultmap,v
retrieving revision 1.79
diff -c -c -r1.79 resultmap
*** src/test/regress/resultmap    23 Dec 2004 03:49:40 -0000    1.79
--- src/test/regress/resultmap    5 Jan 2006 01:40:29 -0000
***************
*** 1,11 ****
- float4/.*-qnx=float4-exp-three-digits
  float4/i.86-pc-mingw32=float4-exp-three-digits
  float8/i.86-.*-freebsd[234]=float8-small-is-zero
  float8/i.86-.*-openbsd=float8-small-is-zero
  float8/i.86-.*-netbsd=float8-small-is-zero
  float8/m68k-.*-netbsd=float8-small-is-zero
- float8/.*-qnx=float8-exp-three-digits
  float8/i.86-pc-mingw32=float8-exp-three-digits-win32
  float8/i.86-pc-cygwin=float8-small-is-zero
- int8/.*-qnx=int8-exp-three-digits
  int8/i.86-pc-mingw32=int8-exp-three-digits
--- 1,8 ----

pgsql-patches by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Stats collector performance improvement
Next
From: Bruce Momjian
Date:
Subject: Remove BEOS port