Re: [PORTS] PostgreSQL 6.5.2 ported to QNX 4 - Mailing list pgsql-ports
From | Bruce Momjian |
---|---|
Subject | Re: [PORTS] PostgreSQL 6.5.2 ported to QNX 4 |
Date | |
Msg-id | 199912091623.LAA26090@candle.pha.pa.us Whole thread Raw |
In response to | Re: [PORTS] PostgreSQL 6.5.2 ported to QNX 4 ("Kardos, Dr. Andreas" <kardos@repas-aeg.de>) |
List | 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@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026
pgsql-ports by date: