|
From: Pascal S. <Pas...@cu...> - 2012-08-08 09:25:13
|
On Tue, 07 Aug 2012 21:51:14 +0200, Pascal Stumpf wrote:
> Ohai.
>
> Just informing you guys that I'm currently working on an OpenBSD port.
> Already got most stuff building and a shitload of patches (though mostly
> just #ifdef's). I'll probably start making a branch in a few days,
> though this will need to be merged with the other porting efforts
> (FreeBSD ...).
>
> Cheers,
> Pascal
So here's a patch with all the changes to make it compile on OpenBSD.
It does not work yet, but I'd like to get this in as soon as possible to
facilitate further work.
These are mostly #ifdef's, adapting to new standards (scope of var decls
in for loops), at least one 64bit bug and a fix for istr_string if it is
fed a NULL pointer. The database file patches contain some stuff that
is specific to my port (on github, openbsd-wip/x11/cde), but I think the
whole install framework should be revisited anyway to something that
respects $PREFIX (for fake installation) and doesn't hardcode shared
library versions.
diff --git a/cde/Imakefile b/cde/Imakefile
index 59f16e4..3cc2549 100644
--- a/cde/Imakefile
+++ b/cde/Imakefile
@@ -139,7 +139,6 @@ Everything.doc::
NamedTargetSubdirs(install.doc,$(DOCSUBDIRS),"installing",DESTDIR=$(DESTDIR),install)
NamedTargetSubdirs(install.man.doc,$(DOCSUBDIRS),"installing man pages",DESTDIR=$(DESTDIR),install.man)
-InstallLinkKitSubdirs($(DOCSUBDIRS))
NamedCleanSubdirs(clean.doc,$(DOCSUBDIRS))
NamedTagSubdirs(tags.doc,$(DOCSUBDIRS))
MakeMakeSubdirs($(DOCSUBDIRS),Makefiles.doc)
diff --git a/cde/admin/IntegTools/dbTools/installCDE.src b/cde/admin/IntegTools/dbTools/installCDE.src
index 6e13dd0..9c90278 100755
--- a/cde/admin/IntegTools/dbTools/installCDE.src
+++ b/cde/admin/IntegTools/dbTools/installCDE.src
@@ -207,6 +207,9 @@ CleanDaemons()
then
stopsrc -s inetd >>$LOGFILE 2>&1
fi
+ elif [ "$PLATFORM" = openbsd ]
+ then
+ true
else
ps -ef | grep $i | grep -v grep >/tmp/tmppsout
if [ -s /tmp/tmppsout ]
@@ -234,6 +237,9 @@ RestartInetd()
elif [ "$PLATFORM" = "dec" ]
then
/usr/sbin/inetd
+ elif [ "$PLATFORM" = "openbsd" ]
+ then
+ true
else
#ifdef hpV4
/usr/sbin/inetd
@@ -537,6 +543,10 @@ XCOMM
then
PLATFORM="linux"
PLATFORM_SCRIPT_DIR=""
+ elif [ $BUILDSYSTEM = "OpenBSD" ];
+ then
+ PLATFORM="openbsd"
+ PLATFORM_SCRIPT_DIR=""
else # Build system = HP
PLATFORM=hp-ux
PLATFORM_SCRIPT_DIR=hp
@@ -566,9 +576,6 @@ XCOMM
unset TMPDIR
- PATH=/bin:/usr/bin:/etc:/usr/bin/X11:
- export PATH
-
CLEANING="no"
CLEANING_ETC="no"
TARBALL="no"
@@ -872,9 +879,9 @@ XCOMM
fi
fi
- INSTALL_LOCATION=CDE_INSTALLATION_TOP
- CONFIGURE_LOCATION=CDE_CONFIGURATION_TOP
- LOGFILES_LOCATION=CDE_LOGFILES_TOP
+ [ -z "$INSTALL_LOCATION" ] && INSTALL_LOCATION=CDE_INSTALLATION_TOP
+ [ -z "$CONFIGURE_LOCATION" ] && CONFIGURE_LOCATION=CDE_CONFIGURATION_TOP
+ [ -z "$LOGFILES_LOCATION" ] && LOGFILES_LOCATION=CDE_LOGFILES_TOP
if [ -L $INSTALL_LOCATION -a "$CONFIGURE_ONLY" != "yes" ]
then
diff --git a/cde/admin/IntegTools/post_install/Imakefile b/cde/admin/IntegTools/post_install/Imakefile
index 04669e0..f8e3d8d 100644
--- a/cde/admin/IntegTools/post_install/Imakefile
+++ b/cde/admin/IntegTools/post_install/Imakefile
@@ -19,6 +19,9 @@ PLATFORM = hp-ux
PLATFORM = linux
SUBDIRS = linux
#endif
+#ifdef OpenBSDArchitecture
+PLATFORM = openbsd
+#endif
#ifdef RsArchitecture
PLATFORM = aix
SUBDIRS = ibm
diff --git a/cde/config/cf/Imake.cf b/cde/config/cf/Imake.cf
index 3c57d21..923dfae 100644
--- a/cde/config/cf/Imake.cf
+++ b/cde/config/cf/Imake.cf
@@ -51,6 +51,122 @@ XCOMM $TOG: Imake.cf /main/30 1998/04/28 13:55:25 barstow $
# undef i386
#endif /* bsdi */
+#ifdef __OpenBSD__
+# undef __OpenBSD__
+# undef __NetBSD__
+# define OpenBSDArchitecture
+# define KOpenBSDArchitecture
+# define MacroIncludeFile <OpenBSD.cf>
+# define MacroFile OpenBSD.cf
+# ifdef __i386__
+# define i386BsdArchitecture
+# define i386Architecture
+# undef i386
+# endif
+# if defined(__sparc__) || defined(sparc)
+# if !defined(__arch64__)
+# define SparcArchitecture
+# else
+# define Sparc64Architecture
+# endif
+# undef sparc
+# undef sparc64
+# endif
+# if defined(__mips__) || defined(mips)
+# define MipsArchitecture
+# ifdef __LP64__
+# define Mips64Architecture
+# endif
+# ifdef arc
+# define ArcArchitecture
+# undef arc
+# endif
+# ifdef sgi
+# define SGIArchitecture
+# undef sgi
+# endif
+# ifdef pmax
+# define PmaxArchitecture
+# undef pmax
+# endif
+# undef mips
+# undef __mips__
+# endif
+# if defined(__alpha__) || defined(alpha)
+# define AlphaArchitecture
+# undef __alpha__
+# undef alpha
+# endif
+# if defined(__amd64__) || defined(__x86_64__)
+# define AMD64Architecture
+# undef __amd64__
+# undef __x86_64__
+# undef amd64
+# endif
+# if defined(__arm__)
+# define Arm32Architecture
+# undef __arm__
+# if defined(zaurus)
+# undef zaurus
+# define ZaurusArchitecture
+# endif
+# endif
+# if defined(__mc68020__) || defined(mc68020)
+# define Mc68020Architecture
+# if defined(amiga)
+# define AmigaArchitecture
+# undef amiga
+# endif
+# if defined(hp300)
+# define Hp300Architecture
+# undef hp300
+# endif
+# if defined(mac68k)
+# define Mac68kArchitecture
+# undef mac68k
+# endif
+# if defined(mvme68k)
+# define Mvme68kArchitecture
+# undef mvme68k
+# endif
+# if defined(sun3)
+# define Sun3Architecture
+# undef sun3
+# endif
+# undef mc68000
+# endif
+# if defined(__m88k__) || defined(m88k)
+# define Mc88000Architecture
+# undef m88k
+# endif
+# ifdef __powerpc__
+# define PpcArchitecture
+# undef __powerpc__
+# undef __macppc__
+# undef macppc
+# endif
+# ifdef __sh__
+# undef __sh__
+# define SuperHArchitecture
+# endif
+# ifdef __vax__
+# undef vax
+# undef __vax__
+# define VaxArchitecture
+# endif
+# ifdef __hppa__
+# ifndef HPArchitecture
+# define HPArchitecture
+# endif
+# undef __hppa__
+# endif /* __hppa__ */
+#endif /* OpenBSD */
+
+/* Systems based on kernel of OpenBSD */
+#if defined(__OpenBSD_kernel__)
+#define KOpenBSDArchitecture
+#endif
+
#ifdef __NetBSD__
# define MacroIncludeFile <NetBSD.cf>
# define MacroFile NetBSD.cf
diff --git a/cde/config/cf/Library.tmpl b/cde/config/cf/Library.tmpl
index 065c78e..4575d60 100644
--- a/cde/config/cf/Library.tmpl
+++ b/cde/config/cf/Library.tmpl
@@ -79,6 +79,7 @@ CDEBUGFLAGS = LibraryCDebugFlags
CXXOPTIONS = LibraryCplusplusOptions
STD_DEFINES = LibraryDefines $(PROJECT_DEFINES)
CXXDEBUGFLAGS = LibraryCplusplusDebugFlags
+ CXXLIB = CplusplusLibC
# if defined(LargePICTable) && LargePICTable
# ifdef LargePositionIndependentCplusplusFlags
CXXPICFLAGS = LargePositionIndependentCplusplusFlags
diff --git a/cde/config/cf/Motif.tmpl b/cde/config/cf/Motif.tmpl
index 6873de6..abde63c 100644
--- a/cde/config/cf/Motif.tmpl
+++ b/cde/config/cf/Motif.tmpl
@@ -442,13 +442,18 @@ TOP_MOTIF_INCLUDES = -I$(MINCLUDESRC)
/* MTOOLKITSRC should be removed */
MTOOLKITSRC = $(TOOLKITSRC)
#if ImportMotif || UseInstalledMotif
- MINCLUDESRC = $(MTOP)/include
MDOCSRC = $(MTOP)/doc
MLOCSRC = $(MTOP)/localized
#else
- MINCLUDESRC = $(MTOP)/exports/include
MLOCSRC = $(MTOP)/exports/localized
#endif
+#if defined(TopMotifInclude)
+ MINCLUDESRC = TopMotifInclude
+#elif ImportMotif || UseInstalledMotif
+ MINCLUDESRC = $(MTOP)/include
+#else
+ MINCLUDESRC = $(MTOP)/exports/include
+#endif
MLIBSRC = $(MTOP)/lib
MCLIENTSRC = $(MTOP)/clients
MDEMOSRC = $(MTOP)/demos
diff --git a/cde/config/cf/bsdLib.tmpl b/cde/config/cf/bsdLib.tmpl
index 1c1d610..29ff0d6 100644
--- a/cde/config/cf/bsdLib.tmpl
+++ b/cde/config/cf/bsdLib.tmpl
@@ -13,3 +13,23 @@ XCOMM $XConsortium: bsdLib.tmpl /main/3 1996/09/28 16:09:25 rws $
#ifndef SharedXmuReqs
#define SharedXmuReqs $(LDPRELIBS) $(XTOOLONLYLIB) $(XONLYLIB)
#endif
+
+#ifndef SharedXReqs
+# define SharedXReqs $(XTOOLLIB) $(XLIB) $(LDPOSTLIBS)
+#endif
+
+#ifndef SharedXmReqs
+# define SharedXmReqs $(LDPRELIBS) SharedXReqs -lc
+#endif
+
+#ifndef SharedTtReqs
+# define SharedTtReqs $(LDPRELIBS) SharedXReqs $(CXXLIB)
+#endif
+
+#ifndef SharedDtSvcReqs
+# define SharedDtSvcReqs $(LDPRELIBS) SharedXReqs $(CXXLIB)
+#endif
+
+#ifndef SharedCsaReqs
+# define SharedCsaReqs -lXt $(LDPOSTLIBS)
+#endif
diff --git a/cde/config/cf/cde.tmpl b/cde/config/cf/cde.tmpl
index 5dfa301..a627226 100644
--- a/cde/config/cf/cde.tmpl
+++ b/cde/config/cf/cde.tmpl
@@ -35,7 +35,9 @@ XCOMM $XConsortium: cde.tmpl /main/2 1996/12/04 10:13:09 swick $
# endif
#endif
+#ifndef CDESharedRev
#define CDESharedRev 2.1
+#endif
#ifndef SharedLibPam
# define SharedLibPam HasSharedLibraries
diff --git a/cde/config/cf/site.def b/cde/config/cf/site.def
index 2cdc401..9404bd9 100644
--- a/cde/config/cf/site.def
+++ b/cde/config/cf/site.def
@@ -66,13 +66,17 @@ XCOMM site: $TOG: site.def /main/23 1998/03/19 18:43:26 mgreess $
#ifdef AfterVendorCF
+#ifndef X11ProjectRoot
# if defined(LinuxArchitecture) || defined(FreeBSDArchitecture)
# define X11ProjectRoot /usr
# else
# define X11ProjectRoot /X11
# endif
+#endif
+#ifndef ProjectRoot
# define ProjectRoot /usr/dt
+#endif
#ifdef SunArchitecture
# define DtLocalesToBuild de_DE.ISO8859-1 es_ES.ISO8859-1 fr_FR.ISO8859-1 it_IT.ISO8859-1
diff --git a/cde/config/imake/imakemdep.h b/cde/config/imake/imakemdep.h
index 2ec32e2..ff279da 100644
--- a/cde/config/imake/imakemdep.h
+++ b/cde/config/imake/imakemdep.h
@@ -637,6 +637,10 @@ char *cpp_argv[ARGUMENTS] = {
# define DEFAULT_OS_MINOR_REV "r %*d.%[0-9]"
# define DEFAULT_OS_TEENY_REV "r %*d.%*d.%[0-9]"
# define DEFAULT_OS_NAME "srm %[^\n]"
+#elif defined(CSRG_BASED)
+# define DEFAULT_OS_MAJOR_REV "r %[0-9]"
+# define DEFAULT_OS_MINOR_REV "r %*d.%[0-9]"
+# define DEFAULT_OS_NAME "srm %[^\n]"
#endif
#else /* else MAKEDEPEND */
diff --git a/cde/config/makedepend/def.h b/cde/config/makedepend/def.h
index 85ef815..1678222 100644
--- a/cde/config/makedepend/def.h
+++ b/cde/config/makedepend/def.h
@@ -150,7 +150,7 @@ char *realloc();
char *copy();
char *base_name();
-char *getline();
+char *our_getline();
struct symtab **slookup();
struct symtab **isdefined();
struct symtab **fdefined();
diff --git a/cde/config/makedepend/main.c b/cde/config/makedepend/main.c
index 631eded..ae67ecb 100644
--- a/cde/config/makedepend/main.c
+++ b/cde/config/makedepend/main.c
@@ -499,7 +499,7 @@ match(str, list)
* Get the next line. We only return lines beginning with '#' since that
* is all this program is ever interested in.
*/
-char *getline(filep)
+char *our_getline(filep)
register struct filepointer *filep;
{
register char *p, /* walking pointer */
diff --git a/cde/config/makedepend/parse.c b/cde/config/makedepend/parse.c
index bad3fcf..07153be 100644
--- a/cde/config/makedepend/parse.c
+++ b/cde/config/makedepend/parse.c
@@ -56,7 +56,7 @@ gobble(filep, file, file_red)
register char *line;
register int type;
- while (line = getline(filep)) {
+ while (line = our_getline(filep)) {
switch(type = deftype(line, filep, file_red, file, FALSE)) {
case IF:
case IFFALSE:
@@ -544,7 +544,7 @@ find_includes(filep, file, file_red, recursion, failOK)
register int type;
boolean recfailOK;
- while (line = getline(filep)) {
+ while (line = our_getline(filep)) {
switch(type = deftype(line, filep, file_red, file, TRUE)) {
case IF:
doif:
diff --git a/cde/databases/CDE-FONTS.udb b/cde/databases/CDE-FONTS.udb
index c61f1da..4943f95 100644
--- a/cde/databases/CDE-FONTS.udb
+++ b/cde/databases/CDE-FONTS.udb
@@ -1067,3 +1067,27 @@ programs/fontaliases/postscript/ja/prolog.ps
#{ dec
# install_target = /usr/dt/config/psfonts/zh_TW/prolog.ps
#}
+
+
+#
+# for OpenBSD
+#
+programs/fontaliases/linux/C/fonts.alias
+{ openbsd
+ install_target = /usr/dt/config/xfonts/C/fonts.alias
+}
+#
+programs/fontaliases/linux/C/fonts.dir
+{ openbsd
+ install_target = /usr/dt/config/xfonts/C/fonts.dir
+}
+#
+programs/fontaliases/linux/ja_JP/fonts.alias
+{ openbsd
+ install_target = /usr/dt/config/xfonts/ja_JP/fonts.alias
+}
+#
+programs/fontaliases/linux/ja_JP/fonts.dir
+{ openbsd
+ install_target = /usr/dt/config/xfonts/ja_JP/fonts.dir
+}
diff --git a/cde/databases/CDE-SHLIBS.src b/cde/databases/CDE-SHLIBS.src
index e3e07ed..0708132 100644
--- a/cde/databases/CDE-SHLIBS.src
+++ b/cde/databases/CDE-SHLIBS.src
@@ -1223,3 +1223,75 @@ XCOMM
install_target = /usr/shlib/libDtMmdb.so
type = sym_link
}
+
+
+XCOMM
+XCOMM
+XCOMM >>-----------------------------
+XCOMM openbsd libraries
+XCOMM <<-----------------------------
+XCOMM
+
+XCOMM
+lib/DtHelp/libDtHelp.so.%%SHVERSION%%
+{ openbsd
+ install_target = %%PREFIX%%/lib/libDtHelp.so.%%SHVERSION%%
+ mode = 0755
+}
+XCOMM
+lib/DtPrint/libDtPrint.so.%%SHVERSION%%
+{ openbsd
+ install_target = %%PREFIX%%/lib/libDtPrint.so.%%SHVERSION%%
+ mode = 0755
+}
+XCOMM
+lib/DtMrm/libDtMrm.so.%%SHVERSION%%
+{ openbsd
+ install_target = %%PREFIX%%/lib/libDtMrm.so.%%SHVERSION%%
+ mode = 0755
+}
+XCOMM
+lib/DtSvc/libDtSvc.so.%%SHVERSION%%
+{ openbsd
+ install_target = %%PREFIX%%/lib/libDtSvc.so.%%SHVERSION%%
+ mode = 0755
+}
+XCOMM
+lib/DtWidget/libDtWidget.so.%%SHVERSION%%
+{ openbsd
+ install_target = %%PREFIX%%/lib/libDtWidget.so.%%SHVERSION%%
+ mode = 0755
+}
+XCOMM
+lib/DtTerm/libDtTerm.so.%%SHVERSION%%
+{ openbsd
+ install_target = %%PREFIX%%/lib/libDtTerm.so.%%SHVERSION%%
+ mode = 0755
+}
+XCOMM
+lib/tt/lib/libtt.so.%%SHVERSION%%
+{ openbsd
+ install_target = %%PREFIX%%/lib/libtt.so.%%SHVERSION%%
+ mode = 0755
+}
+XCOMM
+lib/csa/libcsa.so.%%SHVERSION%%
+{ openbsd
+ install_target = %%PREFIX%%/lib/libcsa.so.%%SHVERSION%%
+ mode = 0755
+}
+XCOMM
+lib/DtSearch/libDtSearch.so.%%SHVERSION%%
+{ openbsd
+ install_target = %%PREFIX%%/lib/libDtSearch.so.%%SHVERSION%%
+ mode = 0755
+}
+#if 0 /* JET - not for openbsd (yet) */
+XCOMM
+lib/DtMmdb/libDtMmdb.so.%%SHVERSION%%
+{ openbsd
+ install_target = %%PREFIX%%/lib/libDtMmdb.so.%%SHVERSION%%
+ mode = 0755
+}
+XCOMM
+#endif
diff --git a/cde/databases/Imakefile b/cde/databases/Imakefile
index 79f539f..2db62e4 100644
--- a/cde/databases/Imakefile
+++ b/cde/databases/Imakefile
@@ -27,6 +27,9 @@ UDB_RELEASE_OPT = -ReleaseStream uxp
#ifdef LinuxArchitecture
UDB_RELEASE_OPT = -ReleaseStream linux
#endif
+#ifdef OpenBSDArchitecture
+UDB_RELEASE_OPT = -ReleaseStream openbsd
+#endif
/*
* Insure that symbols used in the .udb files are undefined for
diff --git a/cde/doc/C/Imakefile b/cde/doc/C/Imakefile
index ff8e50c..70e475c 100644
--- a/cde/doc/C/Imakefile
+++ b/cde/doc/C/Imakefile
@@ -3,7 +3,7 @@ XCOMM $XConsortium: Imakefile /main/10 1996/07/23 22:00:00 rws $
#define PassCDebugFlags
/* due to split-VOB setup, force help to come last in make Makefiles */
-#if defined(LinuxArchitecture)
+#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture)
XCOMM we cannot build guides on linux yet
SUBDIRS = man help
BSUBDIRS = help man
diff --git a/cde/doc/ja_JP.dt-eucJP/Imakefile b/cde/doc/ja_JP.dt-eucJP/Imakefile
index 742811e..c775b2c 100644
--- a/cde/doc/ja_JP.dt-eucJP/Imakefile
+++ b/cde/doc/ja_JP.dt-eucJP/Imakefile
@@ -3,7 +3,7 @@ XCOMM $TOG: Imakefile /main/5 1997/03/05 11:10:37 damon $
#define PassCDebugFlags
/* due to split-VOB setup, force help to come last in make Makefiles */
-#if defined(LinuxArchitecture)
+#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture)
XCOMM we cannot build guides on linux yet
SUBDIRS = help
BSUBDIRS = help
diff --git a/cde/include/EUSCompat.h b/cde/include/EUSCompat.h
index 31c43b0..3d85398 100644
--- a/cde/include/EUSCompat.h
+++ b/cde/include/EUSCompat.h
@@ -110,7 +110,7 @@ typedef enum {B_FALSE, B_TRUE} boolean_t;
#endif /* HPUX */
-#if defined(linux)
+#if defined(linux) || defined(CSRG_BASED)
typedef enum {B_FALSE, B_TRUE} boolean_t;
#define MAXNAMELEN 256
diff --git a/cde/lib/DtHelp/Imakefile b/cde/lib/DtHelp/Imakefile
index 89fe15c..eb219b5 100644
--- a/cde/lib/DtHelp/Imakefile
+++ b/cde/lib/DtHelp/Imakefile
@@ -28,6 +28,9 @@ BIT_ORDER_DEFINES = -DLSB_BIT_ORDER
#endif
INCLUDES = -I. -I./il -I./jpeg
+#if defined(OpenBSDArchitecture)
+INCLUDES += -I$(INCROOT)
+#endif
DEFINES = -DDTLIB -DXK_MISCELLANY $(LOCAL_DEFINES) \
-DCDE_INSTALLATION_TOP='"$(CDE_INSTALLATION_TOP)"' \
-DCDE_CONFIGURATION_TOP='"$(CDE_CONFIGURATION_TOP)"' \
diff --git a/cde/lib/DtPrint/PrintSetupB.c b/cde/lib/DtPrint/PrintSetupB.c
index 0c1eb86..c7fa49f 100644
--- a/cde/lib/DtPrint/PrintSetupB.c
+++ b/cde/lib/DtPrint/PrintSetupB.c
@@ -46,7 +46,6 @@
#endif
#include <stdlib.h>
-#include <values.h>
#include <stdio.h>
#include <Xm/XmAll.h>
@@ -60,6 +59,8 @@
#include <Dt/PsubUtilI.h>
#include <Dt/PrintI.h>
+#define MAXINT INT_MAX
+
/*
* ------------------------------------------------------------------------
* Constant Definitions
diff --git a/cde/lib/DtSearch/dtsrapi.c b/cde/lib/DtSearch/dtsrapi.c
index 27eded9..1d36a7e 100644
--- a/cde/lib/DtSearch/dtsrapi.c
+++ b/cde/lib/DtSearch/dtsrapi.c
@@ -313,7 +313,7 @@ int DtSearchInit (
aa_argv0 = argv0;
if (err_file)
aa_stderr = err_file;
-#if defined(linux)
+#if defined(linux) || defined(CSRG_BASED)
else
aa_stderr = stderr;
#endif
@@ -337,7 +337,9 @@ int DtSearchInit (
signal (SIGQUIT, signal_abort); /* quit, ctrl-d */
signal (SIGKILL, signal_abort); /* (kill -9, cannot be trapped) */
signal (SIGTERM, signal_abort); /* kill [-15], sfwr terminate */
+#if !defined(CSRG_BASED)
signal (SIGPWR, signal_abort); /* power failure imminent */
+#endif
#ifdef _AIX
signal (SIGXCPU, signal_abort); /* cpu time limit exceeded */
signal (SIGDANGER, signal_abort); /* imminent paging space crash */
diff --git a/cde/lib/DtSearch/userint.c b/cde/lib/DtSearch/userint.c
index 2036ef7..2c2c416 100644
--- a/cde/lib/DtSearch/userint.c
+++ b/cde/lib/DtSearch/userint.c
@@ -105,7 +105,9 @@ void init_user_interrupt (void)
signal (SIGKILL, flag_shutdown); /* kill -9, cannot be trapped */
signal (SIGALRM, flag_shutdown); /* called alarm() polling timer */
signal (SIGTERM, flag_shutdown); /* kill [-15], sfwr terminate */
+#if !defined(CSRG_BASED)
signal (SIGPWR, flag_shutdown); /* power failure imminent */
+#endif
signal (SIGUSR1, flag_shutdown); /* kill -30, "pings" OE */
#ifdef _AIX
signal (SIGXCPU, flag_shutdown); /* cpu time limit exceeded */
diff --git a/cde/lib/DtSvc/DtCodelibs/buf.C b/cde/lib/DtSvc/DtCodelibs/buf.C
index 13abb89..e13e202 100644
--- a/cde/lib/DtSvc/DtCodelibs/buf.C
+++ b/cde/lib/DtSvc/DtCodelibs/buf.C
@@ -118,7 +118,8 @@ _SHXbuf::reset(boolean g, boolean comp)
char **
_SHXbuf::vector()
{
- for (int i = 0; i < vec.size(); i++)
+ int i;
+ for (i = 0; i < vec.size(); i++)
vec[i] = &buf[long(vec[i])];
vec[i] = NULL;
diff --git a/cde/lib/DtSvc/DtCodelibs/filegen.C b/cde/lib/DtSvc/DtCodelibs/filegen.C
index e29f1c3..ad8c8de 100644
--- a/cde/lib/DtSvc/DtCodelibs/filegen.C
+++ b/cde/lib/DtSvc/DtCodelibs/filegen.C
@@ -272,10 +272,11 @@ _SHXbuf::filegen()
// Find the longest match if we are doing completion:
if (completion)
{
+ long i;
// compare all entries to a copy of the first entry
strcpy(filebuf, &bufptr[long(vec[0])]);
- for (long i = 1; i < vec.size(); i++)
+ for (i = 1; i < vec.size(); i++)
{
register char *ref = filebuf;
register char *ptr = &bufptr[long(vec[i])];
diff --git a/cde/lib/DtSvc/DtEncap/spc-termio.c b/cde/lib/DtSvc/DtEncap/spc-termio.c
index 033453a..89b7b4e 100644
--- a/cde/lib/DtSvc/DtEncap/spc-termio.c
+++ b/cde/lib/DtSvc/DtEncap/spc-termio.c
@@ -36,7 +36,7 @@
#include <bms/stringbuf.h>
#include <termios.h>
-#if !defined(linux)
+#if !defined(linux) && !defined(CSRG_BASED)
#include <sys/termio.h>
#endif
#include <codelibs/stringx.h>
@@ -145,6 +145,7 @@ static struct modes_s Output_modes[] = {
"OCRNL", OCRNL,
"ONOCR", ONOCR,
"ONLRET", ONLRET,
+#if !defined(CSRG_BASED)
"OFILL", OFILL,
"OFDEL", OFDEL,
"NLDLY", NLDLY,
@@ -169,6 +170,7 @@ static struct modes_s Output_modes[] = {
"FFDLY", FFDLY,
"FF0", FF0,
"FF1", FF1,
+#endif
END_OF_LIST, 0
};
diff --git a/cde/lib/DtSvc/DtUtil1/CmdMain.c b/cde/lib/DtSvc/DtUtil1/CmdMain.c
index 00e64ec..d57a2f4 100644
--- a/cde/lib/DtSvc/DtUtil1/CmdMain.c
+++ b/cde/lib/DtSvc/DtUtil1/CmdMain.c
@@ -43,7 +43,7 @@
#ifdef __apollo
#include "/sys5/usr/include/sys/termio.h"
#else
-#include <termio.h>
+#include <termios.h>
#endif
#include <errno.h>
#include <unistd.h>
@@ -989,7 +989,7 @@ _DtCmdCommandInvokerExecute (
if (commandPid == 0)
{
-#if defined(__hp_osf) || defined(__osf__)
+#if defined(__hp_osf) || defined(__osf__) || defined(CSRG_BASED)
setsid() ;
#else
(void) setpgrp ();
diff --git a/cde/lib/DtSvc/DtUtil1/Dts.c b/cde/lib/DtSvc/DtUtil1/Dts.c
index 4c61d8a..4b5956c 100644
--- a/cde/lib/DtSvc/DtUtil1/Dts.c
+++ b/cde/lib/DtSvc/DtUtil1/Dts.c
@@ -49,7 +49,6 @@
#include <string.h>
#include <stdlib.h>
#include <ctype.h>
-#include <values.h>
#include <sys/mman.h>
#include <stdio.h>
#include <fcntl.h>
@@ -59,6 +58,10 @@
* On HP MAXINT is defined in both <values.h> and <sys/param.h>
*/
#undef MAXINT
+#elif defined(CSRG_BASED)
+#define MAXINT INT_MAX
+#else
+#include <values.h>
#endif
#include <sys/param.h>
#include <sys/errno.h>
diff --git a/cde/lib/DtSvc/DtUtil2/XlationSvc.c b/cde/lib/DtSvc/DtUtil2/XlationSvc.c
index 4d7dc3d..cbb6982 100644
--- a/cde/lib/DtSvc/DtUtil2/XlationSvc.c
+++ b/cde/lib/DtSvc/DtUtil2/XlationSvc.c
@@ -2197,7 +2197,7 @@ int _DtXlateGetXlateEnv(
/* then look up version number of execution host */
if (ret_AppExecEnvVersion)
{
-#if defined(sun) || defined(_AIX) || defined(USL) || defined(__uxp__) || defined(__osf__) || defined(linux)
+#if defined(sun) || defined(_AIX) || defined(USL) || defined(__uxp__) || defined(__osf__) || defined(linux) || defined(CSRG_BASED)
char version[SYS_NMLN+SYS_NMLN+2];
#else
char version[UTSLEN+UTSLEN+2];
@@ -2250,7 +2250,7 @@ int _DtXlateGetXlateEnv(
#error OSMAJORVERSION and/or OSMINORVERSION not defined
#endif
-#if defined(linux)
+#if defined(linux) || defined(CSRG_BASED)
sprintf(buf,"%s%s%s", STR(OSMAJORVERSION),
nl_langinfo('.'), STR(OSMINORVERSION));
#else
diff --git a/cde/lib/DtSvc/include/bms/sbstdinc.h b/cde/lib/DtSvc/include/bms/sbstdinc.h
index 05711f1..6d5ca8c 100644
--- a/cde/lib/DtSvc/include/bms/sbstdinc.h
+++ b/cde/lib/DtSvc/include/bms/sbstdinc.h
@@ -59,7 +59,7 @@
/************************************************************************/
/* Domain/OS BSD has bzero(), bcmp(), and bcopy() defined. */
-#if !defined(apollo) || !defined(__bsd)
+#if !(defined(apollo) && defined(__bsd)) && !defined(BSD)
#if defined(__STDC__)
#if !defined(linux) && !defined(__osf__) && !defined(_XFUNCS_H_)
diff --git a/cde/lib/DtSvc/include/codelibs/dynarray.h b/cde/lib/DtSvc/include/codelibs/dynarray.h
index 8c2e88c..51f03cd 100644
--- a/cde/lib/DtSvc/include/codelibs/dynarray.h
+++ b/cde/lib/DtSvc/include/codelibs/dynarray.h
@@ -36,10 +36,10 @@
#ifndef __DYNARRAY_H_
#define __DYNARRAY_H_
-#if !defined(linux)
+#if !defined(linux) && !defined(CSRG_BASED)
#include <generic.h>
#endif
-#if defined(USL) || defined(__uxp__) || defined(__osf__) || defined(sun) || defined(linux)
+#if defined(USL) || defined(__uxp__) || defined(__osf__) || defined(sun) || defined(linux) || defined(CSRG_BASED)
#define _DELETE_ARRAY(sz) delete[]
#else
#define _DELETE_ARRAY(sz) delete[(sz)]
diff --git a/cde/lib/DtSvc/include/codelibs/privbuf.h b/cde/lib/DtSvc/include/codelibs/privbuf.h
index e3a538b..23f7840 100644
--- a/cde/lib/DtSvc/include/codelibs/privbuf.h
+++ b/cde/lib/DtSvc/include/codelibs/privbuf.h
@@ -48,7 +48,7 @@ typedef void (*privbuf_func)(void *v);
#include <stddef.h>
#include <stdlib.h>
-#if defined(__osf__) || defined(sun) || defined(linux)
+#if defined(__osf__) || defined(sun) || defined(linux) || defined(CSRG_BASED)
// The DEC C++ compiler rejects valid inline declarations, claiming
// they have both internal and external linkage.
#else
diff --git a/cde/lib/DtSvc/include/codelibs/stringx.h b/cde/lib/DtSvc/include/codelibs/stringx.h
index 6ccc6ce..0d878b6 100644
--- a/cde/lib/DtSvc/include/codelibs/stringx.h
+++ b/cde/lib/DtSvc/include/codelibs/stringx.h
@@ -75,7 +75,7 @@ extern "C"
#ifdef __cplusplus
char *strtokx(char *&ptr, const char *sep);
-# if !defined(__osf__) && !defined(linux)
+# if !defined(__osf__) && !defined(linux) && !defined(CSRG_BASED)
char **strsep(const char *str, const char *sep,
boolean whsp = TRUE, int *num = NULL);
# if !defined(__osf__)
@@ -85,7 +85,7 @@ extern "C"
#else /* __STDC__ */
char *strtokx(char **ptr, const char *sep);
-# if !defined(linux)
+# if !defined(linux) && !defined(CSRG_BASED)
char **strsep(const char *str, const char *sep,
boolean whsp, int *num);
#endif
@@ -137,7 +137,7 @@ inline void strfree(const char *s)
{ if (s != NULL) free((char *)s); }
#else
inline void strfree(const char *s)
-#if defined(__hpux) || defined(__osf__)
+#if defined(__hpux) || defined(__osf__) || defined(CSRG_BASED)
{ if (s != NULL) free((void *)s); }
#else
{ if (s != NULL) free((const void *)s); }
diff --git a/cde/lib/DtTerm/Term/TermParse.c b/cde/lib/DtTerm/Term/TermParse.c
index 2d41043..88993f6 100644
--- a/cde/lib/DtTerm/Term/TermParse.c
+++ b/cde/lib/DtTerm/Term/TermParse.c
@@ -57,7 +57,7 @@ static char rcs_id[] = "$TOG: TermParse.c /main/3 1999/10/15 12:25:13 mgreess $"
*/
#undef MAXINT
#endif
-#include <values.h>
+#define MAXSHORT SHRT_MAX
#if defined(USL) || defined(__uxp__)
#include <ctype.h>
diff --git a/cde/lib/DtTerm/TermPrim/Imakefile b/cde/lib/DtTerm/TermPrim/Imakefile
index 4fceb3c..286bcd8 100644
--- a/cde/lib/DtTerm/TermPrim/Imakefile
+++ b/cde/lib/DtTerm/TermPrim/Imakefile
@@ -109,6 +109,10 @@ LinkFile(TermPrimGetPty.c,TermPrimGetPty-svr4.c)
LinkFile(TermPrimGetPty.c,TermPrimGetPty-svr4.c)
#endif
+#ifdef OpenBSDArchitecture
+LinkFile(TermPrimGetPty.c,TermPrimGetPty-bsd.c)
+#endif
+
SubdirLibraryRule($(OBJS))
DependTarget()
diff --git a/cde/lib/DtTerm/TermPrim/TermHeader.h b/cde/lib/DtTerm/TermPrim/TermHeader.h
index fcee6e3..d955c4d 100644
--- a/cde/lib/DtTerm/TermPrim/TermHeader.h
+++ b/cde/lib/DtTerm/TermPrim/TermHeader.h
@@ -44,7 +44,7 @@
#include <Xm/Xm.h>
#include <X11/Xos.h>
-#if defined(linux) || defined(UXPArchitecture) || (defined(USL) && (OSMAJORVERSION > 1))
+#if defined(linux) || defined(UXPArchitecture) || (defined(USL) && (OSMAJORVERSION > 1)) || defined(CSRG_BASED)
#define _NFILE FOPEN_MAX
#endif
diff --git a/cde/lib/DtTerm/TermPrim/TermPrimGetPty-bsd.c b/cde/lib/DtTerm/TermPrim/TermPrimGetPty-bsd.c
index ee7fe60..9422cc7 100644
--- a/cde/lib/DtTerm/TermPrim/TermPrimGetPty-bsd.c
+++ b/cde/lib/DtTerm/TermPrim/TermPrimGetPty-bsd.c
@@ -254,7 +254,7 @@ GetPty(char **ptySlave, char **ptyMaster)
* name for the tty that everyone else will
* use...
*/
- if (c1 = _XTtyname(ttyFd, tty_buf)) {
+ if (c1 = _XTtyname(ttyFd)) {
ttyDev = realloc(ttyDev, strlen(c1) + 1);
(void) strcpy(ttyDev, c1);
}
diff --git a/cde/lib/DtTerm/TermPrim/TermPrimOSDepI.h b/cde/lib/DtTerm/TermPrim/TermPrimOSDepI.h
index 47061d7..e5a7b77 100644
--- a/cde/lib/DtTerm/TermPrim/TermPrimOSDepI.h
+++ b/cde/lib/DtTerm/TermPrim/TermPrimOSDepI.h
@@ -96,6 +96,12 @@
# define USE_TCSENDBREAK /* use tiocbreak() */
#endif /* LINUX_ARCHITECTURE */
+#ifdef OPENBSD_ARCHITECTURE
+# define HAS_SETEUID /* seteuid available */
+# define HAS_SETREUID /* setreuid available */
+# define USE_TCSENDBREAK /* use tiocbreak() */
+#endif /* OPENBSD_ARCHITECTURE */
+
#ifdef SUN_ARCHITECTURE
# define XOR_CAPS_LOCK /* xor caps lock and shift */
# define USE_SRIOCSREDIR /* use SRIOCSREDIR ioctl for -C */
diff --git a/cde/lib/DtTerm/TermPrim/TermPrimParser.c b/cde/lib/DtTerm/TermPrim/TermPrimParser.c
index 98c606b..031364e 100644
--- a/cde/lib/DtTerm/TermPrim/TermPrimParser.c
+++ b/cde/lib/DtTerm/TermPrim/TermPrimParser.c
@@ -47,7 +47,7 @@ static char rcs_id[] = "$TOG: TermPrimParser.c /main/2 1999/10/15 12:23:41 mgree
*/
#undef MAXINT
#endif
-#include <values.h>
+#define MAXINT INT_MAX
#ifdef BBA
#pragma BBA_IGNORE
diff --git a/cde/lib/DtTerm/TermPrim/TermPrimSetPty.c b/cde/lib/DtTerm/TermPrim/TermPrimSetPty.c
index 18e84a6..49fc8c9 100644
--- a/cde/lib/DtTerm/TermPrim/TermPrimSetPty.c
+++ b/cde/lib/DtTerm/TermPrim/TermPrimSetPty.c
@@ -109,6 +109,17 @@ static char rcs_id[] = "$TOG: TermPrimSetPty.c /main/2 1998/04/03 17:11:24 mgree
#define XTTYMODE_weras 14
#define XTTYMODE_lnext 15
#define NXTTYMODES 16
+
+#if defined(CSRG_BASED)
+#define TAB3 0x00000000
+#define NLDLY 0x00000000
+#define CRDLY 0x00000000
+#define TABDLY 0x00000000
+#define BSDLY 0x00000000
+#define VTDLY 0x00000000
+#define FFDLY 0x00000000
+#define CBAUD 0x00000000
+#endif
typedef struct _ttyMode
{
char *name;
diff --git a/cde/lib/DtTerm/TermPrim/TermPrimSetUtmp.c b/cde/lib/DtTerm/TermPrim/TermPrimSetUtmp.c
index 5619780..4328bd2 100644
--- a/cde/lib/DtTerm/TermPrim/TermPrimSetUtmp.c
+++ b/cde/lib/DtTerm/TermPrim/TermPrimSetUtmp.c
@@ -332,6 +332,7 @@ _DtTermPrimUtmpGetUtLine(int pty, char *ptyName)
static char *
UtmpEntryCreate(Widget w, pid_t pid, char *utmpLine)
{
+#if !defined(CSRG_BASED) /* XXX */
DtTermPrimitiveWidget tw = (DtTermPrimitiveWidget) w;
struct termData *tpd = tw->term.tpd;
struct utmp ut;
@@ -489,6 +490,9 @@ UtmpEntryCreate(Widget w, pid_t pid, char *utmpLine)
/* failure... */
(void) endutent();
return((char *) 0);
+#else /* __OpenBSD__ */
+ return(utmpLine);
+#endif
}
/* this is a public wrapper around the previous function that runs the
@@ -511,6 +515,7 @@ _DtTermPrimUtmpEntryCreate(Widget w, pid_t pid, char *utmpLine)
static void
UtmpEntryDestroy(Widget w, char *utmpLine)
{
+#if !defined(CSRG_BASED)
struct utmp ut;
struct utmp *utPtr;
time_t now;
@@ -537,6 +542,7 @@ UtmpEntryDestroy(Widget w, char *utmpLine)
(void) endutent();
(void) DeleteUtmpInfo(utmpLine);
+#endif /* !__OpenBSD__ */
}
/* this is a public wrapper around the previous function that runs the
diff --git a/cde/lib/DtTerm/TermPrim/TermPrimSubproc.c b/cde/lib/DtTerm/TermPrim/TermPrimSubproc.c
index b1d706c..f0d3148 100644
--- a/cde/lib/DtTerm/TermPrim/TermPrimSubproc.c
+++ b/cde/lib/DtTerm/TermPrim/TermPrimSubproc.c
@@ -38,7 +38,7 @@ static char rcs_id[] = "$TOG: TermPrimSubproc.c /main/11 1998/04/20 12:45:57 mgr
#include "TermHeader.h"
#include <fcntl.h>
-#if defined(ALPHA_ARCHITECTURE) || defined(CSRG_ARCHITECTURE) || defined(LINUX_ARCHITECTURE)
+#if defined(ALPHA_ARCHITECTURE) || defined(CSRG_ARCHITECTURE) || defined(LINUX_ARCHITECTURE) || defined(OPENBSD_ARCHITECTURE)
/* For TIOCSTTY definitions */
#include <sys/ioctl.h>
#endif /* ALPHA_ARCHITECTURE */
@@ -461,7 +461,7 @@ _DtTermPrimSubprocExec(Widget w,
/* child...
*/
_DtTermProcessUnlock();
-#if defined(ALPHA_ARCHITECTURE) || defined(CSRG_ARCHITECTURE) || defined(LINUX_ARCHITECTURE)
+#if defined(ALPHA_ARCHITECTURE) || defined(CSRG_ARCHITECTURE) || defined(LINUX_ARCHITECTURE) || defined(OPENBSD_ARCHITECTURE)
/* establish a new session for child */
setsid();
#else
@@ -482,7 +482,7 @@ _DtTermPrimSubprocExec(Widget w,
(void) _exit(1);
}
-#if defined(ALPHA_ARCHITECTURE) || defined(CSRG_ARCHITECTURE) || defined(LINUX_ARCHITECTURE)
+#if defined(ALPHA_ARCHITECTURE) || defined(CSRG_ARCHITECTURE) || defined(LINUX_ARCHITECTURE) || defined(OPENBSD_ARCHITECTURE)
/* BSD needs to do this to acquire pty as controlling terminal */
if (ioctl(pty, TIOCSCTTY, (char *)NULL) < 0) {
(void) close(pty);
diff --git a/cde/lib/DtTerm/TermPrim/TermPrimUtil.c b/cde/lib/DtTerm/TermPrim/TermPrimUtil.c
index 608171d..1d9a638 100644
--- a/cde/lib/DtTerm/TermPrim/TermPrimUtil.c
+++ b/cde/lib/DtTerm/TermPrim/TermPrimUtil.c
@@ -462,7 +462,7 @@ _DtTermPrimStartLog(Widget w)
** reset signals
*/
(void) signal(SIGHUP, SIG_DFL);
- (void) signal(SIGCLD, SIG_DFL);
+ (void) signal(SIGCHLD, SIG_DFL);
#ifdef BBA
_bA_dump();
#endif /* BBA */
diff --git a/cde/lib/DtWidget/Editor.c b/cde/lib/DtWidget/Editor.c
index c851ce2..431dbb5 100644
--- a/cde/lib/DtWidget/Editor.c
+++ b/cde/lib/DtWidget/Editor.c
@@ -67,6 +67,8 @@
#elif defined(linux)
# include <wctype.h>
# define NO_putwc
+#elif defined(CSRG_BASED)
+# include <wctype.h>
#endif /* linux */
#include <sys/wait.h>
diff --git a/cde/lib/DtWidget/Imakefile b/cde/lib/DtWidget/Imakefile
index 67e2a41..9c1a80f 100644
--- a/cde/lib/DtWidget/Imakefile
+++ b/cde/lib/DtWidget/Imakefile
@@ -15,6 +15,8 @@ XCOMM $XConsortium: Imakefile /main/8 1996/04/21 19:11:16 drk $
DEFINES = DtWidgetDefines
#if defined(LinuxArchitecture)
INCLUDES = -I. -I/usr/include/freetype2
+#elif defined(OpenBSDArchitecture)
+INCLUDES = -I. -I$(XPROJECTROOT)/include/freetype2
#else
INCLUDES = -I.
#endif
diff --git a/cde/lib/csa/Imakefile b/cde/lib/csa/Imakefile
index fe1b785..fccccdc 100644
--- a/cde/lib/csa/Imakefile
+++ b/cde/lib/csa/Imakefile
@@ -15,7 +15,7 @@ INCLUDES = -I.
OSMAJORVERSION = OSMajorVersion
OSMINORVERSION = OSMinorVersion
-DEFINES = -DRFC_MIME -DLINE_COUNT -DV2 -DOW_I18N -DSVR4 \
+DEFINES = -DRFC_MIME -DLINE_COUNT -DV2 -DOW_I18N \
-DREL="$(OSMAJORVERSION)$(OSMINORVERSION)" \
-DRELMAJOR="$(OSMAJORVERSION)" -DRELMINOR="$(OSMINORVERSION)"
diff --git a/cde/lib/csa/agent.c b/cde/lib/csa/agent.c
index c41ab79..ee1154c 100644
--- a/cde/lib/csa/agent.c
+++ b/cde/lib/csa/agent.c
@@ -296,7 +296,7 @@ _DtCm_process_updates()
*/
Update_Status *
-_DtCm_update_callback_1(Table_Res_4 *t, void *dummy)
+_DtCm_update_callback_1(Table_Res_4 *t, _DtCm_Connection *dummy)
{
static Update_Status status = update_succeeded;
_CallbackInfo *cbi;
diff --git a/cde/lib/csa/agent.x b/cde/lib/csa/agent.x
index fdf014b..761f157 100644
--- a/cde/lib/csa/agent.x
+++ b/cde/lib/csa/agent.x
@@ -32,6 +32,6 @@ enum Update_Status {
*/
program AGENTPROG {
version AGENTVERS {
- Update_Status update_callback(Table_Res) = 1;
+ Update_Status update_callback(Table_Res_4) = 1;
}=1;
}=00;
diff --git a/cde/lib/csa/lutil.c b/cde/lib/csa/lutil.c
index 78a9edc..f9185d1 100644
--- a/cde/lib/csa/lutil.c
+++ b/cde/lib/csa/lutil.c
@@ -29,6 +29,7 @@
* (c) Copyright 1993, 1994 Sun Microsystems, Inc.
*/
+#include <sys/param.h>
#include <EUSCompat.h>
#include <stdio.h>
#include <stdlib.h>
diff --git a/cde/lib/tt/bin/shell/mover.C b/cde/lib/tt/bin/shell/mover.C
index 264f50a..6a412c0 100644
--- a/cde/lib/tt/bin/shell/mover.C
+++ b/cde/lib/tt/bin/shell/mover.C
@@ -35,7 +35,7 @@
#include "tt_options.h"
#include <errno.h>
#include <string.h>
-#if defined(__osf__) || defined(linux)
+#if defined(__osf__) || defined(linux) || defined(CSRG_BASED)
#include <unistd.h>
#else
#if !defined(USL) && !defined(__uxp__)
diff --git a/cde/lib/tt/bin/shell/remover.C b/cde/lib/tt/bin/shell/remover.C
index 3d3002d..f96b32c 100644
--- a/cde/lib/tt/bin/shell/remover.C
+++ b/cde/lib/tt/bin/shell/remover.C
@@ -35,7 +35,7 @@
#include "tt_options.h"
#include <errno.h>
#include <string.h>
-#if defined(__osf__) || defined(linux)
+#if defined(__osf__) || defined(linux) || defined(CSRG_BASED)
#include <unistd.h>
#else
#if !defined(USL) && !defined(__uxp__)
diff --git a/cde/lib/tt/bin/tt_type_comp/frozen.mp_types_gram.C b/cde/lib/tt/bin/tt_type_comp/frozen.mp_types_gram.C
index 7a532ee..cbd4ec7 100644
--- a/cde/lib/tt/bin/tt_type_comp/frozen.mp_types_gram.C
+++ b/cde/lib/tt/bin/tt_type_comp/frozen.mp_types_gram.C
@@ -91,7 +91,11 @@ typedef union
*/
#undef MAXINT
#endif
+#if defined(CSRG_BASED)
+#define MAXINT INT_MAX
+#else
#include <values.h>
+#endif
#ifdef __cplusplus
diff --git a/cde/lib/tt/bin/ttdbserverd/db_server_functions.C b/cde/lib/tt/bin/ttdbserverd/db_server_functions.C
index e81863f..2264eb6 100644
--- a/cde/lib/tt/bin/ttdbserverd/db_server_functions.C
+++ b/cde/lib/tt/bin/ttdbserverd/db_server_functions.C
@@ -41,6 +41,7 @@
#include <sys/stat.h>
#include <sys/param.h>
#include <errno.h>
+#include <stdint.h>
#include <unistd.h>
#include <nl_types.h>
@@ -2773,7 +2774,7 @@ _tt_run_garbage_collect(int in_parallel)
}
} else {
#endif /* OPT_AUTO_GARBAGE_COLLECT*/
- exit((int)_tt_garbage_collect(NULL));
+ exit((intptr_t)_tt_garbage_collect(NULL));
#if defined(OPT_AUTO_GARBAG_COLLECT)
}
#endif /* OPT_AUTO_GARBAGE_COLLECT*/
diff --git a/cde/lib/tt/bin/ttdbserverd/db_server_svc.C b/cde/lib/tt/bin/ttdbserverd/db_server_svc.C
index dd6355b..75a404f 100644
--- a/cde/lib/tt/bin/ttdbserverd/db_server_svc.C
+++ b/cde/lib/tt/bin/ttdbserverd/db_server_svc.C
@@ -266,7 +266,7 @@ main(int argc, char** argv, char **envp)
// have TIRPC yet.
signal(SIGTTOU, SIG_IGN);
- if (getsockname(0, (struct sockaddr *) &saddr, &asize) == 0) {
+ if (getsockname(0, (struct sockaddr *) &saddr, (socklen_t *)&asize) == 0) {
// We were given a socket. This means we were started
// from inetd.
@@ -484,7 +484,7 @@ main(int argc, char** argv, char **envp)
if (!_tt_debug_mode) {
if (0!=fork()) exit(0);
-#ifdef __osf__
+#if defined(__osf__) || defined(CSRG_BASED)
setsid();
#else
setpgrp();
diff --git a/cde/lib/tt/bin/ttdbserverd/dm_server.C b/cde/lib/tt/bin/ttdbserverd/dm_server.C
index bd09927..0b4eb9c 100644
--- a/cde/lib/tt/bin/ttdbserverd/dm_server.C
+++ b/cde/lib/tt/bin/ttdbserverd/dm_server.C
@@ -1079,7 +1079,8 @@ _tt_isopen_1(_Tt_isopen_args *args, SVCXPRT * /* transp */)
int l = db_path.len();
int tl = strlen("TT_DB");
- for (int j = 0; j<l; j++) {
+ int j;
+ for (j = 0; j<l; j++) {
if (0==strncmp((char *)db_path+j,"TT_DB",tl)) {
break;
}
diff --git a/cde/lib/tt/bin/tttar/tttar.C b/cde/lib/tt/bin/tttar/tttar.C
index c26432f..cf0875c 100644
--- a/cde/lib/tt/bin/tttar/tttar.C
+++ b/cde/lib/tt/bin/tttar/tttar.C
@@ -37,7 +37,7 @@
#include <stdlib.h>
#include <sys/param.h>
#include <sys/stat.h>
-#if defined(__osf__) || defined(linux)
+#if defined(__osf__) || defined(linux) || defined(CSRG_BASED)
#include <unistd.h>
#else
#if !defined(USL) && !defined(__uxp__)
diff --git a/cde/lib/tt/bin/tttar/tttar_api.C b/cde/lib/tt/bin/tttar/tttar_api.C
index 7622dcb..29c002a 100644
--- a/cde/lib/tt/bin/tttar/tttar_api.C
+++ b/cde/lib/tt/bin/tttar/tttar_api.C
@@ -33,7 +33,7 @@
*/
#include <errno.h>
-#if defined(__osf__) || defined(linux)
+#if defined(__osf__) || defined(linux) || defined(CSRG_BASED)
#include <unistd.h>
#else
#ifndef USL
@@ -230,7 +230,7 @@ pathlist_lstt_dearchive(
(char *)our_process_name, (int)obj_kind );
return FALSE;
}
- if (verbosity && ( (last_path != this_path)
+ if (verbosity && ( (last_path != (const char *)this_path)
|| (obj_kind == ARCHIVE_END)))
{
if (last_path_valid) {
diff --git a/cde/lib/tt/bin/tttar/tttar_spec.C b/cde/lib/tt/bin/tttar/tttar_spec.C
index 4c4df4a..659bf6f 100644
--- a/cde/lib/tt/bin/tttar/tttar_spec.C
+++ b/cde/lib/tt/bin/tttar/tttar_spec.C
@@ -32,7 +32,7 @@
*
*/
-#if defined(__osf__) || defined(linux)
+#if defined(__osf__) || defined(linux) || defined(CSRG_BASED)
#include <unistd.h>
#else
#if defined (USL) || defined(__uxp__)
diff --git a/cde/lib/tt/lib/api/c/api_api.C b/cde/lib/tt/lib/api/c/api_api.C
index 9025677..91ef6d4 100644
--- a/cde/lib/tt/lib/api/c/api_api.C
+++ b/cde/lib/tt/lib/api/c/api_api.C
@@ -742,8 +742,12 @@ _tt_errno_status(
case EPIPE: return TT_DESKTOP_EPIPE;
case ENOMSG: return TT_DESKTOP_ENOMSG;
case EDEADLK: return TT_DESKTOP_EDEADLK;
+#ifdef ENODATA
case ENODATA: return TT_DESKTOP_ENODATA;
+#endif
+#ifdef EPROTO
case EPROTO: return TT_DESKTOP_EPROTO;
+#endif
#if !defined(OPT_BUG_AIX)
// on AIX, ENOTEMPTY is the same code as EEXIST, and the switch
// statement fails to compile with duplicate case labels..
diff --git a/cde/lib/tt/lib/db/tt_client_isam.h b/cde/lib/tt/lib/db/tt_client_isam.h
index b5d4e8a..33727d5 100644
--- a/cde/lib/tt/lib/db/tt_client_isam.h
+++ b/cde/lib/tt/lib/db/tt_client_isam.h
@@ -57,8 +57,8 @@ extern long ldlong();
extern float ldfloat();
extern double lddbl();
extern short ldshort();
-extern ldchar(), stchar(), stlong(), stint(), stdbl(), stfloat();
-extern stbin(), ldbin();
+extern int ldchar(), stchar(), stlong(), stint(), stdbl(), stfloat();
+extern int stbin(), ldbin();
extern int iserrno; /* isam error number code */
extern long isrecnum; /* record number of last call */
diff --git a/cde/lib/tt/lib/db/tt_db_property.C b/cde/lib/tt/lib/db/tt_db_property.C
index fb3ceca..9a08a46 100644
--- a/cde/lib/tt/lib/db/tt_db_property.C
+++ b/cde/lib/tt/lib/db/tt_db_property.C
@@ -59,7 +59,7 @@ is_empty() const
// check the list for all NULL content member tt_strings
_Tt_string_list_cursor values_cursor(values);
- while (values_cursor.next()) if (*values_cursor != (char*)NULL) return FALSE;
+ while (values_cursor.next()) if (*values_cursor != (const char*)NULL) return FALSE;
return TRUE;
}
diff --git a/cde/lib/tt/lib/db/tt_db_property.h b/cde/lib/tt/lib/db/tt_db_property.h
index 76062e1..80e145f 100644
--- a/cde/lib/tt/lib/db/tt_db_property.h
+++ b/cde/lib/tt/lib/db/tt_db_property.h
@@ -57,7 +57,7 @@ public:
int i = 0;
_Tt_string_list_cursor values_cursor(values);
while (values_cursor.next()) {
- if (*values_cursor != (char*)NULL)
+ if (*values_cursor != (const char*)NULL)
fprintf(file, "Property Value #%d: %s\n", i, (char *)*values_cursor);
else fprintf(file, "Property Value #%d: NULL\n", i);
i++;
diff --git a/cde/lib/tt/lib/mp/mp_c_session.C b/cde/lib/tt/lib/mp/mp_c_session.C
index aefff74..78a3753 100644
--- a/cde/lib/tt/lib/mp/mp_c_session.C
+++ b/cde/lib/tt/lib/mp/mp_c_session.C
@@ -284,13 +284,13 @@ startup_ttsession(_Tt_string &start_ttcmd)
istat = signal(SIGINT, SIG_IGN);
qstat = signal(SIGQUIT, SIG_IGN);
- cstat = signal(SIGCLD, SIG_DFL);
+ cstat = signal(SIGCHLD, SIG_DFL);
w = waitpid(pid, &status, 0);
(void) signal(SIGINT, istat);
(void) signal(SIGQUIT, qstat);
- (void) signal(SIGCLD, cstat);
+ (void) signal(SIGCHLD, cstat);
return((w == -1)? w: status);
diff --git a/cde/lib/tt/lib/mp/mp_desktop.C b/cde/lib/tt/lib/mp/mp_desktop.C
index a550624..41198f8 100644
--- a/cde/lib/tt/lib/mp/mp_desktop.C
+++ b/cde/lib/tt/lib/mp/mp_desktop.C
@@ -47,7 +47,7 @@
#include <sys/ioctl.h>
#include <sys/types.h>
#include <sys/time.h>
-#if defined(__STDC__) && !defined(linux)
+#if defined(__STDC__) && !defined(linux) && !defined(CSRG_BASED)
extern "C" { extern int ioctl (int, int, ...) ; };
#endif
#include "util/tt_global_env.h"
diff --git a/cde/lib/tt/lib/mp/mp_message.C b/cde/lib/tt/lib/mp/mp_message.C
index 34e5b4a..1c00fca 100644
--- a/cde/lib/tt/lib/mp/mp_message.C
+++ b/cde/lib/tt/lib/mp/mp_message.C
@@ -118,7 +118,7 @@ base_constructor()
_Tt_message::
_Tt_message()
-#if defined(linux)
+#if defined(linux) || defined(CSRG_BASED)
: _pattern_id(), _object(), _file(), _op(),
_otype(), _sender_ptype(), _handler_ptype(),
_api_id(), _status_string()
diff --git a/cde/lib/tt/lib/mp/mp_session.h b/cde/lib/tt/lib/mp/mp_session.h
index 78ce3ef..bb3ce49 100644
--- a/cde/lib/tt/lib/mp/mp_session.h
+++ b/cde/lib/tt/lib/mp/mp_session.h
@@ -168,7 +168,7 @@ class _Tt_session : public _Tt_object {
friend class _Tt_s_mp;
friend class _Tt_s_session;
- friend _Tt_mp::find_session_by_fd(int, _Tt_session_ptr &);
+ friend int _Tt_mp::find_session_by_fd(int, _Tt_session_ptr &);
};
_Tt_string _tt_session_address(_Tt_object_ptr &o);
diff --git a/cde/lib/tt/lib/mp/mp_stream_socket.C b/cde/lib/tt/lib/mp/mp_stream_socket.C
index f604f68..aed7ca1 100644
--- a/cde/lib/tt/lib/mp/mp_stream_socket.C
+++ b/cde/lib/tt/lib/mp/mp_stream_socket.C
@@ -216,7 +216,7 @@ init(int init_as_source)
if (getsockname(_sock, (sockaddr *)&_hostaddr, (size_t *)&len)
< 0) {
#else
- if (getsockname(_sock, (sockaddr *)&_hostaddr, &len) < 0) {
+ if (getsockname(_sock, (sockaddr *)&_hostaddr, (socklen_t *)&len) < 0) {
#endif
return(0);
}
@@ -447,7 +447,7 @@ accept()
(size_t *)&addrlen);
#else
_msgsock = ::accept(_sock, (struct sockaddr *)&saddr,
- &addrlen);
+ (socklen_t *)&addrlen);
#endif
if (_msgsock < 0) {
_tt_syslog( 0, LOG_ERR, "_Tt_stream_socket::accept(): "
diff --git a/cde/lib/tt/lib/tt_options.h b/cde/lib/tt/lib/tt_options.h
index 52b9d1e..52a581c 100644
--- a/cde/lib/tt/lib/tt_options.h
+++ b/cde/lib/tt/lib/tt_options.h
@@ -560,6 +560,36 @@
# define OPT_BUG_RPCINTR
# undef OPT_XTHREADS
+#elif defined(__OpenBSD__)
+
+# undef OPT_UNIX_SOCKET_RPC
+# undef OPT_TLI
+# undef OPT_DLOPEN_X11
+# undef OPT_DLOPEN_CE
+# undef OPT_ADDMSG_DIRECT
+# undef OPT_SECURE_RPC
+# undef OPT_CLASSING_ENGINE
+# undef OPT_PATCH
+# define OPT_POSIX_SIGNAL
+# undef OPT_BSD_WAIT
+# undef OPT_DGETTEXT
+# define OPT_CATGETS
+# undef OPT_GETDTABLESIZE
+# undef OPT_SYSINFO
+# define OPT_CPP_PATH "/usr/libexec/cpp"
+# define OPT_CPP_OPTIONS ""
+# define OPT_STRERROR
+# undef OPT_SVR4_GETMNTENT
+# undef OPT_LOCKF_MNTENT
+# define OPT_LOCAL_MOUNT_TYPE MNTTYPE_UFS
+# undef OPT_OLD_RPC
+# define OPT_DEFINE_SIG_PF
+# define OPT_TAR_HAS_EXCLUDE_OPTION
+# define OPT_HAS_REALPATH
+# define OPT_AUTOMOUNT_PATH_FIX
+# define OPT_BUG_RPCINTR
+# undef OPT_XTHREADS
+
#else
/* Unknown configuration, complain */
}}}} You must edit lib/tt_options.h and add a section defining the options for your configuration.
diff --git a/cde/lib/tt/lib/tttk/ttdesktop.C b/cde/lib/tt/lib/tttk/ttdesktop.C
index 61130d2..3650d4c 100644
--- a/cde/lib/tt/lib/tttk/ttdesktop.C
+++ b/cde/lib/tt/lib/tttk/ttdesktop.C
@@ -679,7 +679,7 @@ _ttdt_GSet_Geometry(
{
Tt_message msg = _ttDesktopMessageCreate( commission, theClass,
handler, op, _ttdt_Geometry_in_cb,
- callback, clientdata );
+ (void *)callback, clientdata );
Tt_status status = tt_ptr_error( msg );
if (status != TT_OK) {
return msg;
@@ -814,7 +814,7 @@ ttdt_Set_Geometry_pat(
{
return _ttdt_pat( TTDT_SET_GEOMETRY, _ttdt_Geometry_out_cb,
category, commission,
- callback, clientdata, register_it );
+ (void *)callback, clientdata, register_it );
}
Tt_pattern
@@ -828,7 +828,7 @@ ttdt_Get_Geometry_pat(
{
return _ttdt_pat( TTDT_GET_GEOMETRY, _ttdt_Geometry_out_cb,
category, commission,
- callback, clientdata, register_it );
+ (void *)callback, clientdata, register_it );
}
static int
@@ -953,7 +953,7 @@ _ttdt_GSet_Iconified(
{
Tt_message msg = _ttDesktopMessageCreate( commission, theClass,
handler, op, _ttdt_Iconified_in_cb,
- callback, clientdata );
+ (void *)callback, clientdata );
Tt_status status = tt_ptr_error( msg );
if (status != TT_OK) {
return msg;
@@ -1048,7 +1048,7 @@ ttdt_Set_Iconified_pat(
return _ttdt_pat( TTDT_SET_ICONIFIED, _ttdt_Iconified_out_cb,
category, commission,
- callback, clientdata, register_it );
+ (void *)callback, clientdata, register_it );
}
Tt_pattern
@@ -1062,7 +1062,7 @@ ttdt_Get_Iconified_pat(
{
return _ttdt_pat( TTDT_GET_ICONIFIED, _ttdt_Iconified_out_cb,
category, commission,
- callback, clientdata, register_it );
+ (void *)callback, clientdata, register_it );
}
//
@@ -1226,7 +1226,7 @@ _ttdt_GSet_XInfo(
{
Tt_message msg = _ttDesktopMessageCreate( commission, theClass,
handler, op, _ttdt_XInfo_in_cb,
- callback, clientdata );
+ (void *)callback, clientdata );
Tt_status status = tt_ptr_error( msg );
if (status != TT_OK) {
return msg;
@@ -1345,7 +1345,7 @@ ttdt_Set_XInfo_pat(
{
return _ttdt_pat( TTDT_SET_XINFO, _ttdt_XInfo_out_cb,
category, commission,
- callback, clientdata, register_it );
+ (void *)callback, clientdata, register_it );
}
Tt_pattern
@@ -1359,7 +1359,7 @@ ttdt_Get_XInfo_pat(
{
return _ttdt_pat( TTDT_GET_XINFO, _ttdt_XInfo_out_cb,
category, commission,
- callback, clientdata, register_it );
+ (void *)callback, clientdata, register_it );
}
//
@@ -1501,7 +1501,7 @@ ttdt_Get_Locale(
}
Tt_message msg = _ttDtPMessageCreate( commission, TT_REQUEST,
TT_SESSION, handler,
- TTDT_GET_LOCALE, _ttDtGetLocaleCB, clientCB,
+ TTDT_GET_LOCALE, _ttDtGetLocaleCB, (void *)clientCB,
clientData );
Tt_status status = tt_ptr_error( msg );
if (status != TT_OK) {
@@ -1614,7 +1614,7 @@ ttdt_Get_Situation(
Tt_message msg = _ttDtPMessageCreate( commission, TT_REQUEST,
TT_SESSION, _handler,
TTDT_GET_SITUATION, _ttDtGetSituationCB,
- clientCB, clientData );
+ (void *)clientCB, clientData );
Tt_status status = tt_ptr_error( msg );
if (status != TT_OK) {
return msg;
@@ -1661,7 +1661,7 @@ _ttdt_posix_cb(
struct utsname names;
char buf[ SYS_NMLN ];
case TTDT_SET_LOCALE:
- return _ttDtGetLocaleCB( msg, pat, _ttDtApplyLocale, 0 );
+ return _ttDtGetLocaleCB( msg, pat, (void *)_ttDtApplyLocale, 0 );
case TTDT_GET_LOCALE:
for (i = 0; i < numArgs/2; i++) {
categoryName = _tttk_message_arg_val( msg, 2 * i, 0 );
diff --git a/cde/lib/tt/lib/tttk/ttdtfile.C b/cde/lib/tt/lib/tttk/ttdtfile.C
index ea1b5fb..4d5f299 100644
--- a/cde/lib/tt/lib/tttk/ttdtfile.C
+++ b/cde/lib/tt/lib/tttk/ttdtfile.C
@@ -115,7 +115,7 @@ _ttDtFileJoinPat(
Tt_pattern pat = _ttDtPatternCreate( TT_OBSERVE, theScope,
theScope != TT_FILE, pathname,
TTDT_DELETED, _ttDtFileCB,
- cb, clientData, 0 );
+ (void *)cb, clientData, 0 );
Tt_status status = tt_ptr_error( pat );
if (status != TT_OK) {
return pat;
@@ -254,7 +254,7 @@ ttdt_file_request(
)
{
Tt_message msg = _ttDtPMessageCreate( context, TT_REQUEST, theScope, 0,
- op, _ttDtFileCB, cb, clientData);
+ op, _ttDtFileCB, (void *)cb, clientData);
Tt_status status = tt_ptr_error( msg );
if (status != TT_OK) {
return msg;
@@ -298,7 +298,7 @@ _ttDtFileEventPat(
Tt_pattern pat = _ttDtPatternCreate( TT_HANDLE, theScope,
theScope != TT_FILE, pathname,
TTDT_SAVE, _ttDtFileCB,
- cb, clientData, 0 );
+ (void *)cb, clientData, 0 );
Tt_status status = tt_ptr_error( pat );
if (status != TT_OK) {
return pat;
diff --git a/cde/lib/tt/lib/tttk/ttdtprocid.C b/cde/lib/tt/lib/tttk/ttdtprocid.C
index a9644bb..c47945e 100644
--- a/cde/lib/tt/lib/tttk/ttdtprocid.C
+++ b/cde/lib/tt/lib/tttk/ttdtprocid.C
@@ -102,7 +102,7 @@ pats_create(
pats[++i] = ttdt_Set_XInfo_pat( TT_HANDLE, contract,
_ttdt_do_Set_XInfo, shell, 1 );
pats[++i] = _ttdt_pat(TTDT_RAISE, _ttdt_contract_cb, TT_HANDLE,
- contract, _ttdt_do_RaiseLower, shell, 0 );
+ contract, (void *)_ttdt_do_RaiseLower, shell, 0 );
tt_pattern_op_add( pats[i], _ttDtOp( TTDT_LOWER ) );
tt_pattern_session_add( pats[i], sess );
tt_pattern_register( pats[i] );
@@ -126,7 +126,7 @@ pats_create(
pats[++i] = ttdt_Set_XInfo_pat( TT_HANDLE, contract,
(Ttdt_XInfo_in_cb)cb, clientData, 1 );
pats[++i] = _ttdt_pat(TTDT_RAISE, _ttdt_contract_cb, TT_HANDLE,
- contract, cb, clientData, 0 );
+ contract, (void *)cb, clientData, 0 );
tt_pattern_op_add( pats[i], _ttDtOp( TTDT_LOWER ) );
tt_pattern_session_add( pats[i], sess );
tt_pattern_register( pats[i] );
@@ -145,17 +145,17 @@ pats_create(
}
}
pats[++i] = _ttdt_pat( TTDT_QUIT, _ttdt_contract_cb, TT_HANDLE,
- contract, cb, _clientData, 1 );
+ contract, (void *)cb, _clientData, 1 );
pats[++i] = _ttdt_pat( TTDT_PAUSE, _ttdt_contract_cb, TT_HANDLE,
- contract, cb, (cb ? clientData : shell), 0 );
+ contract, (void *)cb, (cb ? clientData : shell), 0 );
tt_pattern_op_add( pats[i], _ttDtOp( TTDT_RESUME ));
tt_pattern_session_add( pats[i], sess );
tt_pattern_register( pats[i] );
pats[++i] = _ttdt_pat( TTDT_GET_STATUS, _ttdt_contract_cb, TT_HANDLE,
- contract, cb, clientData, 1 );
+ contract, (void *)cb, clientData, 1 );
if (contract == 0) {
pats[++i]= _ttdt_pat( TTDT_DO_COMMAND, _ttdt_contract_cb,
- TT_HANDLE, contract, cb, clientData, 1 );
+ TT_HANDLE, contract, (void *)cb, clientData, 1 );
pats[++i]= _ttdt_pat( TTDT_SET_LOCALE, _ttdt_posix_cb,
TT_HANDLE, contract, 0, 0, 0 );
tt_pattern_op_add( pats[i], _ttDtOp( TTDT_GET_LOCALE ));
diff --git a/cde/lib/tt/lib/tttk/ttmedia.C b/cde/lib/tt/lib/tttk/ttmedia.C
index 6792f67..094c782 100644
--- a/cde/lib/tt/lib/tttk/ttmedia.C
+++ b/cde/lib/tt/lib/tttk/ttmedia.C
@@ -381,7 +381,7 @@ ttmedia_Deposit_pat(
{
Tt_pattern pat = _ttDtPatternCreate( category, TT_SESSION,
register_it, 0, TTME_DEPOSIT,
- _ttMediaLoadMsgCB, clientcb,
+ _ttMediaLoadMsgCB, (void *)clientcb,
clientdata, 0 );
Tt_status status = tt_ptr_error( pat );
if (status != TT_OK) {
@@ -418,7 +418,7 @@ ttmedia_load(
)
{
Tt_message msg = _ttDtPMessageCreate( context, TT_REQUEST, TT_SESSION,
- 0, op, _ttMediaLoadMsgCB, cb, clientData );
+ 0, op, _ttMediaLoadMsgCB, (void *)cb, clientData );
Tt_status status = tt_ptr_error( msg );
if (status != TT_OK) {
return msg;
diff --git a/cde/lib/tt/lib/tttk/tttk.C b/cde/lib/tt/lib/tttk/tttk.C
index 734adbd..1f0c2b8 100644
--- a/cde/lib/tt/lib/tttk/tttk.C
+++ b/cde/lib/tt/lib/tttk/tttk.C
@@ -365,7 +365,7 @@ ttdt_subcontract_manage(
(Ttdt_XInfo_out_cb)cb, clientData, 1 );
}
pats[2] = _ttdt_pat( TTDT_STATUS, _ttdt_contract_cb, TT_OBSERVE,
- subcontract, cb, clientData, 1 );
+ subcontract, (void *)cb, clientData, 1 );
pats[ numPats - 1 ] = 0;
for (int i = 0; i < numPats; i++) {
Tt_status status = tt_ptr_error( pats[ i ] );
diff --git a/cde/lib/tt/lib/tttk/tttkmessage.C b/cde/lib/tt/lib/tttk/tttkmessage.C
index c20606c..efe87e0 100644
--- a/cde/lib/tt/lib/tttk/tttkmessage.C
+++ b/cde/lib/tt/lib/tttk/tttkmessage.C
@@ -169,7 +169,7 @@ _ttDtPMessageCreate(
return msg;
}
_TttkItem2Free fuse( msg );
- status = tt_message_user_set( msg, _TttkCBKey, cb );
+ status = tt_message_user_set( msg, _TttkCBKey, (void *)cb );
if (status != TT_OK) {
return (Tt_message)tt_error_pointer( status );
}
diff --git a/cde/lib/tt/lib/tttk/tttkpattern.C b/cde/lib/tt/lib/tttk/tttkpattern.C
index 8d88bf1..d59accd 100644
--- a/cde/lib/tt/lib/tttk/tttkpattern.C
+++ b/cde/lib/tt/lib/tttk/tttkpattern.C
@@ -161,7 +161,7 @@ _ttDtPatternCreate(
if (status != TT_OK) {
return (Tt_pattern)tt_error_pointer( status );
}
- status = tt_pattern_user_set( pat, _TttkCBKey, cb );
+ status = tt_pattern_user_set( pat, _TttkCBKey, (void *)cb );
if (status != TT_OK) {
return (Tt_pattern)tt_error_pointer( status );
}
diff --git a/cde/lib/tt/lib/util/tt_file_system.C b/cde/lib/tt/lib/util/tt_file_system.C
index 8d98ff9..d6a51af 100644
--- a/cde/lib/tt/lib/util/tt_file_system.C
+++ b/cde/lib/tt/lib/util/tt_file_system.C
@@ -82,13 +82,16 @@
# define ttFsName(e) vmt2dataptr(e,VMT_OBJECT)
# define ttMountPt(e) vmt2dataptr(e,VMT_STUB)
# define ttCloseMntTbl(f) free(tmpbuf)
-#elif defined(__osf__)
+#elif defined(__osf__) || defined(CSRG_BASED)
# include <sys/types.h>
# include <sys/mount.h>
+# ifdef __osf__
extern "C" int getfsstat(struct statfs *, long, int);
+# endif
# define MNTTYPE_NFS "nfs"
# define ttOpenMntTbl(path,mode) ((FILE *) 1)
# define TtMntEntry struct statfs *
+# ifdef __osf__
# define ttFsType(e) \
(((e)->f_type == MOUNT_UFS) ? "ufs" \
: (((e)->f_type == MOUNT_NFS3) ? "nfs" \
@@ -96,6 +99,9 @@
: (((e)->f_type == MOUNT_CDFS) ? "cdfs" \
: (((e)->f_type == MOUNT_PROCFS) ? "procfs" \
: "unknown")))))
+# elif defined(CSRG_BASED)
+# define ttFsType(e) (e->f_fstypename)
+# endif
# define ttFsName(e) ((char *)((e)->f_mntfromname))
# define ttMountPt(e) ((char *)((e)->f_mntonname))
# define ttCloseMntTbl(f) free(buf)
@@ -459,7 +465,7 @@ updateFileSystemEntries ()
for (entry = (TtMntEntry)tmpbuf; rc > 0; --rc,
entry = (TtMntEntry)((char *) entry + entry->vmt_length))
-#elif defined(__osf__)
+#elif defined(__osf__) || defined(CSRG_BASED)
int numfs,i;
struct statfs *buf;
long bufsize;
@@ -495,7 +501,7 @@ updateFileSystemEntries ()
#else
while (entry = getmntent(mount_table))
#endif
-#ifndef __osf__
+#if !defined(__osf__) && !defined(CSRG_BASED)
{
#endif
fse = createFileSystemEntry( entry );
diff --git a/cde/lib/tt/lib/util/tt_host.C b/cde/lib/tt/lib/util/tt_host.C
index 4c3aed3..5590c8f 100644
--- a/cde/lib/tt/lib/util/tt_host.C
+++ b/cde/lib/tt/lib/util/tt_host.C
@@ -48,7 +48,7 @@ extern "C" in_addr_t inet_addr(const char *);
#ifdef __osf__
#include <unistd.h>
#else
-#if !defined(USL) && !defined(__uxp__) && !defined(linux)
+#if !defined(USL) && !defined(__uxp__) && !defined(linux) && !defined(CSRG_BASED)
#include <osfcn.h>
#endif
#endif /* __osf */
diff --git a/cde/lib/tt/lib/util/tt_host_equiv.C b/cde/lib/tt/lib/util/tt_host_equiv.C
index fba3bdc..dec527b 100644
--- a/cde/lib/tt/lib/util/tt_host_equiv.C
+++ b/cde/lib/tt/lib/util/tt_host_equiv.C
@@ -36,12 +36,12 @@
#define X_INCLUDE_NETDB_H
#define XOS_USE_XT_LOCKING
-#if defined(linux)
+#if defined(linux) || defined(CSRG_BASED)
#define index
#define rindex
#endif
#include <X11/Xos_r.h>
-#if defined(linux)
+#if defined(linux) || defined(CSRG_BASED)
#undef index
#undef rindex
#endif
diff --git a/cde/lib/tt/lib/util/tt_iostream.C b/cde/lib/tt/lib/util/tt_iostream.C
index 1a9e3db..be69315 100644
--- a/cde/lib/tt/lib/util/tt_iostream.C
+++ b/cde/lib/tt/lib/util/tt_iostream.C
@@ -225,7 +225,7 @@ _Tt_ostream::operator <<(
return *this;
}
-#if defined(__osf__) || defined(linux)
+#if defined(__osf__) || defined(linux) || defined(CSRG_BASED)
/* This operator is being added to take care of uid_t and gid_t
* for osf */
const _Tt_ostream &
diff --git a/cde/lib/tt/lib/util/tt_iostream.h b/cde/lib/tt/lib/util/tt_iostream.h
index 326f37d..a814445 100644
--- a/cde/lib/tt/lib/util/tt_iostream.h
+++ b/cde/lib/tt/lib/util/tt_iostream.h
@@ -86,7 +86,7 @@ class _Tt_ostream : public virtual _Tt_allocated {
const _Tt_ostream &operator <<(
int n
) const;
-#if defined(__osf__) || defined(linux)
+#if defined(__osf__) || defined(linux) || defined(CSRG_BASED)
const _Tt_ostream &operator <<(
unsigned int n
) const;
diff --git a/cde/lib/tt/lib/util/tt_log.C b/cde/lib/tt/lib/util/tt_log.C
index 340efe1..48955ad 100644
--- a/cde/lib/tt/lib/util/tt_log.C
+++ b/cde/lib/tt/lib/util/tt_log.C
@@ -37,7 +37,7 @@
#ifdef __osf__
#include <unistd.h>
#else
-#if !defined (USL) && !defined(__uxp__) && !defined(linux)
+#if !defined (USL) && !defined(__uxp__) && !defined(linux) && !defined(CSRG_BASED)
#include <osfcn.h>
#endif
#endif /* __osf__ */
diff --git a/cde/lib/tt/lib/util/tt_path.C b/cde/lib/tt/lib/util/tt_path.C
index 8dd9f2b..e51fd2d 100644
--- a/cde/lib/tt/lib/util/tt_path.C
+++ b/cde/lib/tt/lib/util/tt_path.C
@@ -49,12 +49,12 @@
/* Included after "util/tt_string.h" to avoid index/strchr conflicts. */
#define X_INCLUDE_DIRENT_H
#define XOS_USE_NO_LOCKING
-#if defined(linux)
+#if defined(linux) || defined(CSRG_BASED)
#define index
#define rindex
#endif
#include <X11/Xos_r.h>
-#if defined(linux)
+#if defined(linux) || defined(CSRG_BASED)
#undef index
#undef rindex
#endif
diff --git a/cde/lib/tt/lib/util/tt_string.C b/cde/lib/tt/lib/util/tt_string.C
index 2d89052..91b3c1b 100644
--- a/cde/lib/tt/lib/util/tt_string.C
+++ b/cde/lib/tt/lib/util/tt_string.C
@@ -54,7 +54,7 @@
#endif
#include <stdlib.h>
#include <ctype.h>
-#if defined(linux)
+#if defined(linux) || defined(CSRG_BASED)
#include <wctype.h>
#endif
#include "util/tt_string.h"
@@ -1073,6 +1073,7 @@ _tt_xdr_decode(xdrproc_t xdr_fn, void *data, _Tt_string opaque_string)
/*
* XDR encode or decode a _Tt_string
*/
+int
tt_xdr_string(XDR *xdrs, _Tt_string *s)
{
return(s->xdr(xdrs));
diff --git a/cde/lib/tt/li...
[truncated message content] |