Commit aba8c12f authored by Bruce Momjian's avatar Bruce Momjian

We have tested the patches on three platforms:

NetBSD/macppc
LinuxPPC
FreeBSD 2.2.6-RELEASE

All of them seem happy with the regression test. Note that, however,
compiling with optimization enabled on NetBSD/macppc causes an initdb
failure (other two platforms are ok). After checking the asm code, we
are suspecting that might be a compiler(egcs) bug.

Tatsuo Ishii
parent e94fffc1
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
# Copyright (c) 1998, Regents of the University of California # Copyright (c) 1998, Regents of the University of California
# #
# IDENTIFICATION # IDENTIFICATION
# $Header: /cvsroot/pgsql/src/Makefile.shlib,v 1.6 1999/01/17 06:18:08 momjian Exp $ # $Header: /cvsroot/pgsql/src/Makefile.shlib,v 1.7 1999/03/14 16:02:57 momjian Exp $
# #
#------------------------------------------------------------------------- #-------------------------------------------------------------------------
...@@ -73,7 +73,11 @@ ifeq ($(PORTNAME), bsd) ...@@ -73,7 +73,11 @@ ifeq ($(PORTNAME), bsd)
ifdef BSD_SHLIB ifdef BSD_SHLIB
install-shlib-dep := install-shlib install-shlib-dep := install-shlib
shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION) shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
LDFLAGS_SL := -x -Bshareable -Bforcearchive ifdef ELF_SYSTEM
LDFLAGS_SL := -x -Bshareable -soname $(shlib)
else
LDFLAGS_SL := -x -Bshareable -Bforcearchive
endif
CFLAGS += $(CFLAGS_SL) CFLAGS += $(CFLAGS_SL)
endif endif
endif endif
......
...@@ -79,6 +79,8 @@ BSD44_derived_dlsym(void *handle, const char *name) ...@@ -79,6 +79,8 @@ BSD44_derived_dlsym(void *handle, const char *name)
#if defined(__mips__) || (defined(__NetBSD__) && defined(vax)) #if defined(__mips__) || (defined(__NetBSD__) && defined(vax))
sprintf(error_message, "dlsym (%s) failed", name); sprintf(error_message, "dlsym (%s) failed", name);
return NULL; return NULL;
#elif defined(__ELF__)
return dlsym(handle, name);
#else #else
void *vp; void *vp;
char buf[BUFSIZ]; char buf[BUFSIZ];
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/storage/buffer/Attic/s_lock.c,v 1.17 1999/02/13 23:18:02 momjian Exp $ * $Header: /cvsroot/pgsql/src/backend/storage/buffer/Attic/s_lock.c,v 1.18 1999/03/14 16:03:00 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -118,7 +118,7 @@ _success: \n\ ...@@ -118,7 +118,7 @@ _success: \n\
#endif /* __m68k__ */ #endif /* __m68k__ */
#if defined(PPC) #if defined(__powerpc__)
/* Note: need a nice gcc constrained asm version so it can be inlined */ /* Note: need a nice gcc constrained asm version so it can be inlined */
static void static void
tas_dummy() tas_dummy()
...@@ -140,7 +140,7 @@ success: \n\ ...@@ -140,7 +140,7 @@ success: \n\
"); ");
} }
#endif /* PPC */ #endif /* __powerpc__ */
#if defined(__mips) #if defined(__mips)
static void static void
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/adt/Attic/dt.c,v 1.65 1999/02/13 23:19:11 momjian Exp $ * $Header: /cvsroot/pgsql/src/backend/utils/adt/Attic/dt.c,v 1.66 1999/03/14 16:03:04 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -4533,7 +4533,7 @@ EncodeTimeSpan(struct tm * tm, double fsec, int style, char *str) ...@@ -4533,7 +4533,7 @@ EncodeTimeSpan(struct tm * tm, double fsec, int style, char *str)
} /* EncodeTimeSpan() */ } /* EncodeTimeSpan() */
#if defined(linux) && defined(PPC) #if defined(linux) && defined(__powerpc__)
int int
datetime_is_epoch(double j) datetime_is_epoch(double j)
{ {
......
...@@ -129,6 +129,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in ...@@ -129,6 +129,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
mac68k:OpenBSD:*:*) mac68k:OpenBSD:*:*)
echo m68k-apple-openbsd${UNAME_RELEASE} echo m68k-apple-openbsd${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
macppc:NetBSD:*:*)
echo powerpc-apple-netbsd${UNAME_RELEASE}
exit 0;;
powerpc:machten:*:*) powerpc:machten:*:*)
echo powerpc-apple-machten${UNAME_RELEASE} echo powerpc-apple-machten${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
......
...@@ -22,7 +22,12 @@ case "$host_os" in ...@@ -22,7 +22,12 @@ case "$host_os" in
bsdi*) os=bsdi need_tas=no ;; bsdi*) os=bsdi need_tas=no ;;
freebsd3*|freebsd4*) os=freebsd need_tas=no elf=yes ;; freebsd3*|freebsd4*) os=freebsd need_tas=no elf=yes ;;
freebsd1*|freebsd2*) os=freebsd need_tas=no ;; freebsd1*|freebsd2*) os=freebsd need_tas=no ;;
netbsd*|openbsd*) os=bsd need_tas=no ;; netbsd*)
os=bsd need_tas=no
case "$host_cpu" in
powerpc) elf=yes ;;
esac ;;
openbsd*) os=bsd need_tas=no ;;
dgux*) os=dgux need_tas=no ;; dgux*) os=dgux need_tas=no ;;
aix*) os=aix need_tas=no ;; aix*) os=aix need_tas=no ;;
nextstep*) os=nextstep need_tas=no ;; nextstep*) os=nextstep need_tas=no ;;
......
...@@ -24,7 +24,13 @@ ...@@ -24,7 +24,13 @@
#define HAS_TEST_AND_SET #define HAS_TEST_AND_SET
#endif #endif
#if defined(__powerpc__)
#define HAS_TEST_AND_SET
typedef unsigned int slock_t;
#endif
#if defined(__mips__) #if defined(__mips__)
/* # undef HAS_TEST_AND_SET */ /* # undef HAS_TEST_AND_SET */
#endif #endif
#if !defined(__powerpc__)
typedef unsigned char slock_t; typedef unsigned char slock_t;
#endif
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
#define USE_POSIX_TIME #define USE_POSIX_TIME
#define HAS_TEST_AND_SET #define HAS_TEST_AND_SET
#if defined(PPC) #if defined(__powerpc__)
typedef unsigned int slock_t; typedef unsigned int slock_t;
#elif defined(__alpha) #elif defined(__alpha)
...@@ -34,6 +34,6 @@ typedef unsigned char slock_t; ...@@ -34,6 +34,6 @@ typedef unsigned char slock_t;
/* #define HAVE_SIGSETJMP 1 */ /* #define HAVE_SIGSETJMP 1 */
#endif #endif
#if defined(PPC) #if defined(__powerpc__)
#undef HAVE_INT_TIMEZONE #undef HAVE_INT_TIMEZONE
#endif #endif
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* *
* Copyright (c) 1994, Regents of the University of California * Copyright (c) 1994, Regents of the University of California
* *
* $Id: dt.h,v 1.37 1999/03/06 22:58:11 tgl Exp $ * $Id: dt.h,v 1.38 1999/03/14 16:03:16 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -228,7 +228,7 @@ typedef struct ...@@ -228,7 +228,7 @@ typedef struct
#define DATETIME_IS_NOEND(j) (j == DT_NOEND) #define DATETIME_IS_NOEND(j) (j == DT_NOEND)
#define DATETIME_CURRENT(j) {j = DT_CURRENT;} #define DATETIME_CURRENT(j) {j = DT_CURRENT;}
#if defined(linux) && defined(PPC) #if defined(linux) && defined(__powerpc__)
extern int datetime_is_current(double j); extern int datetime_is_current(double j);
#define DATETIME_IS_CURRENT(j) datetime_is_current(j) #define DATETIME_IS_CURRENT(j) datetime_is_current(j)
...@@ -237,7 +237,7 @@ extern int datetime_is_current(double j); ...@@ -237,7 +237,7 @@ extern int datetime_is_current(double j);
#endif #endif
#define DATETIME_EPOCH(j) {j = DT_EPOCH;} #define DATETIME_EPOCH(j) {j = DT_EPOCH;}
#if defined(linux) && defined(PPC) #if defined(linux) && defined(__powerpc__)
extern int datetime_is_epoch(double j); extern int datetime_is_epoch(double j);
#define DATETIME_IS_EPOCH(j) datetime_is_epoch(j) #define DATETIME_IS_EPOCH(j) datetime_is_epoch(j)
......
ifdef ELF_SYSTEM
LDFLAGS += -Wl,-E
endif
%.so: %.o %.so: %.o
ifdef ELF_SYSTEM
$(LD) -x -Bshareable -o $@ $<
else
$(LD) -x -r -o $<.obj $< $(LD) -x -r -o $<.obj $<
@echo building shared object $@ @echo building shared object $@
@rm -f $@.pic @rm -f $@.pic
...@@ -7,3 +13,4 @@ ...@@ -7,3 +13,4 @@
@rm -f $@ @rm -f $@
$(LD) -x -Bshareable -Bforcearchive \ $(LD) -x -Bshareable -Bforcearchive \
-o $@ $@.pic -o $@ $@.pic
endif
QUERY: drop table 計算機用語; QUERY: drop table 計算機用語;
ERROR: Relation 計算機用語 Does Not Exist! ERROR: Relation '計算機用語' does not exist
QUERY: create table 計算機用語 (用語 text, 分類コード varchar, 備考1Aだよ char(16)); QUERY: create table 計算機用語 (用語 text, 分類コード varchar, 備考1Aだよ char(16));
QUERY: create index 計算機用語index1 on 計算機用語 using btree (用語); QUERY: create index 計算機用語index1 on 計算機用語 using btree (用語);
QUERY: create index 計算機用語index2 on 計算機用語 using hash (分類コード); QUERY: create index 計算機用語index2 on 計算機用語 using hash (分類コード);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment