QNX4 port

From: "Kardos, Dr(dot) Andreas" <kardos(at)repas-aeg(dot)de>
To: <pgsql-ports(at)postgresql(dot)org>
Subject: QNX4 port
Date: 1999-12-15 17:18:51
Message-ID: 012c01bf4720$75cc92d0$99301eac@nt-kardos.Dr.repas.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-ports

I have done the QNX4 port with the current source tree. The number of
backend/Makefiles to be patched could significantly be reduced since they
have been adopted to the QNX4 needs.

Here are the completely new files:

pgsql/src/template/QNX
pgsql/src/makefiles/Makefile.qnx4
pgsql/src/include/port/qnx4.h
pgsql/src/backend/port/dynloader/qnx4.h
pgsql/src/backend/port/dynloader/qnx4.c
pgsql/src/backend/port/qnx4/Makefile
pgsql/src/backend/port/qnx4/ipc.h
pgsql/src/backend/port/qnx4/isnan.c
pgsql/src/backend/port/qnx4/rint.c
pgsql/src/backend/port/qnx4/sem.h
pgsql/src/backend/port/qnx4/sem.c
pgsql/src/backend/port/qnx4/shm.h
pgsql/src/backend/port/qnx4/shm.c
pgsql/src/backend/port/qnx4/tstrint.c
pgsql/src/backend/port/qnx4/tstsem.c
pgsql/src/backend/port/qnx4/tstshm.c

The following files have been extended with specific code:

pgsql/src/configure.in
pgsql/src/configure
pgsql/src/config.guess
pgsql/src/config.sub
pgsql/src/include/storage/s_lock.h
pgsql/src/backend/port/Makefile.in
pgsql/src/backend/port/isinf.c

The extension in s_lock.h is required for the Watcom compiler only. But
nevertheless it should be included because this code has been tested and
could be usefull for other new platforms.

These files have been extended to avoid conflicts/problems:

pgsql/src/include/utils/builtins.h
pgsql/src/backend/postmaster/postmaster.c
pgsql/src/test/regress/regress.sh

The following files could be changed in general but to avoid potential
problems on other platforms they have been extended with IFs. The mkdir
problem can simply be solved with a preceeding "-". Obviously there is a
problems with return codes on QNX. The "[ test ] && action" solution doesn't
help since it has the same behaviour.

pgsql/src/backend/Makefile
pgsql/src/bin/scripts/Makefile
pgsql/src/interfaces/libpgeasy/Makefile.in
pgsql/src/interfaces/libpgtcl/Makefile.in
pgsql/src/interfaces/libpq/Makefile.in
pgsql/src/interfaces/libpq++/Makefile.in

I have inserted a required #include again which has been kicked out since
6.5.2:
pgsql/src/backend/storage/lmgr/proc.c

The following Makefiles have been changed because the QNX archiver wlib
crashes with bootstrap.o. These crashes depend on the code of the object
files. It is not known when this happens. This problem comes and goes. In
6.5.2 ipc.o also caused a crash but with the current source not. So it could
make sense not to change the related Makefiles in this matter because in
following releases may be another behavior. Probably it would be better to
address this problem in README.qnx4.

The files ipc.h, sem.h and shm.h should be linked to /usr/include. The
README.qnx4 will be updated after the QNX port has been included into the
source tree.

The files themselves will be sent to pgsql-patches.

Andreas Kardos

Responses

Browse pgsql-ports by date

  From Date Subject
Next Message Jeff MacDonald 1999-12-15 20:24:30 Mac OS X
Previous Message laurentiu c 1999-12-15 03:36:26 problem with initdb in windows nt 4.0