Skip site navigation (1) Skip section navigation (2)

State of the QNX Port

From: "Tegge, Bernd" <tegge(at)repas-aeg(dot)de>
To: pgsql-ports(at)postgresql(dot)org
Subject: State of the QNX Port
Date: 2001-03-01 10:04:52
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-ports
Andreas Kardos has left for greener pastures, so for now I'm stuck with
maintaining postgres on QNX4. I have some 10+ years of experience with QNX
but I know little about DBMS (including postgres).

I have tried to build the postgresql-7.1beta5 on QNX4.25. I have succeeded
in getting it to compile and link. However, during 'make check' the
postmaster enters a never ending loop. Beta4 fails with "IpcSemaphoreCreate:
semget : Invalid argument". I will look into this problem over
the weekend. So far here is the list of obstacles encountered :

* config/prep_buildtree :
   * caused configure to exit, because the QNX shell may or may not return
     an exit code of 0 if a script just ends without an exit statement.
     added an 'exit 0' as last line
   * the script  called from configure replaced all Makefiles with
     symlinks to themselves. This is because configure notices a difference
     between $abs_top_builddir and $abs_top_srcdir. However they are the
     same; the former just contains a net absolute path (i.e. has a
     //<node> prefix ). This might also happen if the path contains a
     symlink that is being resolved in one of the variables.
     probably QNX specific
---  Wed Feb 28 22:02:04 2001
+++ prep_buildtree      Wed Feb 28 22:26:01 2001
@@ -19,16 +19,26 @@


+# check if $buildtree is an alias of $sourcetree
+rm -f $buildtree/$$
+touch $sourcetree/$$
+if test -f $buildtree/$$ ; then
+  rm -f $sourcetree/$$
+  exit 0
+exit 0
  for item in `find "$sourcetree" -type d \( -name CVS -prune -o -print \)`; do
      subdir=`expr "$item" : "$sourcetree\(.*\)"`
      if test ! -d "$buildtree/$subdir"; then
-        mkdir -p "$buildtree/$subdir" || exit
+        mkdir -p "$buildtree/$subdir" || exit 1

  for item in `find "$sourcetree" -name Makefile -o -name GNUmakefile`; do
      subdir=`expr "$item" : "$sourcetree\(.*\)"`
      if test ! -f "${item}.in"; then
-        ln -fs "$item" "$buildtree/$subdir" || exit
+        ln -fs "$item" "$buildtree/$subdir" || exit 1
+exit 0

* The shell command for remove-old-headers in ~/src/include/Makefile gave a
   syntax error, because of a missing semicolon:

--- Makefile    Wed Feb 28 20:33:33 2001
+++ Makefile.bck        Wed Feb 28 20:33:33 2001
@@ -78,7 +78,7 @@
                         : ; \
                 else \
                         rm -f $(DESTDIR)$(includedir)/$$file; \
-               fi ; \
+               fi \

* missing -lz in ~/src/bin/pg_dump/Makefile for pg_dump and pg_restore.
   pg_dump and pg_restore make calls into the zlib, but have no -lz in the
   link command.

---        Wed Feb 28 22:28:49 2001
+++ Makefile    Wed Feb 28 22:15:21 2001
@@ -21,10 +21,10 @@
  all: submake pg_dump pg_restore pg_dumpall

  pg_dump: pg_dump.o common.o $(OBJS) $(libpq_builddir)/libpq.a
-       $(CC) $(CFLAGS) pg_dump.o common.o $(OBJS) $(libpq) $(LDFLAGS) 
$(LIBS) -
o $@
+       $(CC) $(CFLAGS) pg_dump.o common.o $(OBJS) $(libpq) $(LDFLAGS) 
$(LIBS) -
lz -o $@

  pg_restore: pg_restore.o $(OBJS) $(libpq_builddir)/libpq.a
-       $(CC) $(CFLAGS) pg_restore.o $(OBJS) $(libpq) $(LDFLAGS) $(LIBS) -o $@
+       $(CC) $(CFLAGS) pg_restore.o $(OBJS) $(libpq) $(LDFLAGS) $(LIBS) -lz -o

         $(MAKE) -C ../../utils strdup.o

Changes :

- replacement ~/src/backend/port/dynloader/qnx4.h
   (clashed with the new fmgr code )

Bernd Tegge                  mailto:tegge(at)repas-aeg(dot)de
Tel: ++49-511-87449-12       repas AEG Automation GmbH
Fax: ++49-511-87449-20       GS Hannover, Germany


pgsql-ports by date

Next:From: Christian MeunierDate: 2001-03-01 12:12:51
Subject: Postmaster abort...
Previous:From: Tegge, BerndDate: 2001-02-28 09:45:55
Subject: Re: QNX

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group