Remove BSD/OS (BSDi) port. There are no known users upgrading to

Postgres 9.2, and perhaps no existing users either.
This commit is contained in:
Bruce Momjian 2012-05-03 10:58:44 -04:00
parent 7490c48f1e
commit ebcaa5fcde
15 changed files with 13 additions and 290 deletions

5
configure vendored
View File

@ -2190,7 +2190,6 @@ else
case $host_os in
aix*) template=aix ;;
bsdi*) template=bsdi ;;
cygwin*) template=cygwin ;;
darwin*) template=darwin ;;
dragonfly*) template=netbsd ;;
@ -19489,9 +19488,9 @@ done
case $host_os in
# BSD/OS & NetBSD use a custom fseeko/ftello built on fsetpos/fgetpos
# NetBSD uses a custom fseeko/ftello built on fsetpos/fgetpos
# Mingw uses macros to access Win32 API calls
bsdi*|netbsd*|mingw*)
netbsd*|mingw*)
cat >>confdefs.h <<\_ACEOF
#define HAVE_FSEEKO 1

View File

@ -55,7 +55,6 @@ PGAC_ARG_REQ(with, template, [NAME], [override operating system template],
case $host_os in
aix*) template=aix ;;
bsdi*) template=bsdi ;;
cygwin*) template=cygwin ;;
darwin*) template=darwin ;;
dragonfly*) template=netbsd ;;
@ -1211,9 +1210,9 @@ AC_CHECK_FUNCS([cbrt dlopen fcvt fdatasync getifaddrs getpeerucred getrlimit mem
AC_REPLACE_FUNCS(fseeko)
case $host_os in
# BSD/OS & NetBSD use a custom fseeko/ftello built on fsetpos/fgetpos
# NetBSD uses a custom fseeko/ftello built on fsetpos/fgetpos
# Mingw uses macros to access Win32 API calls
bsdi*|netbsd*|mingw*)
netbsd*|mingw*)
AC_DEFINE(HAVE_FSEEKO, 1, [Define to 1 because replacement version used.])
ac_cv_func_fseeko=yes;;
*)

View File

@ -55,24 +55,6 @@
-->
<variablelist>
<varlistentry>
<term><systemitem class="osname">BSD/OS</></term>
<indexterm><primary>BSD/OS</><secondary>shared library</></>
<listitem>
<para>
The compiler flag to create <acronym>PIC</acronym> is
<option>-fpic</option>. The linker flag to create shared
libraries is <option>-shared</option>.
<programlisting>
gcc -fpic -c foo.c
ld -shared -o foo.so foo.o
</programlisting>
This is applicable as of version 4.0 of
<systemitem class="osname">BSD/OS</>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><systemitem class="osname">FreeBSD</></term>
<indexterm><primary>FreeBSD</><secondary>shared library</></>

View File

@ -1622,8 +1622,8 @@ PostgreSQL, contrib and HTML documentation successfully made. Ready to install.
On some systems with shared libraries
you need to tell the system how to find the newly installed
shared libraries. The systems on which this is
<emphasis>not</emphasis> necessary include <systemitem
class="osname">BSD/OS</>, <systemitem class="osname">FreeBSD</>,
<emphasis>not</emphasis> necessary include
<systemitem class="osname">FreeBSD</>,
<systemitem class="osname">HP-UX</>, <systemitem
class="osname">IRIX</>, <systemitem class="osname">Linux</>,
<systemitem class="osname">NetBSD</>, <systemitem
@ -1682,9 +1682,8 @@ libpq.so.2.1: cannot open shared object file: No such file or directory
<indexterm>
<primary>ldconfig</primary>
</indexterm>
If you are on <systemitem class="osname">BSD/OS</>
or <systemitem class="osname">Linux</>, and you have root access you can
run:
If you are on <systemitem class="osname">Linux</> and you have root
access, you can run:
<programlisting>
/sbin/ldconfig /usr/local/pgsql/lib
</programlisting>

View File

@ -741,47 +741,6 @@ psql: could not connect to server: No such file or directory
</listitem>
</varlistentry>
<varlistentry>
<term><systemitem class="osname">BSD/OS</></term>
<indexterm><primary>BSD/OS</><secondary>IPC configuration</></>
<listitem>
<formalpara>
<title>Shared Memory</title>
<para>
By default, only 4 MB of shared memory is supported. Keep in
mind that shared memory is not pageable; it is locked in RAM.
To increase the amount of shared memory supported by your
system, add something like the following to your kernel configuration
file:
<programlisting>
options "SHMALL=8192"
options "SHMMAX=\(SHMALL*PAGE_SIZE\)"
</programlisting>
<varname>SHMALL</> is measured in 4 kB pages, so a value of
1024 represents 4 MB of shared memory. Therefore the above increases
the maximum shared memory area to 32 MB.
For those running 4.3 or later, you will probably also need to increase
<varname>KERNEL_VIRTUAL_MB</> above the default <literal>248</>.
Once all changes have been made, recompile the kernel, and reboot.
</para>
</formalpara>
<formalpara>
<title>Semaphores</title>
<para>
You will probably want to increase the number of semaphores
as well; the default system total of 60 will only allow about
50 <productname>PostgreSQL</productname> connections. Set the
values you want in your kernel configuration file, e.g.:
<programlisting>
options "SEMMNI=40"
options "SEMMNS=240"
</programlisting>
</para>
</formalpara>
</listitem>
</varlistentry>
<varlistentry>
<term><systemitem class="osname">FreeBSD</></term>

View File

@ -157,19 +157,6 @@ ifeq ($(PORTNAME), openbsd)
endif
endif
ifeq ($(PORTNAME), bsdi)
ifeq ($(DLSUFFIX), .so)
LINK.shared = $(COMPILER) -shared
ifdef soname
LINK.shared += -Wl,-x,-soname,$(soname)
endif
SHLIB_LINK += -lc
endif
ifeq ($(DLSUFFIX), .o)
LINK.shared = shlicc -O $(LDREL)
endif
endif
ifeq ($(PORTNAME), freebsd)
ifdef ELF_SYSTEM
ifdef SO_MAJOR_VERSION

View File

@ -1,96 +0,0 @@
/*-------------------------------------------------------------------------
*
* dynloader.c
* Dynamic Loader for Postgres for Linux, generated from those for
* Ultrix.
*
* You need to install the dld library on your Linux system!
*
* Portions Copyright (c) 1996-2012, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
*
* IDENTIFICATION
* src/backend/port/dynloader/bsdi.c
*
*-------------------------------------------------------------------------
*/
#include "postgres.h"
#ifndef HAVE_DLOPEN
extern char my_exec_path[];
void *
pg_dlopen(char *filename)
{
static int dl_initialized = 0;
/*
* initializes the dynamic loader with the executable's pathname. (only
* needs to do this the first time pg_dlopen is called.)
*/
if (!dl_initialized)
{
if (dld_init(dld_find_executable(my_exec_path)))
return NULL;
/*
* if there are undefined symbols, we want dl to search from the
* following libraries also.
*/
dl_initialized = 1;
}
/*
* link the file, then check for undefined symbols!
*/
if (dld_link(filename))
return NULL;
/*
* If undefined symbols: try to link with the C and math libraries! This
* could be smarter, if the dynamic linker was able to handle shared libs!
*/
if (dld_undefined_sym_count > 0)
{
if (dld_link("/usr/lib/libc.a"))
{
elog(WARNING, "could not link C library");
return NULL;
}
if (dld_undefined_sym_count > 0)
{
if (dld_link("/usr/lib/libm.a"))
{
elog(WARNING, "could not link math library");
return NULL;
}
if (dld_undefined_sym_count > 0)
{
int count = dld_undefined_sym_count;
char **list = dld_list_undefined_sym();
/* list the undefined symbols, if any */
do
{
elog(WARNING, "\"%s\" is undefined", *list);
list++;
count--;
} while (count > 0);
dld_unlink_by_file(filename, 1);
return NULL;
}
}
}
return (void *) strdup(filename);
}
char *
pg_dlerror()
{
return dld_strerror(dld_errno);
}
#endif /* not HAVE_DLOPEN */

View File

@ -1,50 +0,0 @@
/*-------------------------------------------------------------------------
*
* bsdi.h
* Dynamic loader interface for BSD/OS
*
* Portions Copyright (c) 1996-2012, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
* src/backend/port/dynloader/bsdi.h
*
*-------------------------------------------------------------------------
*/
#ifndef PORT_PROTOS_H
#define PORT_PROTOS_H
#include "utils/dynamic_loader.h" /* pgrminclude ignore */
#ifdef HAVE_DLOPEN
#include <dlfcn.h>
/*
* In some older systems, the RTLD_NOW flag isn't defined and the mode
* argument to dlopen must always be 1. The RTLD_GLOBAL flag is wanted
* if available, but it doesn't exist everywhere.
* If it doesn't exist, set it to 0 so it has no effect.
*/
#ifndef RTLD_NOW
#define RTLD_NOW 1
#endif
#ifndef RTLD_GLOBAL
#define RTLD_GLOBAL 0
#endif
#define pg_dlopen(f) dlopen((f), RTLD_NOW | RTLD_GLOBAL)
#define pg_dlsym dlsym
#define pg_dlclose dlclose
#define pg_dlerror dlerror
#else /* not HAVE_DLOPEN */
#define pg_dlsym(handle, funcname) ((PGFunction) dld_get_func((funcname)))
#define pg_dlclose(handle) \
do { \
dld_unlink_by_file(handle, 1); \
free(handle); \
} while (0)
#endif /* not HAVE_DLOPEN */
#endif /* PORT_PROTOS_H */

View File

@ -64,7 +64,7 @@ bool update_process_title = true;
#define PS_USE_PSTAT
#elif defined(HAVE_PS_STRINGS)
#define PS_USE_PS_STRINGS
#elif (defined(BSD) || defined(__bsdi__) || defined(__hurd__)) && !defined(__darwin__)
#elif (defined(BSD) || defined(__hurd__)) && !defined(__darwin__)
#define PS_USE_CHANGE_ARGV
#elif defined(__linux__) || defined(_AIX) || defined(__sgi) || (defined(sun) && !defined(BSD)) || defined(ultrix) || defined(__ksr__) || defined(__osf__) || defined(__svr5__) || defined(__darwin__)
#define PS_USE_CLOBBER_ARGV

View File

@ -367,7 +367,7 @@ extern char *crypt(const char *key, const char *setting);
/* WIN32 handled in port/win32.h */
#ifndef WIN32
#define pgoff_t off_t
#if defined(__bsdi__) || defined(__NetBSD__)
#ifdef __NetBSD__
extern int fseeko(FILE *stream, off_t offset, int whence);
extern off_t ftello(FILE *stream);
#endif

View File

@ -1,3 +0,0 @@
/*
* src/include/port/bsdi.h
*/

View File

@ -1,25 +0,0 @@
AROPT = cr
# bsdi 4.0 and later is ELF
DLSUFFIX = .so
ifeq ($(host_os), bsdi2.0)
DLSUFFIX = .o
endif
ifeq ($(host_os), bsdi2.1)
DLSUFFIX = .o
endif
ifeq ($(findstring bsdi3, $(host_os)), bsdi3)
DLSUFFIX = .o
endif
ifeq ($(DLSUFFIX), .so)
CFLAGS_SL = -fpic
rpath = -Wl,-rpath,'$(rpathdir)'
export_dynamic = -Wl,-export-dynamic
else
CFLAGS_SL =
endif
# Rule for building a shared library from a single .o file
%.so: %.o
$(CC) $(CFLAGS) $(LDFLAGS) $(LDFLAGS_SL) -shared -o $@ $<

View File

@ -17,22 +17,17 @@
* We have to use the native defines here because configure hasn't
* completed yet.
*/
#if defined(__bsdi__) || defined(__NetBSD__)
#ifdef __NetBSD__
#include "c.h"
#ifdef __bsdi__
#include <pthread.h>
#endif
#include <sys/stat.h>
/*
* On BSD/OS and NetBSD, off_t and fpos_t are the same. Standards
* On NetBSD, off_t and fpos_t are the same. Standards
* say off_t is an arithmetic type, but not necessarily integral,
* while fpos_t might be neither.
*
* This is thread-safe on BSD/OS using flockfile/funlockfile.
*/
int
@ -44,17 +39,11 @@ fseeko(FILE *stream, off_t offset, int whence)
switch (whence)
{
case SEEK_CUR:
#ifdef __bsdi__
flockfile(stream);
#endif
if (fgetpos(stream, &floc) != 0)
goto failure;
floc += offset;
if (fsetpos(stream, &floc) != 0)
goto failure;
#ifdef __bsdi__
funlockfile(stream);
#endif
return 0;
break;
case SEEK_SET:
@ -63,9 +52,6 @@ fseeko(FILE *stream, off_t offset, int whence)
return 0;
break;
case SEEK_END:
#ifdef __bsdi__
flockfile(stream);
#endif
fflush(stream); /* force writes to fd for stat() */
if (fstat(fileno(stream), &filestat) != 0)
goto failure;
@ -73,9 +59,6 @@ fseeko(FILE *stream, off_t offset, int whence)
floc += offset;
if (fsetpos(stream, &floc) != 0)
goto failure;
#ifdef __bsdi__
funlockfile(stream);
#endif
return 0;
break;
default:
@ -84,9 +67,6 @@ fseeko(FILE *stream, off_t offset, int whence)
}
failure:
#ifdef __bsdi__
funlockfile(stream);
#endif
return -1;
}

View File

@ -1,3 +0,0 @@
case $host_os in
bsdi2.0 | bsdi2.1 | bsdi3*) CC=gcc2;;
esac

View File

@ -8,7 +8,7 @@
# For this program to work, you must have compiled all binaries with
# debugging symbols.
#
# This is run on BSD/OS 4.0 or Linux, so you may need to make changes.
# This is run on Linux, so you may need to make changes.
#
# Ignore the nm errors about a file not being a binary file.
#
@ -52,11 +52,6 @@ do # if objdump -W is recognized, only one line of error should appear
readelf -w "$DIR"/* |
egrep -A3 '\(DW_TAG_typedef\)' |
awk ' $1 == "DW_AT_name" {print $NF}'
else # BSD/OS
# BSD/OS reports all typedefs, even those defined in system
# include files but never referenced in the PG code.
objdump --stabs "$DIR"/* |
awk ' $2 == "LSYM" && $7 ~ /:t/ {sub(":.*", "", $7); print $7}'
fi
done |
grep -v ' ' | # some typedefs have spaces, remove them