Re: [PORTS] PostgreSQL 6.5.2 ported to QNX 4 - Mailing list pgsql-ports
From | Kardos, Dr. Andreas |
---|---|
Subject | Re: [PORTS] PostgreSQL 6.5.2 ported to QNX 4 |
Date | |
Msg-id | 002001bf4231$1038c590$99301eac@nt-kardos.Dr.repas.de Whole thread Raw |
Responses |
Re: [PORTS] PostgreSQL 6.5.2 ported to QNX 4
|
List | pgsql-ports |
>Send to the "patches" mailing list, unless the patches are >prohibitively large. afaik the upper limit on mail size for patches is >big. Done. >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. 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. 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 Because I am new to PostgreSQL I would prefer if someone of the core developers could include the extensions/changes into the source tree. Completly new files: pgsql/doc/README.qnx4 pgsql/src/makefiles/Makefile.qnx4 pgsql/src/template/QNX 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/isnan.c pgsql/src/backend/port/qnx4/rint.c pgsql/src/backend/port/qnx4/sem.c 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 Extended files: pgsql/src/backend/port/isinf.c pgsql/src/backend/postmaster/postmaster.c pgsql/src/backend/utils/adt/arrayfuncs.c pgsql/src/backend/utils/adt/chunk.c pgsql/src/bin/pg_passwd/pg_passwd.c pgsql/src/include/storage/s_lock.h pgsql/src/include/utils/builtins.h pgsql/src/config.guess pgsql/src/config.sub pgsql/src/configure Patched files: pgsql/src/backend/access/common/Makefile pgsql/src/backend/access/gist/Makefile pgsql/src/backend/access/hash/Makefile pgsql/src/backend/access/heap/Makefile pgsql/src/backend/access/index/Makefile pgsql/src/backend/access/nbtree/Makefile pgsql/src/backend/access/rtree/Makefile pgsql/src/backend/access/transam/Makefile pgsql/src/backend/access/Makefile pgsql/src/backend/bootstrap/Makefile pgsql/src/backend/catalog/Makefile pgsql/src/backend/commands/Makefile pgsql/src/backend/executor/Makefile pgsql/src/backend/lib/Makefile pgsql/src/backend/libpq/Makefile pgsql/src/backend/main/Makefile pgsql/src/backend/nodes/Makefile pgsql/src/backend/optimizer/geqo/Makefile pgsql/src/backend/optimizer/path/Makefile pgsql/src/backend/optimizer/plan/Makefile pgsql/src/backend/optimizer/prep/Makefile pgsql/src/backend/optimizer/util/Makefile pgsql/src/backend/optimizer/Makefile pgsql/src/backend/parser/Makefile pgsql/src/backend/port/Makefile.in pgsql/src/backend/postmaster/Makefile pgsql/src/backend/regex/Makefile pgsql/src/backend/rewrite/Makefile pgsql/src/backend/storage/buffer/Makefile pgsql/src/backend/storage/file/Makefile pgsql/src/backend/storage/ipc/Makefile pgsql/src/backend/storage/large_object/Makefile pgsql/src/backend/storage/lmgr/Makefile pgsql/src/backend/storage/page/Makefile pgsql/src/backend/storage/smgr/Makefile pgsql/src/backend/storage/Makefile pgsql/src/backend/tcop/Makefile pgsql/src/backend/utils/adt/Makefile pgsql/src/backend/utils/cache/Makefile pgsql/src/backend/utils/error/Makefile pgsql/src/backend/utils/fmgr/Makefile pgsql/src/backend/utils/hash/Makefile pgsql/src/backend/utils/init/Makefile pgsql/src/backend/utils/misc/Makefile pgsql/src/backend/utils/mmgr/Makefile pgsql/src/backend/utils/sort/Makefile pgsql/src/backend/utils/time/Makefile pgsql/src/backend/utils/Makefile pgsql/src/backend/Makefile pgsql/src/interfaces/libpgtcl/Makefile.in pgsql/src/interfaces/libpq/Makefile.in pgsql/src/interfaces/libpq++/Makefile.in pgsql/src/pl/plpgsql/src/Makefile.in pgsql/src/test/regress/regress.sh The new and changes files could go into standard distribution. The patched Makefiles can be incorporated only if the standard $(LD) -r -o SUBSYS.o $(OBJS) will be changed to $(AR) $(AROPT) SUBSYS.o $(OBJS) May be there is a more elegant way to do this. But I don't know one. pgsql/src/Makefile.custom should be treated separately. Sorry for my poor English. Andreas
pgsql-ports by date: