diff -u --recursive --new-file omni.orig/config/config.mk omni/config/config.mk --- omni.orig/config/config.mk Mon Jun 18 18:43:01 2001 +++ omni/config/config.mk Mon Dec 10 14:15:01 2001 @@ -40,6 +40,7 @@ # x86_uw7 SCO UnixWare 7 (7.1.0) # x86_freebsd_3.2 x86 FreeBSD 3.2, egcs 1.1.2 # x86_freebsd_4.0 x86 FreeBSD 4.0, gcc 2.95 +# x86_openbsd_3.0 x86 OpenBSD 3.0, gcc 2.95.3 # pc486_rtems_4.5.0 x86, RTEMS, gcc 2.95.2 # You should also look at /mk/platforms/$(platform).mk and if necessary @@ -80,6 +81,7 @@ #platform = x86_uw7 #platform = x86_freebsd_3.2 #platform = x86_freebsd_4.0 +#platform = x86_openbsd_3.0 #platform = pc486_rtems_4.5.0 # On Win32 platforms, uncomment the following line to build all the binaries diff -u --recursive --new-file omni.orig/include/omnithread.h omni/include/omnithread.h --- omni.orig/include/omnithread.h Mon Jun 18 18:43:01 2001 +++ omni/include/omnithread.h Mon Dec 10 14:16:34 2001 @@ -150,6 +150,9 @@ #elif defined(__freebsd__) #include +#elif defined(__openbsd__) +#include + #elif defined(__rtems__) #include #include diff -u --recursive --new-file omni.orig/mk/platforms/x86_openbsd_3.0.mk omni/mk/platforms/x86_openbsd_3.0.mk --- omni.orig/mk/platforms/x86_openbsd_3.0.mk Thu Jan 1 01:00:00 1970 +++ omni/mk/platforms/x86_openbsd_3.0.mk Mon Dec 10 14:15:22 2001 @@ -0,0 +1,99 @@ +# x86_openbsd.3.0.mk - make variables and rules specific to OpenBSD 3.0 +# started: 1999/06/12 afo +# [Last modified: 1999/06/13 12:42:06 by afo@xxo.zlug.org] +# [Last modified: 2001/12/10 by arrigo@albourne.com] + +OpenBSD = 1 +x86Processor = 1 + +# +# Python set-up +# +# You must set a path to a Python 1.5.2 interpreter. + +PYTHON = /usr/local/bin/python + + +# +# Include general unix things +# + +include $(THIS_IMPORT_TREE)/mk/unix.mk + + +# +# Standard programs +# + +AR = ar cq + +CPP = /usr/libexec/cpp + +CXX = g++ +CXXMAKEDEPEND += -D__cplusplus -D__GNUG__ -D__GNUC__ +CXXDEBUGFLAGS = -O2 + +CXXLINK = $(CXX) -pthread -s +CXXLINKOPTIONS = $(CXXDEBUGFLAGS) $(CXXOPTIONS) + +CXXOPTIONS = -Wall -Wno-unused +EgcsMajorVersion = 1 +EgcsMinorVersion = 1 # This is actually a post-1.0 egcs snapshot. + +CC = gcc +CMAKEDEPEND += -D__GNUC__ +CDEBUGFLAGS = -O2 + +CLINK = $(CC) +CLINKOPTIONS = $(CDEBUGFLAGS) $(COPTIONS) + +INSTALL = install -c + +IMPORT_CPPFLAGS += -D__x86__ -D__openbsd__ -D__OSVERSION__=3 + + +omniORBGatekeeperImplementation = OMNIORB_TCPWRAPGK +CorbaImplementation = OMNIORB + +# +# OMNI thread stuff +# + +ThreadSystem = Posix +OMNITHREAD_POSIX_CPPFLAGS = +OMNITHREAD_CPPFLAGS = -D_REENTRANT -D_THREAD_SAFE +OMNITHREAD_LIB = $(patsubst %,$(LibSearchPattern),omnithread) + +OMNITHREAD_POSIX_CPPFLAGS += -DUsePthread -DPthreadDraftVersion=10 + +lib_depend := $(patsubst %,$(LibPattern),omnithread) +OMNITHREAD_LIB_DEPEND := $(GENERATE_LIB_DEPEND) + + +# Default location of the omniORB configuration file [falls back to this if +# the environment variable OMNIORB_CONFIG is not set] : + +OMNIORB_CONFIG_DEFAULT_LOCATION = /etc/omniORB.cfg + +# Default directory for the omniNames log files. +OMNINAMES_LOG_DEFAULT_LOCATION = /var/omninames + +# Uncomment the following if you want all utils and examples build in +# this tree to statically linke with the omniORB libraries. +# build tools semistatic : shared with system libs and static with omniORB libs +#CORBA_LIB = -Wl,-Bstatic +#CORBA_LIB += -lomniORB3 -lomniDynamic2 -ltcpwrapGK -lomnithread +#CORBA_LIB += -Wl,-Bdynamic +#OMNITHREAD_LIB = +#CORBA_LIB_NODYN = -Wl,-Bstatic +#CORBA_LIB_NODYN += -lomniORB3 -ltcpwrapGK -lomnithread +#CORBA_LIB_NODYN += -Wl,-Bdynamic +#OMNITHREAD_LIB_NODYN = -lomnithread + +# +# Shared Library support. +# +BuildSharedLibrary = 1 # Enable +SHAREDLIB_CPPFLAGS = -fPIC +# +# everything else is default from unix.mk diff -u --recursive --new-file omni.orig/src/lib/omniORB2/orbcore/gatekeepers/alone/gatekeeper.cc omni/src/lib/omniORB2/orbcore/gatekeepers/alone/gatekeeper.cc --- omni.orig/src/lib/omniORB2/orbcore/gatekeepers/alone/gatekeeper.cc Mon Jul 3 16:38:20 2000 +++ omni/src/lib/omniORB2/orbcore/gatekeepers/alone/gatekeeper.cc Mon Dec 10 14:17:17 2001 @@ -99,7 +99,7 @@ // ******************************** // retrieve the client name // ******************************** -#if (defined(__GLIBC__) && __GLIBC__ >= 2) || (defined(__freebsd__) && __OSVERSION__ >= 4) +#if (defined(__GLIBC__) && __GLIBC__ >= 2) || (defined(__freebsd__) && __OSVERSION__ >= 4) || (defined(__openbsd__)) // GNU C library uses socklen_t * instead of int* in getpeername(). // This is suppose to be compatible with the upcoming POSIX standard. // FreeBSD 4.0 uses it too. diff -u --recursive --new-file omni.orig/src/lib/omniORB2/orbcore/tcpSocketMTfactory.cc omni/src/lib/omniORB2/orbcore/tcpSocketMTfactory.cc --- omni.orig/src/lib/omniORB2/orbcore/tcpSocketMTfactory.cc Mon Feb 19 17:16:43 2001 +++ omni/src/lib/omniORB2/orbcore/tcpSocketMTfactory.cc Mon Dec 10 14:16:59 2001 @@ -645,7 +645,7 @@ } { -# if (defined(__GLIBC__) && __GLIBC__ >= 2) || (defined(__freebsd__) && __OSVERSION__ >= 4) +# if (defined(__GLIBC__) && __GLIBC__ >= 2) || (defined(__freebsd__) && __OSVERSION__ >= 4) || (defined(__openbsd__)) // GNU C library uses socklen_t * instead of int* in getsockname(). // This is suppose to be compatible with the upcoming POSIX standard. // FreeBSD 4.0 uses it too. @@ -1402,7 +1402,7 @@ tcpSocketHandle_t new_sock; struct sockaddr_in raddr; -#if (defined(__GLIBC__) && __GLIBC__ >= 2) || (defined(__freebsd__) && __OSVERSION__ >= 4) +#if (defined(__GLIBC__) && __GLIBC__ >= 2) || (defined(__freebsd__) && __OSVERSION__ >= 4) || (defined(__openbsd__)) // GNU C library uses socklen_t * instead of int* in accept (). // This is suppose to be compatible with the upcoming POSIX standard. // FreeBSD 4.0 uses it too. @@ -1562,7 +1562,7 @@ tcpSocketHandle_t new_sock; struct sockaddr_in raddr; -#if (defined(__GLIBC__) && __GLIBC__ >= 2) || (defined(__freebsd__) && __OSVERSION__ >= 4) +#if (defined(__GLIBC__) && __GLIBC__ >= 2) || (defined(__freebsd__) && __OSVERSION__ >= 4) || (defined(__openbsd__)) // GNU C library uses socklen_t * instead of int* in accept (). // This is suppose to be compatible with the upcoming POSIX standard. // FreeBSD 4.0 uses it too. diff -u --recursive --new-file omni.orig/src/tool/omniidl/cxx/cccp/config-openbsd.h omni/src/tool/omniidl/cxx/cccp/config-openbsd.h --- omni.orig/src/tool/omniidl/cxx/cccp/config-openbsd.h Thu Jan 1 01:00:00 1970 +++ omni/src/tool/omniidl/cxx/cccp/config-openbsd.h Mon Dec 10 14:17:53 2001 @@ -0,0 +1,11 @@ +#ifdef __x86__ + +#define SIZEOF_UNSIGNED_CHAR 1 +#define SIZEOF_INT 4 +#define HAVE_STDLIB_H 1 +#define HAVE_STRERROR 1 + +#else +#error "You must set definitions for your architecture in config-openbsd.h" + +#endif diff -u --recursive --new-file omni.orig/src/tool/omniidl/cxx/cccp/config.h omni/src/tool/omniidl/cxx/cccp/config.h --- omni.orig/src/tool/omniidl/cxx/cccp/config.h Mon Jun 18 18:42:59 2001 +++ omni/src/tool/omniidl/cxx/cccp/config.h Mon Dec 10 14:17:50 2001 @@ -13,6 +13,9 @@ #elif defined(__freebsd__) #include "config-freebsd.h" +#elif defined(__openbsd__) +#include "config-openbsd.h" + #elif defined(__hpux__) #include "config-hpux.h"