Re: [PORTS] Patch to compile 6.5 on SCO OpenServer

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: [PORTS] Patch to compile 6.5 on SCO OpenServer
Дата
Msg-id 199905101541.LAA04900@candle.pha.pa.us
обсуждение исходный текст
Ответ на Patch to compile 6.5 on SCO OpenServer  (Andrew Merrill <andrew@compclass.com>)
Список pgsql-ports
Patch applied.  The offset of pgcomm.c patch was 300, but appeared to
apply cleanly.



> This was made with the April 15 snapshot of 6.5, which does not compile
> on SCO OpenServer without changes.  (6.4.2 didn't compile on SCO
> OpenServer either, with the same problems.)
>
> For those not familiar with SCO, they have two distinct product lines,
> OpenServer and UnixWare.  6.4.2 compiles out of the box on UnixWare 7,
> and 6.5 will with a patch I submitted recently.
>
> I've tested this patch on:
>
> 1) SCO OpenServer 5.0.5 with the SCO UDK compiler
> 2) SCO OpenServer 5.0.2 with the SCO OpenServer Development Kit compiler
>
> It is likely to work on other OpenServer 5.0.x releases.
>
> What needs to be done to update the various "supported hardware
> platforms" lists to include both SCO OpenServer and SCO UnixWare?
>
> Andrew Merrill
> The Computer Classroom, Inc.
>

> *** ./backend/libpq/pqcomm.c.orig Fri Apr 16 16:45:32 1999
> --- ./backend/libpq/pqcomm.c Fri Apr 16 16:45:35 1999
> ***************
> *** 533,538 ****
>           pqdebug("%s", PQerrormsg);
>           return STATUS_ERROR;
>       }
>       if ((setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, (char *) &one,
>                       sizeof(one))) == -1)
>       {
> --- 533,543 ----
>           pqdebug("%s", PQerrormsg);
>           return STATUS_ERROR;
>       }
> +
> + #ifdef ONLY_REUSE_INET_SOCKETS
> +     if (family == AF_INET) {
> + #endif
> +
>       if ((setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, (char *) &one,
>                       sizeof(one))) == -1)
>       {
> ***************
> *** 543,548 ****
>           pqdebug("%s", PQerrormsg);
>           return STATUS_ERROR;
>       }
>       MemSet((char *) &saddr, 0, sizeof(saddr));
>       saddr.sa.sa_family = family;
>       if (family == AF_UNIX)
> --- 548,558 ----
>           pqdebug("%s", PQerrormsg);
>           return STATUS_ERROR;
>       }
> +
> + #ifdef ONLY_REUSE_INET_SOCKETS
> +     }
> + #endif
> +
>       MemSet((char *) &saddr, 0, sizeof(saddr));
>       saddr.sa.sa_family = family;
>       if (family == AF_UNIX)
> *** ./include/port/sco.h.orig Fri Apr 16 16:45:08 1999
> --- ./include/port/sco.h Fri Apr 16 16:58:54 1999
> ***************
> *** 1,5 ****
>   #include <limits.h>                /* For _POSIX_PATH_MAX */
>
>   #define MAXPATHLEN        _POSIX_PATH_MAX
>
>   #define NOFILE            NOFILES_MIN
> --- 1,6 ----
>   #include <limits.h>                /* For _POSIX_PATH_MAX */
>
> + #ifndef MAXPATHLEN
>   #define MAXPATHLEN        _POSIX_PATH_MAX
>   #endif
>
> ***************
> *** 1,6 ****
>   #include <limits.h>                /* For _POSIX_PATH_MAX */
>
>   #define MAXPATHLEN        _POSIX_PATH_MAX
>
>   #define NOFILE            NOFILES_MIN
>
> --- 2,8 ----
>
>   #ifndef MAXPATHLEN
>   #define MAXPATHLEN        _POSIX_PATH_MAX
> + #endif
>
>   #ifndef NOFILE
>   #define NOFILE            NOFILES_MIN
> ***************
> *** 2,7 ****
>
>   #define MAXPATHLEN        _POSIX_PATH_MAX
>
>   #define NOFILE            NOFILES_MIN
>
>   #define DISABLE_COMPLEX_MACRO
> --- 4,10 ----
>   #define MAXPATHLEN        _POSIX_PATH_MAX
>   #endif
>
> + #ifndef NOFILE
>   #define NOFILE            NOFILES_MIN
>   #endif
>
> ***************
> *** 3,7 ****
>   #define MAXPATHLEN        _POSIX_PATH_MAX
>
>   #define NOFILE            NOFILES_MIN
>
>   #define DISABLE_COMPLEX_MACRO
> --- 6,12 ----
>
>   #ifndef NOFILE
>   #define NOFILE            NOFILES_MIN
> + #endif
>
>   #define ONLY_REUSE_INET_SOCKETS
>
> ***************
> *** 4,7 ****
>
>   #define NOFILE            NOFILES_MIN
>
>   #define DISABLE_COMPLEX_MACRO
> --- 8,15 ----
>   #define NOFILE            NOFILES_MIN
>   #endif
>
> + #define ONLY_REUSE_INET_SOCKETS
> +
>   #define DISABLE_COMPLEX_MACRO
>
>   #define USE_POSIX_TIME
> ***************
> *** 5,7 ****
>   #define NOFILE            NOFILES_MIN
>
>   #define DISABLE_COMPLEX_MACRO
> --- 11,45 ----
>   #define ONLY_REUSE_INET_SOCKETS
>
>   #define DISABLE_COMPLEX_MACRO
> +
> + #define USE_POSIX_TIME
> + #define NO_EMPTY_STMTS
> + #define SYSV_DIRENT
> +
> + #define HAS_TEST_AND_SET
> + #define NEED_I386_TAS_ASM
> +
> + #define USE_UNIVEL_CC
> +
> + typedef unsigned char slock_t;
> +
> + #define DISABLE_COMPLEX_MACRO
> +
> + /***************************************************************
> +  * The following include will get the needed prototype for the
> +  * strcasecmp() function.
> +  ***************************************************************/
> + #include <strings.h>
> +
> + #ifndef            BIG_ENDIAN
> + #define            BIG_ENDIAN        4321
> + #endif
> + #ifndef            LITTLE_ENDIAN
> + #define            LITTLE_ENDIAN    1234
> + #endif
> + #ifndef            PDP_ENDIAN
> + #define            PDP_ENDIAN        3412
> + #endif
> + #ifndef            BYTE_ORDER
> + #define            BYTE_ORDER        LITTLE_ENDIAN
> + #endif


--
  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 по дате отправления:

Предыдущее
От: Bruce Momjian
Дата:
Сообщение: Re: [PORTS] Port Bug Report: backend/utils/adt/cash.c problems
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: [PORTS] UnixWare 7 patches for current CVS code.