Port for SGI Irix using today's snapshot. - Mailing list pgsql-hackers

From
Subject Port for SGI Irix using today's snapshot.
Date
Msg-id a9c0dfbefb2e0a31135675571db9561f
Whole thread Raw
List pgsql-hackers
I've been able to get today's snapshot of PostgreSQL 6.5 beta to run
on an SGI running Irix 6.4. The following steps must be taken.

1.Add the following block to src/Makefile.shlib

ifeq ($(PORTNAME), irix5)
  install-shlib-dep   := install-shlib
  shlib                               := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
  LDFLAGS_SL          := -shared
  CFLAGS                      += $(CFLAGS_SL)
endif

2. Make src/Makefile.custome with

CUSTOM_CC = cc -32
LD += -32
MK_NO_LORDER = 1

3. Modify the install script to always copy, never move. The following install will work:

#!/bin/ksh
# Stripping is ignored in this version of install.

cmd=/bin/cp
strip=""
chmod="/bin/chmod 755"
user=`/usr/bin/whoami`
if [ $user = "root" ]
then
        chown="/bin/chown bin"
        chgrp="/bin/chgrp bin"
else
        chown="/bin/chown $user"
        set -A groups `/usr/bin/groups`
        chgrp="/bin/chgrp ${groups[0]}"
fi
while :
do
        case $1 in
        -s )    strip=""
                ;;
        -c )    cmd="/bin/cp"
                ;;
        -m )    chmod="/bin/chmod $2"
                shift
                ;;
        -o )    chown="/bin/chown $2"
                shift
                ;;
        -g )    chgrp="/bin/chgrp $2"
                shift
                ;;
        * )     break
                ;;
        esac
        shift
done

case "$2" in
"")     echo "install: no destination specified"
        exit 1
        ;;
.|"$1") echo "install: can't move $1 onto itself"
        exit 1
        ;;
esac
case "$3" in
"")     ;;
*)      echo "install: too many files specified -> $*"
        exit 1
        ;;
esac
if [ -d $2 ]
then    file=$2/$1
else    file=$2
fi
/bin/rm -f $file
$cmd $1 $file
[ $strip ] && $strip $file
$chown $file
$chgrp $file
$chmod $file

4. Configure nsl off and make sure the correct install program is
used. The following shell statements will do this.

cd src
rm config.cache
cat >config.cache <<EOF
ac_cv_lib_nsl_main=${ac_cv_lib_nsl_main='no'}
EOF
gmake clean
INSTALL="your install program as above" ./configure --prefix=/pg/pgsql --without-CXX ...

========================================================================

I haven't yet gotten libpq++ to build correctly and one regression test,
misc.out, fails due to a segmentation error in the copying of binary
data. The traceback is

dbx ../../../bin/postgres (wd: /pg/pgsql/data/base/regression)
use /pg/pgsql/src/backend/commands
(dbx) where
>  0 CopyFrom(0x10147450, 0x1, 0x0, 0xfb4d6f4) ["copy.c":809, 0x48e1f0]
   1 DoCopy(0x1013a5d0, 0x1, 0x0, 0x1) ["copy.c":304, 0x48c760]
   2 ProcessUtility(0x1013a630, 0x3, 0x0, 0x1013ab78) ["utility.c":227, 0x5598f8]
   3 pg_exec_query_dest(0x7ffee364, 0x3, 0x0, 0x1013ab78) ["postgres.c":718, 0x556eb8]
   4 pg_exec_query(0x7ffee364, 0x1014e1d0, 0x0, 0x1013ab78) ["postgres.c":654, 0x556d34]
   5 PostgresMain(0x8, 0x7fff28f0, 0x7, 0x7fff2e84) ["postgres.c":1649, 0x5586f4]
   6 DoBackend(0x100e2b10, 0x1014e1d0, 0x0, 0x1013ab78) ["postmaster.c":1611, 0x525a6c]
   7 BackendStartup(0x100e2b10, 0x1014e1d0, 0x0, 0x1013ab78) ["postmaster.c":1356, 0x525260]
   8 ServerLoop(0x1013ab88, 0x1014e1d0, 0x0, 0x1013ab78) ["postmaster.c":806, 0x524060]
   9 PostmasterMain(0x7, 0x7fff2e84, 0x0, 0x1013ab78) ["postmaster.c":599, 0x5237cc]
   10 main(0x7, 0x7fff2e84, 0x0, 0x1013ab78) ["main.c":93, 0x4cc92c]
   11 __istart() ["crt1tinit.s":13, 0x42a490]
(dbx) l
>* 809                                                  ptr = att_addlength(ptr, attr[i]->attlen, ptr);
   810                                          }
   811                                  }
   812                          }
   813                  }
   814                  if (done)
   815                          continue;
   816
   817                  /*
   818                   * Does it have any sence ? - vadim 12/14/96

Sincerely,
Bob

+----------------------------------+------------------------------------+
| Robert E. Bruccoleri, Ph.D.      | Phone: 609 737 6383                |
| President, Congenomics, Inc.     | Fax:   609 737 7528                |
| 114 W. Franklin Ave, Suite K1,10 | email: bruc@acm.org                |
| P.O. Box 314                     | URL:   http://www.congen.com/~bruc |
| Pennington, NJ 08534             |                                    |
+----------------------------------+------------------------------------+


pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Open 6.5 items
Next
From: Tatsuo Ishii
Date:
Subject: Re: [HACKERS] Open 6.5 items