diff --git a/configure b/configure index 871f8626c9c6ed01dbe0b4e3a0eae7908a820779..e8ea3801df9a62b042ad9c9aefe8ff9c61c9c8d9 100755 --- a/configure +++ b/configure @@ -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 diff --git a/configure.in b/configure.in index d956c5083291d79a6826729625f7f36e633c02d7..71e707892298020c8647cb7f321b1993c03024c8 100644 --- a/configure.in +++ b/configure.in @@ -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;; *) diff --git a/doc/src/sgml/dfunc.sgml b/doc/src/sgml/dfunc.sgml index 9fd3511b4dbb726489b0e05aa7a97dba8e3e9214..8e6c95d15c5933a359a48fcf7e057e51a6196c63 100644 --- a/doc/src/sgml/dfunc.sgml +++ b/doc/src/sgml/dfunc.sgml @@ -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</></> diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml index 0c92c89ac89bd729837bc8e485af85d45e85311f..fe043c60847125c8bc6dec243e46c94dd2a5f030 100644 --- a/doc/src/sgml/installation.sgml +++ b/doc/src/sgml/installation.sgml @@ -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> diff --git a/doc/src/sgml/runtime.sgml b/doc/src/sgml/runtime.sgml index 5785450e571ee9b8a672b05c355d039dafe42652..05da7235089bdc857e50d1354956e30f6da86bcb 100644 --- a/doc/src/sgml/runtime.sgml +++ b/doc/src/sgml/runtime.sgml @@ -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> diff --git a/src/Makefile.shlib b/src/Makefile.shlib index 0304f7a2aa700276a9d5ef9f1167f34b55a24336..294d10f61864237ebdea3e8fedc4830b257017d1 100644 --- a/src/Makefile.shlib +++ b/src/Makefile.shlib @@ -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 diff --git a/src/backend/port/dynloader/bsdi.c b/src/backend/port/dynloader/bsdi.c deleted file mode 100644 index cdf7444e11294414ea7a142a0d5e58f782be9fe5..0000000000000000000000000000000000000000 --- a/src/backend/port/dynloader/bsdi.c +++ /dev/null @@ -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 */ diff --git a/src/backend/port/dynloader/bsdi.h b/src/backend/port/dynloader/bsdi.h deleted file mode 100644 index a4b626bacb0541f4effe35fde0f5881e40b6216b..0000000000000000000000000000000000000000 --- a/src/backend/port/dynloader/bsdi.h +++ /dev/null @@ -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 */ diff --git a/src/backend/utils/misc/ps_status.c b/src/backend/utils/misc/ps_status.c index f1497c63f422ede957d2ddff03efe576a5920a9f..47c47a4e1078f08a5c3ae8260f76c1d9b8f427cb 100644 --- a/src/backend/utils/misc/ps_status.c +++ b/src/backend/utils/misc/ps_status.c @@ -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 diff --git a/src/include/port.h b/src/include/port.h index 37e33c3e2ae366d83afdf54a468b4c03f5ee9796..120e402a762a95d4d868bbfc41b746b024f17635 100644 --- a/src/include/port.h +++ b/src/include/port.h @@ -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 diff --git a/src/include/port/bsdi.h b/src/include/port/bsdi.h deleted file mode 100644 index 13249f545b755d797b428f418f743e4b5fd31637..0000000000000000000000000000000000000000 --- a/src/include/port/bsdi.h +++ /dev/null @@ -1,3 +0,0 @@ -/* - * src/include/port/bsdi.h - */ diff --git a/src/makefiles/Makefile.bsdi b/src/makefiles/Makefile.bsdi deleted file mode 100644 index e2c9be3dcd01c1403de1caa7961dcc7cbbc6b0c3..0000000000000000000000000000000000000000 --- a/src/makefiles/Makefile.bsdi +++ /dev/null @@ -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 $@ $< diff --git a/src/port/fseeko.c b/src/port/fseeko.c index c33d94c10961e6c3338551fb95b9b33dbb022158..882b22599aaafcb46c538582a6f69cf68d7210ff 100644 --- a/src/port/fseeko.c +++ b/src/port/fseeko.c @@ -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; } diff --git a/src/template/bsdi b/src/template/bsdi deleted file mode 100644 index dce8fb404ea165fe3238db8a28dd63e447ed0c6f..0000000000000000000000000000000000000000 --- a/src/template/bsdi +++ /dev/null @@ -1,3 +0,0 @@ -case $host_os in - bsdi2.0 | bsdi2.1 | bsdi3*) CC=gcc2;; -esac diff --git a/src/tools/find_typedef b/src/tools/find_typedef index 8b07de62ef8982b6f8bcd28c1325893a2de2fea5..3198a453e912869917a00bd3a7313aad6d4dbdcc 100755 --- a/src/tools/find_typedef +++ b/src/tools/find_typedef @@ -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