Re: [PORTS] PostgreSQL 6.5.2 ported to QNX 4

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: "Kardos, Dr(dot) Andreas" <kardos(at)repas-aeg(dot)de>
Cc: Thomas Lockhart <lockhart(at)alumni(dot)caltech(dot)edu>, pgsql-ports(at)postgreSQL(dot)org
Subject: Re: [PORTS] PostgreSQL 6.5.2 ported to QNX 4
Date: 1999-12-09 16:23:57
Message-ID: 199912091623.LAA26090@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-ports

[Charset iso-8859-1 unsupported, filtering to ASCII...]
> >Send to the "patches" mailing list, unless the patches are
> >prohibitively large. afaik the upper limit on mail size for patches is
> >big.
>
>
> Done.

Got it.

>
> >If it is OK with you, I will put your summary of steps required into
> >our source tree as doc/FAQ_QNX. If you have access to the source tree
> >you can make changes from there, or if not I'll mail to you the file
> >as I've committed it and if it is OK you can make changes from that
> >version.
>

FAQ added to source tree.

>
> I am new to PostgreSQL so I probably don't have access to the source tree.
>
> >How would you suggest I mention it in the "ports list"? Since you need
> >to patch the sources, I guess it isn't "fully supported", but does
> >"needs minor patches" describe it correctly?
>
>
> Yes that's right. But the new QNX port specific files could be completly
> included into the standard distribution. Some sources have been extended
> with "#ifdef __QNX__". These extensions could be integrated too. Two files
> (arrayfuncs.c and chunk.c) have been fixed to reduce warnings. These fixes
> are valid for all platforms.

arrayfuncs and chunk.c changes added.

>
> The majority of changed files are Makefiles because on QNX it is not
> possible to generate all the "backend/.../SUBSYS.o" as objects because
> the -r option is not supported. On QNX I generate archive files now. This is
> a general question. I would prefer the archive solution. If the standard
> distribution will not be changed this way it will be neccessary to patch the
> "backend/.../Makefile"s. Furthermore I couldn't include the bootstrap.o and
> ipc.o files into the SUBSYS.o archives because the QNX archiver wlib crashes
> with them. I don't know why. Therefore I included them directly into
> backend/Makefile

These are problematic. Changing $(LD) -r to $(AR) will not work on many
platforms. In the current source tree. I have changed all $(LD) -r to
$(LD) $(LDREL), and defined LDREL= -r. The -r can now be overridden in
Makefile.qnx. You can now define $LD as 'ar' in qnx.

Can you tell me what the QNX operating system is? Is it that real-time
OS?

>
> Because I am new to PostgreSQL I would prefer if someone of the core
> developers could include the extensions/changes into the source tree.

I am seeing you remove the semicolon here:

@if [ ! -d $(HEADERDIR) ]; then mkdir $(HEADERDIR); fi

^

That will not work on many platforms. We need those semicolons. There
is another way we could do it, buy using "[ test ] && action", so there
would be no if...then...fi. However, that's a lot of tests to change.
Please let me know why the semicolon is a problem, and whether there is
an upgraded shell that will allow it on QNX.

I have not added any of the #if QNX code. My recommendation is that you
grab a copy of the current tree via cvs, which will have the changes I
just made, and see if you can get that to work. You will find that most
of your stuff will work fine, and that only a few areas now have to be
modified.

I will then be glad to include all the rest of your changes. I could
apply your QNX-specific code, but because I need to get this into
6.6/7.0 I need your help, I am waiting until you have the current tree
installed so I know for sure we are going to have QNX as a port.

With the ld -r changed now, and Makefile.qnx updated properly, your
changes for QNX are minimal.

Please contact the ports list when you have more information.

--
Bruce Momjian | http://www.op.net/~candle
maillist(at)candle(dot)pha(dot)pa(dot)us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026

In response to

Browse pgsql-ports by date

  From Date Subject
Next Message Mark Sales 1999-12-09 22:47:25 Compilation problem (unsupported instruction on processor?)
Previous Message Kardos, Dr. Andreas 1999-12-09 10:35:05 Re: [PORTS] PostgreSQL 6.5.2 ported to QNX 4