[cdesktopenv-devel] [PATCH} Adjust cpp location for FreeBSD

2012-08-12 Thread Marcin Cieslak
>From 60375c1391a3d9a42837a9c0ba6404ecfa0ea0a4 Mon Sep 17 00:00:00 2001
From: Marcin Cieslak 
Date: Mon, 13 Aug 2012 00:37:42 +0200
Subject: [PATCH] Adjust cpp location for FreeBSD

cpp was removed from /usr/libexec with FreeBSD 5.0-RELEASE.
Use __FreeBSD_version to tell imake if it's still there.

While here, X.Y.Z versioning ended with FreeBSD 3.0, so
we must be dealing with 2.Y.Z when checking for -lgnumalloc.
---
 cde/config/cf/FreeBSD.cf |7 +++
 cde/config/imake/imakemdep.h |   16 ++--
 2 files changed, 21 insertions(+), 2 deletions(-)

diff --git a/cde/config/cf/FreeBSD.cf b/cde/config/cf/FreeBSD.cf
index d91827c..5e3a00d 100644
--- a/cde/config/cf/FreeBSD.cf
+++ b/cde/config/cf/FreeBSD.cf
@@ -21,8 +21,13 @@ XCOMM operating system:  OSName 
(OSMajorVersion./**/OSMinorVersion./**/OSTeenyVe
 #define HasBSD44SocketsYES
 #define HasZlibYES
 
+#if OSMajorVersion >= 5
+#define CppCmd /usr/bin/cpp -traditional
+#define PreProcessCmd  /usr/bin/cpp -traditional
+#else
 #define CppCmd /usr/libexec/cpp -traditional
 #define PreProcessCmd  /usr/libexec/cpp -traditional
+#endif
 #undef  InstallCmd
 #define InstallCmd /usr/bin/install
 
@@ -58,6 +63,7 @@ XCOMM operating system:  OSName 
(OSMajorVersion./**/OSMinorVersion./**/OSTeenyVe
 #define HasMakefileSafeInclude YES
 #define IncludeMakefile(file)  @@# dependencies are in .depend
 #define DependFileName .depend
+#if OSMajorVersion < 3
 #if OSMinorVersion < 2
 #ifndef ExtraLibraries
 #define ExtraLibraries -lgnumalloc
@@ -66,6 +72,7 @@ XCOMM operating system:  OSName 
(OSMajorVersion./**/OSMinorVersion./**/OSTeenyVe
 #if OSTeenyVersion == 2
 #define HasSetUserContext  YES
 #endif
+#endif
 #ifndef ExtraLoadFlags
 /* 
  * This doesn't work the way it does on every other system. On FreeBSD it's
diff --git a/cde/config/imake/imakemdep.h b/cde/config/imake/imakemdep.h
index 2c97383..56f3a0b 100644
--- a/cde/config/imake/imakemdep.h
+++ b/cde/config/imake/imakemdep.h
@@ -188,6 +188,17 @@ in this Software without prior written authorization from 
The Open Group.
 #define imake_ccflags "-DNOSTDHDRS"
 #endif
 
+#ifdef  __FreeBSD__
+#include 
+#if defined(__FreeBSD_version)
+#if __FreeBSD_version < 50
+#define imake_ccflags "-DCPP_IN_LIBEXEC"
+#endif
+#else
+#define imake_ccflags "-DCPP_IN_LIBEXEC"
+#endif
+#endif
+
 /* this is for OS/2 under EMX. This won't work with DOS */
 #if defined(__EMX__)
 #define imake_ccflags "-DBSD43"
@@ -247,7 +258,7 @@ in this Software without prior written authorization from 
The Open Group.
 #if defined(sun) && (defined(SVR4) || defined(__svr4__) || defined(__SVR4) || 
defined(__sol__))
 #define DEFAULT_CPP "/usr/ccs/lib/cpp"
 #endif
-#ifdef __bsdi__
+#if defined(__bsdi__) || (defined(__FreeBSD__) && !defined(CPP_IN_LIBEXEC))
 #define DEFAULT_CPP "/usr/bin/cpp"
 #endif
 #ifdef __uxp__
@@ -259,7 +270,8 @@ in this Software without prior written authorization from 
The Open Group.
 #ifdef _CRAY
 #define DEFAULT_CPP "/lib/pcpp"
 #endif
-#if defined(__386BSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || 
defined(__FreeBSD__)
+#if defined(__386BSD__) || defined(__NetBSD__) || defined(__OpenBSD__) \
+   || (defined(__FreeBSD__) && defined(CPP_IN_LIBEXEC))
 #define DEFAULT_CPP "/usr/libexec/cpp"
 #endif
 #if defined(__sgi) && defined(__ANSI_CPP__)
-- 
1.7.9.2



--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH 3/4] Skip building m-guides and dtksh for FreeBSD

2012-08-12 Thread Marcin Cieslak
---
 cde/doc/C/Imakefile|2 +-
 cde/programs/Imakefile |2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/cde/doc/C/Imakefile b/cde/doc/C/Imakefile
index 70e475c..4595a26 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) || defined(OpenBSDArchitecture)
+#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture) || 
defined(FreeBSDArchitecture)
 XCOMM we cannot build guides on linux yet
 SUBDIRS = man help
 BSUBDIRS = help man 
diff --git a/cde/programs/Imakefile b/cde/programs/Imakefile
index 5dcebce..ca66a8b 100644
--- a/cde/programs/Imakefile
+++ b/cde/programs/Imakefile
@@ -12,7 +12,7 @@ EXTRADIRS += util
 
 XCOMM some of these cannot be built on linux yet.
 XCOMM dtksh dtinfo
-#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture)
+#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture) || 
defined(FreeBSDArchitecture)
 DTKSHDIR = 
 DTINFODIR = 
 #else
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH 4/4] Compile ToolTalk on FreeBSD

2012-08-12 Thread Marcin Cieslak
Fix const correctness problems with OPT_CONST_CORRECT:

tt_xdr_utils.C: In constructor '_Tt_xdr_size_stream::_Tt_xdr_size_stream()':
tt_xdr_utils.C:150: error: invalid conversion from 'bool_t (*)(__rpc_xdr*, long 
int*)' to 'bool_t (*)(__rpc_xdr*, const long int*)'
tt_xdr_utils.C:151: error: invalid conversion from 'bool_t (*)(__rpc_xdr*, 
char*, unsigned int)' to 'bool_t (*)(__rpc_xdr*, const char*, u_int)'
tt_xdr_utils.C:159: error: invalid conversion from 'bool_t (*)(__rpc_xdr*, 
char*, unsigned int)' to 'bool_t (*)(__rpc_xdr*, const char*, u_int)'

tt_entry_pt.C: In function '_Tt_string _tt_entrypt_to_string(_Tt_entry_pt)':
tt_entry_pt.C:455: error: conversion from 'long int' to '_Tt_string' is 
ambiguous
../../lib/util/tt_string.h:104: note: candidates are: 
_Tt_string::_Tt_string(int)
../../lib/util/tt_string.h:102: note: 
_Tt_string::_Tt_string(const char*)
---
 cde/lib/tt/bin/dbck/options.C  |2 +-
 cde/lib/tt/bin/tt_type_comp/mp_type_comp.C |2 +-
 cde/lib/tt/bin/ttauth/ttauth.h |3 ++-
 cde/lib/tt/bin/ttdbserverd/db_server_globals.h |2 +-
 cde/lib/tt/bin/ttdbserverd/db_server_svc.C |2 +-
 cde/lib/tt/bin/ttsession/mp_server.C   |2 +-
 cde/lib/tt/lib/tt_options.h|   34 
 cde/lib/tt/lib/util/tt_entry_pt.C  |2 ++
 cde/lib/tt/lib/util/tt_xdr_utils.C |8 ++
 9 files changed, 51 insertions(+), 6 deletions(-)

diff --git a/cde/lib/tt/bin/dbck/options.C b/cde/lib/tt/bin/dbck/options.C
index 6108e9c..930d6ad 100644
--- a/cde/lib/tt/bin/dbck/options.C
+++ b/cde/lib/tt/bin/dbck/options.C
@@ -37,7 +37,7 @@
 #include 
 #include 
 #include "util/copyright.h"
-#if defined(linux) || defined(sgi)
+#if defined(linux) || defined(sgi) || defined(__FreeBSD__)
 #include 
 #endif 
 #include "dbck.h" 
diff --git a/cde/lib/tt/bin/tt_type_comp/mp_type_comp.C 
b/cde/lib/tt/bin/tt_type_comp/mp_type_comp.C
index 21378d3..3737fa1 100644
--- a/cde/lib/tt/bin/tt_type_comp/mp_type_comp.C
+++ b/cde/lib/tt/bin/tt_type_comp/mp_type_comp.C
@@ -42,7 +42,7 @@
 #if defined(linux)
 #include 
 #endif
-#if defined(sgi)
+#if defined(sgi) || defined(__FreeBSD__)
 #include 
 #endif
 #if defined(USL) || defined(__uxp__)
diff --git a/cde/lib/tt/bin/ttauth/ttauth.h b/cde/lib/tt/bin/ttauth/ttauth.h
index 5e1b27f..32ccf1a 100644
--- a/cde/lib/tt/bin/ttauth/ttauth.h
+++ b/cde/lib/tt/bin/ttauth/ttauth.h
@@ -46,6 +46,7 @@ in this Software without prior written authorization from The 
Open Group.
  */
 
 #include 
+#include 
 #include 
 #include 
 
@@ -57,7 +58,7 @@ typedef int Bool;
 
 extern char *ProgramName;
 
-#if !defined(linux)
+#if !defined(linux) && !defined(CSRG_BASED)
 extern char *malloc(), *realloc();
 #endif
 int process_command(), auth_initialize(), auth_finalize();
diff --git a/cde/lib/tt/bin/ttdbserverd/db_server_globals.h 
b/cde/lib/tt/bin/ttdbserverd/db_server_globals.h
index ae3181c..4ea174d 100644
--- a/cde/lib/tt/bin/ttdbserverd/db_server_globals.h
+++ b/cde/lib/tt/bin/ttdbserverd/db_server_globals.h
@@ -45,7 +45,7 @@
 
 extern uid_t _tt_uid;
 extern gid_t _tt_gid;
-extern gid_t _tt_gidlist [NGROUPS_MAX];
+extern gid_t _tt_gidlist [NGROUPS];
 extern int   _tt_gidlen;
 extern int   _tt_auth_level;
 
diff --git a/cde/lib/tt/bin/ttdbserverd/db_server_svc.C 
b/cde/lib/tt/bin/ttdbserverd/db_server_svc.C
index 67b1ce0..c256082 100644
--- a/cde/lib/tt/bin/ttdbserverd/db_server_svc.C
+++ b/cde/lib/tt/bin/ttdbserverd/db_server_svc.C
@@ -63,7 +63,7 @@
 #include 
 #include 
 
-#if defined(sgi)
+#if defined(sgi) || defined(__FreeBSD__)
 #include 
 #endif
 
diff --git a/cde/lib/tt/bin/ttsession/mp_server.C 
b/cde/lib/tt/bin/ttsession/mp_server.C
index 746ba3b..1afa057 100644
--- a/cde/lib/tt/bin/ttsession/mp_server.C
+++ b/cde/lib/tt/bin/ttsession/mp_server.C
@@ -53,7 +53,7 @@
 
 #include 
 #include 
-#if defined(sgi)
+#if defined(sgi) || defined(__FreeBSD__)
 #include 
 #endif
 
diff --git a/cde/lib/tt/lib/tt_options.h b/cde/lib/tt/lib/tt_options.h
index e6f8c39..fef3512 100644
--- a/cde/lib/tt/lib/tt_options.h
+++ b/cde/lib/tt/lib/tt_options.h
@@ -590,6 +590,40 @@
 # define OPT_BUG_RPCINTR
 # undef  OPT_XTHREADS 
 
+#elif defined(__FreeBSD__)
+# 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
+# if defined(OSMAJORVERSION) && (OSMAJORVERSION >= 5)
+#  define OPT_CPP_PATH "/usr/bin/cpp"
+# else
+#  define OPT_CPP_PATH "/usr/libexec/cpp"
+# endif
+# 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_

[cdesktopenv-devel] [PATCH 2/4] Improve creation of shared libraries for FreeBSD

2012-08-12 Thread Marcin Cieslak
---
 cde/config/cf/FreeBSD.cf   |4 +++-
 cde/config/cf/bsdLib.rules |9 ++---
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/cde/config/cf/FreeBSD.cf b/cde/config/cf/FreeBSD.cf
index 5e3a00d..dc37202 100644
--- a/cde/config/cf/FreeBSD.cf
+++ b/cde/config/cf/FreeBSD.cf
@@ -4,7 +4,7 @@ XCOMM platform:  $TOG: FreeBSD.cf /main/21 1997/10/05 20:42:34 
kaleb $
 #define OSName DefaultOSName
 #endif
 #ifndef OSVendor
-#define OSVendor   Walnut Creek CD-ROM
+#define OSVendor   FreeBSD Foundation
 #endif
 #ifndef OSMajorVersion
 #define OSMajorVersion DefaultOSMajorVersion
@@ -57,6 +57,8 @@ XCOMM operating system:  OSName 
(OSMajorVersion./**/OSMinorVersion./**/OSTeenyVe
 #define DefaultCCOptions   -pipe
 #endif
 
+#define CplusplusLibC  -lstdc++
+
 #if OSMajorVersion > 1
 #define ServerOSDefinesXFree86ServerOSDefines -DDDXTIME
 #define XawI18nDefines -DUSE_XWCHAR_STRING
diff --git a/cde/config/cf/bsdLib.rules b/cde/config/cf/bsdLib.rules
index 8c05222..0d18eca 100644
--- a/cde/config/cf/bsdLib.rules
+++ b/cde/config/cf/bsdLib.rules
@@ -33,8 +33,8 @@ XCOMM $XConsortium: bsdLib.rules /main/3 1996/09/28 16:09:18 
rws $
 #define InstallSharedLibrary(libname,rev,dest) @@\
 install:: Concat(lib,libname.so.rev)   @@\
MakeDir($(DESTDIR)dest) @@\
-   $(INSTALL) -c $(INSTLIBFLAGS) Concat(lib,libname.so.rev) $(DESTDIR)dest 
-@@\
+   $(INSTALL) -c $(INSTLIBFLAGS) Concat(lib,libname.so.rev) $(DESTDIR)dest 
@@\
+   $(LN) Concat(lib,libname.so.rev) Concat($(DESTDIR)dest/lib,libname.so)
 
 #endif /* InstallSharedLibrary */
 
@@ -52,10 +52,13 @@ Concat(lib,libname.so.rev):  solist $(EXTRALIBRARYDEPS) 
@@\
(cd down; $(LD) -o up/$@~ $(SHLIBLDFLAGS) solist $(REQUIREDLIBS)) @@\
$(RM) $@@@\
$(MV) $@~ $@@@\
+   $(RM) Concat(lib,libname.so)@@\
+   $(LN) $@ Concat(lib,libname.so) @@\
LinkBuildLibrary($@)@@\
+   LinkBuildLibrary(Concat(lib,libname.so))@@\
@@\
 clean::
@@\
-   $(RM) Concat(lib,libname.so.rev)
+   $(RM) Concat(lib,libname.so.rev) Concat(lib,libname.so)
 
 #endif /* SharedLibraryTarget */
 
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH 5/7] NULL is a pointer, not string terminator

2012-08-13 Thread Marcin Cieslak
Replace some instances of NULL to '\0', when
referring to string terminator.
---
 cde/lib/csa/api.c|2 +-
 cde/lib/csa/attr.c   |6 +++---
 cde/lib/csa/calendar.c   |8 
 cde/lib/csa/cmsdata.c|2 +-
 cde/lib/csa/convert4-5.c |2 +-
 cde/lib/csa/convert5-4.c |6 +++---
 cde/lib/csa/entry.c  |4 ++--
 cde/lib/csa/iso8601.c|2 +-
 cde/lib/csa/laccess.c|   14 +++---
 cde/lib/csa/lutil.c  |2 +-
 cde/lib/csa/match.c  |6 +++---
 cde/lib/csa/nametbl.c|2 +-
 cde/lib/csa/reparser.y   |4 ++--
 cde/lib/csa/rpccalls.c   |4 ++--
 14 files changed, 32 insertions(+), 32 deletions(-)

diff --git a/cde/lib/csa/api.c b/cde/lib/csa/api.c
index 5ca49af..9c789a5 100644
--- a/cde/lib/csa/api.c
+++ b/cde/lib/csa/api.c
@@ -997,7 +997,7 @@ csa_list_entry_sequence(
rtype = &entry->e->attrs[CSA_ENTRY_ATTR_RECURRENCE_RULE_I];
if (rtype->value == NULL ||
rtype->value->item.string_value == NULL ||
-   *(rtype->value->item.string_value) == NULL) {
+   *(rtype->value->item.string_value) == '\0' ) {
return (CSA_E_INVALID_PARAMETER);
}
}
diff --git a/cde/lib/csa/attr.c b/cde/lib/csa/attr.c
index 2dc4d02..eaa1684 100644
--- a/cde/lib/csa/attr.c
+++ b/cde/lib/csa/attr.c
@@ -1907,8 +1907,8 @@ _CheckNameAtHost(char *owner, char *value)
return (CSA_E_FAILURE);
}
 
-   if (optr = strchr(owner, '@')) *optr = NULL;
-   if (ptr = strchr(value, '@')) *ptr = NULL;
+   if (optr = strchr(owner, '@')) *optr = '\0';
+   if (ptr = strchr(value, '@')) *ptr = '\0';
res = strcmp(value, owner);
if (optr) *optr = '@';
if (ptr) *ptr = '@';
@@ -1965,7 +1965,7 @@ _CheckCalendarName(char *owner, char *cname, 
cms_attribute_value *val)
/* now make sure if cal name is a user name, it's
 * the same as that of the calling user
 */
-   if (ptr = strchr(val->item.string_value, '@')) *ptr = NULL;
+   if (ptr = strchr(val->item.string_value, '@')) *ptr = '\0';
isuser = _DtCmIsUserName(val->item.string_value);
if (ptr) *ptr = '@';
 
diff --git a/cde/lib/csa/calendar.c b/cde/lib/csa/calendar.c
index 0079806..ea1b75b 100644
--- a/cde/lib/csa/calendar.c
+++ b/cde/lib/csa/calendar.c
@@ -90,7 +90,7 @@ _DtCm_new_Calendar(const char *calendar)
if ((cal = (Calendar *)malloc(sizeof(Calendar))) == NULL)
return(NULL);
 
-   memset((void *)cal, NULL, sizeof(Calendar));
+   memset((void *)cal, 0, sizeof(Calendar));
 
if ((cal->name = strdup(calendar)) == NULL) {
free(cal);
@@ -305,7 +305,7 @@ _DtCm_list_old_cal_attr_names(
for (i = 1, j = 0; i <= _DtCM_DEFINED_CAL_ATTR_SIZE; i++) {
if (_CSA_cal_attr_info[i].fst_vers > 0 &&
_CSA_cal_attr_info[i].fst_vers <= cal->file_version) {
-   if (i == CSA_CAL_ATTR_CALENDAR_OWNER_I && *buf == NULL)
+   if (i == CSA_CAL_ATTR_CALENDAR_OWNER_I && *buf == '\0')
continue;
 
if ((names[j] =
@@ -527,7 +527,7 @@ _get_owner_from_old_cal(Calendar *cal, char *owner)
if (_DtCmIsUserName(calname) == B_TRUE)
strcpy(owner, calname);
else
-   *owner = NULL;
+   *owner = '\0';
 
free(calname);
return (CSA_SUCCESS);
@@ -555,7 +555,7 @@ _get_calendar_owner(
} else {
if ((stat = _get_owner_from_old_cal(cal, buf)) != CSA_SUCCESS)
return (stat);
-   else if (*buf == NULL)
+   else if (*buf == '\0')
return (CSA_SUCCESS);
else
owner = buf;
diff --git a/cde/lib/csa/cmsdata.c b/cde/lib/csa/cmsdata.c
index 1ce04b1..3893a59 100644
--- a/cde/lib/csa/cmsdata.c
+++ b/cde/lib/csa/cmsdata.c
@@ -164,7 +164,7 @@ _DtCmGrowAttrArray(uint *num_attrs, cms_attribute **attrs, 
cms_attribute *attr)
return (CSA_E_INSUFFICIENT_MEMORY);
else {
*attrs = newptr;
-   memset((void *)&(*attrs)[*num_attrs+1], NULL,
+   memset((void *)&(*attrs)[*num_attrs+1], 0,
sizeof(cms_attribute) * (index - *num_attrs));
}
 
diff --git a/cde/lib/csa/convert4-5.c b/cde/lib/csa/convert4-5.c
index dfca086..344c4a2 100644
--- a/cde/lib/csa/convert4-5.c
+++ b/cde/lib/csa/convert4-5.c
@@ -378,7 +378,7 @@ _DtCmAttr4ToReminderValue(
_csa_duration_to_iso8601(atoi(remval->value), timestr);
rval.lead_time = timestr;
 
-   if (remval->clientdata && *remval->clientdata != NULL) {
+   if (remval->clientdata && *remval->clientdata != '\0') {
rval.reminder_data.size = strlen(remval->clientdata);
rval.reminder_data.data = (unsigned char *)

[cdesktopenv-devel] [PATCH 6/7] Cast registerrpc args to xdrproc_t explicitly

2012-08-13 Thread Marcin Cieslak
Fixes:
agent.c: In function '_DtCm_init_agent':
agent.c:160: warning: passing argument 5 of 'registerrpc' from incompatible 
pointer type
agent.c:160: warning: passing argument 6 of 'registerrpc' from incompatible 
pointer type
agent.c:167: warning: passing argument 5 of 'registerrpc' from incompatible 
pointer type
agent.c:167: warning: passing argument 6 of 'registerrpc' from incompatible 
pointer type
---
 cde/lib/csa/agent.c |6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/cde/lib/csa/agent.c b/cde/lib/csa/agent.c
index c41ab79..3c84a44 100644
--- a/cde/lib/csa/agent.c
+++ b/cde/lib/csa/agent.c
@@ -156,15 +156,15 @@ _DtCm_init_agent()
}
  
if (registerrpc(_DtCm_transient, AGENTVERS, update_callback,
-   (char *(*)())_DtCm_update_callback_1, _DtCm_xdr_Table_Res_4,
-   _DtCm_xdr_Update_Status) == -1) {
+   (char *(*)())_DtCm_update_callback_1, 
(xdrproc_t)_DtCm_xdr_Table_Res_4,
+   (xdrproc_t)_DtCm_xdr_Update_Status) == -1) {
_DtCm_print_errmsg("Cannot register v1 callback handler\n");
_DtCm_print_errmsg("Callback cannot be enabled.\n");
}
 
if (registerrpc(_DtCm_transient, AGENTVERS_2, CMCB_UPDATE_CALLBACK,
(char *(*)())cmcb_update_callback_2_svc,
-   xdr_cmcb_update_callback_args, xdr_void) == -1) {
+   (xdrproc_t)xdr_cmcb_update_callback_args, (xdrproc_t)xdr_void) == 
-1) {
_DtCm_print_errmsg("Cannot register v2 callback handler\n");
_DtCm_print_errmsg("Callback cannot be enabled.\n");
}
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] lib/csa: Use ANSI C prototypes

2012-08-13 Thread Marcin Cieslak
Improve type compatibility and enable
ANSI C prototypes.
---
 cde/lib/csa/Imakefile   |6 --
 cde/lib/csa/agent.c |2 +-
 cde/lib/csa/agent.wrapbegin |8 
 cde/lib/csa/agent.wrapend   |7 ---
 cde/lib/csa/agent.x |2 +-
 cde/lib/csa/free.h  |1 +
 6 files changed, 3 insertions(+), 23 deletions(-)

diff --git a/cde/lib/csa/Imakefile b/cde/lib/csa/Imakefile
index fdc..d64baee 100644
--- a/cde/lib/csa/Imakefile
+++ b/cde/lib/csa/Imakefile
@@ -105,12 +105,6 @@ rtable3_clnt.c rtable3_xdr.c: rtable3.h namechange1.sed 
namechange2.sed
 rtable2_clnt.c rtable2_xdr.c: rtable3.h namechange1.sed namechange2.sed
 agent_xdr.c agent.c: agent.h
 
-#ifdef LinuxArchitecture
-EXTRASED=sed -e 's/update_failed.*=.*1,.*/update_failed = 1/g' |
-#else
-EXTRASED=
-#endif
-
 agent.h:
$(RM) $@
cat agent.wrapbegin > agent.h
diff --git a/cde/lib/csa/agent.c b/cde/lib/csa/agent.c
index 3c84a44..57b9706 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 *conn)
 {
static Update_Status status = update_succeeded;
_CallbackInfo *cbi;
diff --git a/cde/lib/csa/agent.wrapbegin b/cde/lib/csa/agent.wrapbegin
index b11af6a..b263e17 100644
--- a/cde/lib/csa/agent.wrapbegin
+++ b/cde/lib/csa/agent.wrapbegin
@@ -4,11 +4,3 @@
 #if defined(HPUX)
 #include 
 #endif /* HPUX */
-
-#if defined(linux) || defined(CSRG_BASED)
-# if defined __STDC__
-#  define REDEFINE_STDC
-#  undef __STDC__
-# endif
-#endif /* linux */
-
diff --git a/cde/lib/csa/agent.wrapend b/cde/lib/csa/agent.wrapend
index 7e9615c..015de29 100644
--- a/cde/lib/csa/agent.wrapend
+++ b/cde/lib/csa/agent.wrapend
@@ -3,10 +3,3 @@
 #define hpux
 #endif
 #endif
-
-#if defined(linux)
-# if defined REDEFINE_STDC
-#  undef REDEFINE_STDC
-#  define __STDC__
-# endif
-#endif /* linux */
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/free.h b/cde/lib/csa/free.h
index fca4299..dae1274 100644
--- a/cde/lib/csa/free.h
+++ b/cde/lib/csa/free.h
@@ -33,6 +33,7 @@
 
 #include 
 #include "ansi_c.h"
+#include 
 
 extern CSA_calendar_user *_DtCm_alloc_calendar_users(uint num_elem);
 
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] [PATCH] lib/csa: Use ANSI C prototypes

2012-08-13 Thread Marcin Cieslak
On Mon, 13 Aug 2012, Marcin Cieslak wrote:

> Improve type compatibility and enable
> ANSI C prototypes.

The last patch removes some old cruft for 
Linux - would be good if some Linux users
could test it as well!

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] [PATCH 3/4] Skip building m-guides and dtksh for FreeBSD

2012-08-13 Thread Marcin Cieslak
On Mon, 13 Aug 2012, Irek Szczesniak wrote:

> On Mon, Aug 13, 2012 at 4:01 AM, Marcin Cieslak  wrote:
> > ---
> >  cde/doc/C/Imakefile|2 +-
> >  cde/programs/Imakefile |2 +-
> >  2 files changed, 2 insertions(+), 2 deletions(-)

> Why are you disabling dtksh? It's an integral part of CDE and required
> for functionality like DtBuilder.

It does not compile right now; the build of dtksh is temporarily
disabled for Linux so it seems we need to do for FreeBSD
for the build to continue.

I fully agree we need to get it working.

//Marcin



--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] [PATCH 3/4] Skip building m-guides and dtksh for FreeBSD

2012-08-13 Thread Marcin Cieslak
On Mon, 13 Aug 2012, Joshuah Hurst wrote:

> On Mon, Aug 13, 2012 at 12:59 PM, Marcin Cieslak  wrote:
> > On Mon, 13 Aug 2012, Irek Szczesniak wrote:
> >
> >> On Mon, Aug 13, 2012 at 4:01 AM, Marcin Cieslak  wrote:
> >> > ---
> >> >  cde/doc/C/Imakefile|2 +-
> >> >  cde/programs/Imakefile |2 +-
> >> >  2 files changed, 2 insertions(+), 2 deletions(-)
> >
> >> Why are you disabling dtksh? It's an integral part of CDE and required
> >> for functionality like DtBuilder.
> >
> > It does not compile right now; the build of dtksh is temporarily
> > disabled for Linux so it seems we need to do for FreeBSD
> > for the build to continue.
> >
> > I fully agree we need to get it working.
> 
> At some point in the future we need to look at updating the ksh93 base
> of dtksh. dtksh is currently based on ksh93d-, which is an alpha
> version. The current AT&T ksh stable upstream version is ksh93u+, ~15
> years newer, much more stable and much more portable. Runs on Linux
> (Suse, Fedora, embedded, etc), FreeBSD, NetBSD, Solaris, Illumos,
> HP/UX, too.
> The license issues (if there are actually any, so far I haven't seen
> proof by a lawyer) are solvable by using libshell.so.1, which is ksh93
> as shared library.

Additionally, we need some Korn-compatible shell for building,
to run admin/IntegTools/dbTools/udbToAny.sh script.

For Linux distributions using bash not much is needed,
but I would propose to introduce KSHELL variable
that points to the Korn-compatible shell (the 
default should be /bin/ksh). 

Because BSD make does not run scripts from
the current directory (it uses $PATH just
like the shell) and ./ construct do not 
work, I would propose changing script
invocations like this:

KSHELL should really be defined to config/cf/...
(this is just an example that works
for me on FreeBSD):

diff --git a/cde/admin/IntegTools/post_install/Imakefile 
b/cde/admin/IntegTools/post_install/Imakefile
index f8e3d8d..4c8a6ec 100644
--- a/cde/admin/IntegTools/post_install/Imakefile
+++ b/cde/admin/IntegTools/post_install/Imakefile
@@ -9,8 +9,10 @@ XCOMM $TOG: Imakefile /main/13 1998/03/11 16:20:10 mgreess $
 #endif
 
 TOOL_DIR = ../dbTools
+KSHELL = /usr/local/bin/ksh93
 DATABASE_DIR = ../../../databases
-BUILD_UDB_TOOL = ./build_udb_list
+BUILD_UDB_TOOL = $(SHELL) build_udb_list
+UDB_TOOL = $(KSHELL) $(TOOL_DIR)/udbToAny.ksh
 
 #ifdef HPArchitecture
 PLATFORM = hp-ux
@@ -50,62 +52,62 @@ MakeSubdirs($(SUBDIRS))
 all::
 
 configHelp:: $(DATABASE_DIR)/CDE-HELP-C.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-HELP-C.udb > CDE-HELP-C.lst
$(BUILD_UDB_TOOL) CDE-HELP-C ../../..
 
 configHelpPrg:: $(DATABASE_DIR)/CDE-HELP-PRG.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-HELP-PRG.udb > CDE-HELP-PRG.lst
$(BUILD_UDB_TOOL) CDE-HELP-PRG ../../..
 
 configDemos:: $(DATABASE_DIR)/CDE-DEMOS.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-DEMOS.udb > CDE-DEMOS.lst
$(BUILD_UDB_TOOL) CDE-DEMOS ../../..
 
 configFonts:: $(DATABASE_DIR)/CDE-FONTS.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-FONTS.udb > CDE-FONTS.lst
$(BUILD_UDB_TOOL) CDE-FONTS ../../..
 
 configHelpRun:: $(DATABASE_DIR)/CDE-HELP-RUN.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-HELP-RUN.udb > CDE-HELP-RUN.lst
$(BUILD_UDB_TOOL) CDE-HELP-RUN ../../..
 
 configIcons:: $(DATABASE_DIR)/CDE-ICONS.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-ICONS.udb > CDE-ICONS.lst
$(BUILD_UDB_TOOL) CDE-ICONS ../../..
 
 configInc:: $(DATABASE_DIR)/CDE-INC.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-INC.udb > CDE-INC.lst
$(BUILD_UDB_TOOL) CDE-INC ../../..
 
 configManDev:: $(DATABASE_DIR)/CDE-MAN-DEV.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-MAN-DEV.udb > CDE-MAN-DEV.lst
$(BUILD_UDB_TOOL) CDE-MAN-DEV ../../..
 
 configMan:: $(DATABASE_DIR)/CDE-MAN.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst

[cdesktopenv-devel] [PATCH] FreeBSD port: dtsearch, dtterm, dtwidget, dthelp

2012-08-13 Thread Marcin Cieslak
FreeBSD portability of dtsearch, dtterm, dtwidget, dthelp

Work in progress for dtlogin and dtmail
---
 cde/admin/IntegTools/post_install/Imakefile|3 +++
 cde/config/cf/site.def |4 +++-
 cde/databases/Imakefile|3 +++
 cde/lib/DtSearch/dtsrapi.c |2 --
 cde/lib/DtSearch/globals.c |4 
 cde/lib/DtSearch/raima/vista.h |2 +-
 cde/lib/DtTerm/TermPrim/Imakefile  |4 
 cde/lib/DtTerm/TermPrim/TermPrimDebug.c|6 +++---
 cde/lib/DtTerm/TermPrim/TermPrimOSDepI.h   |4 ++--
 cde/lib/DtTerm/TermPrim/TermPrimSetUtmp.c  |6 ++
 cde/lib/DtWidget/Imakefile |2 +-
 cde/programs/dthelp/parser/canon1/parser/parser.h  |2 +-
 cde/programs/dthelp/parser/pass1/parser/parser.h   |2 +-
 cde/programs/dthelp/parser/pass2/parser/parser.h   |2 +-
 cde/programs/dtlogin/dm.c  |   10 +++---
 cde/programs/dtlogin/dm.h  |4 ++--
 .../dtmail/libDtMail/Common/ImplConfigTable.hh |6 +++---
 cde/programs/dtmail/libDtMail/Common/Session.C |2 +-
 cde/programs/dtmail/libDtMail/RFC/RFCBodyPart.C|2 +-
 19 files changed, 43 insertions(+), 27 deletions(-)

diff --git a/cde/admin/IntegTools/post_install/Imakefile 
b/cde/admin/IntegTools/post_install/Imakefile
index f8e3d8d..0120a40 100644
--- a/cde/admin/IntegTools/post_install/Imakefile
+++ b/cde/admin/IntegTools/post_install/Imakefile
@@ -22,6 +22,9 @@ SUBDIRS = linux
 #ifdef OpenBSDArchitecture
 PLATFORM = openbsd
 #endif
+#ifdef FreeBSDArchitecture
+PLATFORM = freebsd
+#endif
 #ifdef RsArchitecture
 PLATFORM = aix
 SUBDIRS = ibm
diff --git a/cde/config/cf/site.def b/cde/config/cf/site.def
index 9404bd9..e18d4af 100644
--- a/cde/config/cf/site.def
+++ b/cde/config/cf/site.def
@@ -67,8 +67,10 @@ XCOMM site:  $TOG: site.def /main/23 1998/03/19 18:43:26 
mgreess $
 #ifdef AfterVendorCF
 
 #ifndef X11ProjectRoot
-# if defined(LinuxArchitecture) || defined(FreeBSDArchitecture)
+# if defined(LinuxArchitecture)
 #  define X11ProjectRoot   /usr
+#elif defined(FreeBSDArchitecture)
+#  define X11ProjectRoot   /usr/local
 # else
 #  define X11ProjectRoot   /X11
 # endif
diff --git a/cde/databases/Imakefile b/cde/databases/Imakefile
index 2db62e4..0f6537a 100644
--- a/cde/databases/Imakefile
+++ b/cde/databases/Imakefile
@@ -30,6 +30,9 @@ UDB_RELEASE_OPT = -ReleaseStream linux
 #ifdef OpenBSDArchitecture
 UDB_RELEASE_OPT = -ReleaseStream openbsd
 #endif
+#ifdef FreeBSDArchitecture
+UDB_RELEASE_OPT = -ReleaseStream freebsd
+#endif
 
 /*
  * Insure that symbols used in the .udb files are undefined for
diff --git a/cde/lib/DtSearch/dtsrapi.c b/cde/lib/DtSearch/dtsrapi.c
index b62b871..c179826 100644
--- a/cde/lib/DtSearch/dtsrapi.c
+++ b/cde/lib/DtSearch/dtsrapi.c
@@ -314,10 +314,8 @@ int DtSearchInit (
aa_argv0 = argv0;
 if (err_file)
aa_stderr = err_file;
-#if defined(linux) || defined(CSRG_BASED)
 else
aa_stderr = stderr;
-#endif
 
 sprintbuf = austext_malloc (SPRINTBUFSZ, PROGNAME "135", NULL);
 
diff --git a/cde/lib/DtSearch/globals.c b/cde/lib/DtSearch/globals.c
index 093645d..4fa4f78 100644
--- a/cde/lib/DtSearch/globals.c
+++ b/cde/lib/DtSearch/globals.c
@@ -60,11 +60,7 @@
 #include 
 #include 
 
-#if defined(linux)
 FILE   *aa_stderr =NULL;
-#else
-FILE   *aa_stderr =stderr;
-#endif
 char   *aa_argv0 = "";
 nl_catddtsearch_catd = (nl_catd) -1;
 nl_catdaustools_catd = (nl_catd) -1;
diff --git a/cde/lib/DtSearch/raima/vista.h b/cde/lib/DtSearch/raima/vista.h
index ee29579..704e995 100644
--- a/cde/lib/DtSearch/raima/vista.h
+++ b/cde/lib/DtSearch/raima/vista.h
@@ -86,7 +86,7 @@
 # define __SVR4_I386_ABI_L1__
 #endif
 #include /* pickup WORD_BIT, LONG_BIT */
-#if defined(linux)
+#if defined(linux) || defined(__FreeBSD__)
 # undef __SVR4_I386_ABI_L1__
 # ifndef WORD_BIT
 # define WORD_BIT 32
diff --git a/cde/lib/DtTerm/TermPrim/Imakefile 
b/cde/lib/DtTerm/TermPrim/Imakefile
index 286bcd8..a0a3b0e 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 FreeBSDArchitecture
+LinkFile(TermPrimGetPty.c,TermPrimGetPty-bsd.c)
+#endif
+
 #ifdef OpenBSDArchitecture
 LinkFile(TermPrimGetPty.c,TermPrimGetPty-bsd.c)
 #endif
diff --git a/cde/lib/DtTerm/TermPrim/TermPrimDebug.c 
b/cde/lib/DtTerm/TermPrim/TermPrimDebug.c
index 6f8e170..f0a96dd 100644
--- a/cde/lib/DtTerm/TermPrim/TermPrimDebug.c
+++ b/cde/lib/DtTerm/TermPrim/TermPrimDebug.c
@@ -39,10 +39,10 @@ static char rcs_id[] = "$XConsortium: TermPrimDebug.c 
/main/4 1996/11/21 19:58:1
 #include 
 #include 
 #include 
-#if !defined(linux)
-

[cdesktopenv-devel] [PATCH] Compile dtksh on FreeBSD

2012-08-13 Thread Marcin Cieslak
dtksh can be now compiled on FreeBSD. Work in progress.

Needs a real Korn shell to bootstrap as $(KSHELL).
KSHELL is set by default to /usr/local/bin/ksh93
(generic POSIX shell may not work)

Tested on:

  FreeBSD 9.0-BETA1 #0 r224912M amd64

Known issues:

xvmstat:
* sleep does not work well (SIGSTOP is delivered)
xpong:
* xpong: line 220:  ball1x = max_x * 2.2 / 3 : arithmetic syntax error
---
 cde/programs/Imakefile |6 +-
 cde/programs/dtksh/Imakefile   |2 +-
 cde/programs/dtksh/dtkcvt.c|   11 ++-
 cde/programs/dtksh/ksh93/Imakefile |   13 +--
 cde/programs/dtksh/ksh93/ship/shipin   |  104 
 cde/programs/dtksh/ksh93/ship/shipproto.c  |3 +-
 .../dtksh/ksh93/src/cmd/ksh93/bltins/alarm.c   |2 +-
 .../dtksh/ksh93/src/cmd/ksh93/bltins/read.c|2 +-
 .../dtksh/ksh93/src/cmd/ksh93/bltins/sleep.c   |2 +-
 .../dtksh/ksh93/src/cmd/ksh93/edit/history.c   |2 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/edit/vi.c   |   33 +++
 .../dtksh/ksh93/src/cmd/ksh93/include/fault.h  |2 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/sh/io.c |2 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/sh/timers.c |4 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/sh/xec.c|2 +-
 .../dtksh/ksh93/src/lib/libast/hash/hashalloc.c|   14 +--
 .../dtksh/ksh93/src/lib/libast/port/astconf.c  |   15 ---
 .../dtksh/ksh93/src/lib/libast/sfio/sfvprintf.c|   16 ---
 .../dtksh/ksh93/src/lib/libast/string/tokscan.c|   12 +--
 cde/programs/dtksh/xmcmds.c|   14 +--
 cde/programs/dtksh/xmdtksym.h  |1 +
 21 files changed, 54 insertions(+), 208 deletions(-)

diff --git a/cde/programs/Imakefile b/cde/programs/Imakefile
index ca66a8b..e80beb2 100644
--- a/cde/programs/Imakefile
+++ b/cde/programs/Imakefile
@@ -12,10 +12,12 @@ EXTRADIRS += util
 
 XCOMM some of these cannot be built on linux yet.
 XCOMM dtksh dtinfo
-#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture) || 
defined(FreeBSDArchitecture)
+#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture)
 DTKSHDIR = 
 DTINFODIR = 
-#else
+#elif defined(FreeBSDArchitecture)
+DTKSHDIR = dtksh
+DTINFODIR = 
 DTKSHDIR = dtksh
 DTINFODIR = dtinfo
 #endif
diff --git a/cde/programs/dtksh/Imakefile b/cde/programs/dtksh/Imakefile
index 0b78726..f5071a3 100644
--- a/cde/programs/dtksh/Imakefile
+++ b/cde/programs/dtksh/Imakefile
@@ -135,4 +135,4 @@ ComplexProgramTarget($(PROGRAMS))
 
 clean::
@echo " Cleaning ksh directories"
-   ./MakeClean
+   $(SHELL) MakeClean
diff --git a/cde/programs/dtksh/dtkcvt.c b/cde/programs/dtksh/dtkcvt.c
index ff5f892..fe69042 100644
--- a/cde/programs/dtksh/dtkcvt.c
+++ b/cde/programs/dtksh/dtkcvt.c
@@ -67,7 +67,8 @@
 #include "xmwidgets.h"
 #include "msgs.h"
 
-#if defined(SYSV) || defined(SVR4_0) || defined(SVR4) || defined(DEC)
+#if defined(SYSV) || defined(SVR4_0) || defined(SVR4) || defined(DEC) \
+   || defined(CSRG_BASED) || defined(linux)
 #define lsprintf sprintf
 #endif
 
@@ -430,7 +431,7 @@ DtkshCvtStringToCallback(
cb = (XtCallbackList)XtMalloc(sizeof(XtCallbackRec)*2);
cb[0].callback = (XtCallbackProc)stdCB;
 
-   cdata = GetNewCBData((String)fval->addr, w, DTKSHConversionResource, NULL);
+   cdata = GetNewCBData((String)fval->addr, w, DTKSHConversionResource, None);
 
cb[0].closure = (caddr_t)cdata;
cb[1].callback = NULL;
@@ -572,7 +573,7 @@ static EventMaskTable eventMasks[] = {
{"PropertyChangeMask", PropertyChangeMask},
{"ColormapChangeMask", ColormapChangeMask},
{"OwnerGrabButtonMask", OwnerGrabButtonMask},
-   {NULL, NULL},
+   {NULL, NoEventMask},
 };
 
 
@@ -739,7 +740,7 @@ static MWMTable mwmDecorations[] = {
{"MWM_DECOR_MENU", MWM_DECOR_MENU},
{"MWM_DECOR_MINIMIZE", MWM_DECOR_MINIMIZE},
{"MWM_DECOR_MAXIMIZE", MWM_DECOR_MAXIMIZE},
-   {NULL, NULL},
+   {NULL, 0},
 };
 
 static MWMTable mwmFunctions[] = {
@@ -749,7 +750,7 @@ static MWMTable mwmFunctions[] = {
{"MWM_FUNC_MINIMIZE", MWM_FUNC_MINIMIZE},
{"MWM_FUNC_MAXIMIZE", MWM_FUNC_MAXIMIZE},
{"MWM_FUNC_CLOSE", MWM_FUNC_CLOSE},
-   {NULL, NULL},
+   {NULL, 0},
 };
 
 static void
diff --git a/cde/programs/dtksh/ksh93/Imakefile 
b/cde/programs/dtksh/ksh93/Imakefile
index 410a9c4..ee961cb 100644
--- a/cde/programs/dtksh/ksh93/Imakefile
+++ b/cde/programs/dtksh/ksh93/Imakefile
@@ -15,7 +15,7 @@ CCFLAGS =
 .NO_PARALLEL:
 #endif /* SunArchitecture */
 
-FORCE_SHIP = -E
+FORCE_SHIP = -F
 
 MALLOCOBJ =
 
@@ -31,6 +31,7 @@ KSH_OBJS = \
 
 OBJS = $(KSH_OBJS) $(KSH_LIBS)
 
+KSHELL?= /usr/local/bin/ksh93
 
 SUIDEXECDEFINES = \
-DPROFILEPATH=\"$(CDE_CONFIGURATION_TOP)/config/profile\" \
@@ -57,15 +58,7 @@ ALL_SUBS = *
 
 ksh93src:
$(RM) $(SHIP_DIR)/$(ALL_SUBS)/$(ALL_SUBS)/BUILT; \
-   if [ -f /bin/ksh ]; \
-   then \
-   SHELL=/bin/ksh CC=$(CC) CCFLAGS="$(CCF

Re: [cdesktopenv-devel] [PATCH] Compile dtksh on FreeBSD

2012-08-13 Thread Marcin Cieslak
>> Peter Howkins  wrote:
> Comments inline

Thanks!

>> diff --git a/cde/programs/Imakefile b/cde/programs/Imakefile
>> index ca66a8b..e80beb2 100644
>> --- a/cde/programs/Imakefile
>> +++ b/cde/programs/Imakefile
>> @@ -12,10 +12,12 @@ EXTRADIRS += util
>>  
>>  XCOMM some of these cannot be built on linux yet.
>>  XCOMM dtksh dtinfo
>> -#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture) || 
>> defined(FreeBSDArchitecture)
>> +#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture)
>>  DTKSHDIR = 
>>  DTINFODIR = 
>> -#else
>> +#elif defined(FreeBSDArchitecture)
>> +DTKSHDIR = dtksh
>> +DTINFODIR = 
>>  DTKSHDIR = dtksh
>>  DTINFODIR = dtinfo
>>  #endif
>
> Missing #else for non-bsd/non-linux platforms

Right, should be added (New patch below).

>
>
>> --- a/cde/programs/dtksh/ksh93/ship/shipin
>> +++ b/cde/programs/dtksh/ksh93/ship/shipin
>> @@ -728,110 +728,6 @@ esac
>>  trap 'exit 2' 1 2
>>  
>>  #
>> -# check if we can use pax -- punt to cpio
>> -#
>
> Any idea what this code was for before we chuck it?

Yes.

shipin/shipout looks like a complex system
to receive/send distribution of ksh via UUCP

One could receive package of sources of ksh
and friends via UUCP, run "shipin" and
they will be updated. "pax" archiver 
with some proprietary extension was used
to deliver it.

I left most of the code related to the
"shipin" operation in place - it does
not run because of -F option, which means
"compile what you have, don't fetch
updates".

I had to nuke this part only because 
/bin/pax got invoked without arguments
and on EOF may pax asks for the next
archive and prompts the operator,
stopping the build.

>> --- a/cde/programs/dtksh/ksh93/src/cmd/ksh93/edit/vi.c
>> +++ b/cde/programs/dtksh/ksh93/src/cmd/ksh93/edit/vi.c
>> @@ -124,7 +124,6 @@
>>  
>>  #define MAXCHAR MAXLINE-2   /* max char per line */
>>  
>> -#undef isblank
>
> Do you still need to do this if you're renaming isblank to kshisblank() 
> below?

It's a misleading noop in most cases, since many systems have 
real function now and not a macro. #undefing the function
does not help, so I removed it and renamed the static version for now.

Updated patch below (only #else added):

>From 32f1a3b3ec1db2c4554317c34f6d3de00c65937b Mon Sep 17 00:00:00 2001
From: Marcin Cieslak 
Date: Tue, 14 Aug 2012 00:20:48 +0200
Subject: [PATCH] Compile dtksh on FreeBSD

dtksh can be now compiled on FreeBSD. Work in progress.

Needs a real Korn shell to bootstrap as $(KSHELL).
KSHELL is set by default to /usr/local/bin/ksh93
(generic POSIX shell may not work)

Tested on:

  FreeBSD 9.0-BETA1 #0 r224912M amd64

Known issues:

xvmstat:
* sleep does not work well (SIGSTOP is delivered)
xpong:
* xpong: line 220:  ball1x = max_x * 2.2 / 3 : arithmetic syntax error
* dtksh is rebuilt uncondtionally every time make is invoked
---
 cde/programs/Imakefile |5 +-
 cde/programs/dtksh/Imakefile   |2 +-
 cde/programs/dtksh/dtkcvt.c|   11 ++-
 cde/programs/dtksh/ksh93/Imakefile |   13 +--
 cde/programs/dtksh/ksh93/ship/shipin   |  104 
 cde/programs/dtksh/ksh93/ship/shipproto.c  |3 +-
 .../dtksh/ksh93/src/cmd/ksh93/bltins/alarm.c   |2 +-
 .../dtksh/ksh93/src/cmd/ksh93/bltins/read.c|2 +-
 .../dtksh/ksh93/src/cmd/ksh93/bltins/sleep.c   |2 +-
 .../dtksh/ksh93/src/cmd/ksh93/edit/history.c   |2 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/edit/vi.c   |   33 +++
 .../dtksh/ksh93/src/cmd/ksh93/include/fault.h  |2 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/sh/io.c |2 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/sh/timers.c |4 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/sh/xec.c|2 +-
 .../dtksh/ksh93/src/lib/libast/hash/hashalloc.c|   14 +--
 .../dtksh/ksh93/src/lib/libast/port/astconf.c  |   15 ---
 .../dtksh/ksh93/src/lib/libast/sfio/sfvprintf.c|   16 ---
 .../dtksh/ksh93/src/lib/libast/string/tokscan.c|   12 +--
 cde/programs/dtksh/xmcmds.c|   14 +--
 cde/programs/dtksh/xmdtksym.h  |1 +
 21 files changed, 54 insertions(+), 207 deletions(-)

diff --git a/cde/programs/Imakefile b/cde/programs/Imakefile
index ca66a8b..f6b1835 100644
--- a/cde/programs/Imakefile
+++ b/cde/programs/Imakefile
@@ -12,9 +12,12 @@ EXTRADIRS += util
 
 XCOMM some of these cannot be built on linux yet.
 XCOMM dtksh dtinfo
-#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture) || 
defined(FreeBSDArchitecture)
+#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture)
 DTKSHDIR = 
 D

[cdesktopenv-devel] [PATCH] Compile dtksh on FreeBSD

2012-08-14 Thread Marcin Cieslak
dtksh can be now compiled on FreeBSD. Work in progress.

Needs a real Korn shell to bootstrap as $(KSHELL).
KSHELL is set by default to /usr/local/bin/ksh93
(generic POSIX shell may not work)

Tested on:

  FreeBSD 9.0-BETA1 #0 r224912M amd64

Known issues:

xvmstat:
* sleep does not work well (SIGSTOP is delivered)
xpong:
* xpong: line 220:  ball1x = max_x * 2.2 / 3 : arithmetic syntax error
* dtksh is rebuilt uncondtionally every time make is invoked
---
 cde/programs/Imakefile |5 +-
 cde/programs/dtksh/Imakefile   |2 +-
 cde/programs/dtksh/dtkcvt.c|   11 ++-
 cde/programs/dtksh/ksh93/Imakefile |   13 +--
 cde/programs/dtksh/ksh93/ship/shipin   |  104 
 cde/programs/dtksh/ksh93/ship/shipproto.c  |3 +-
 .../dtksh/ksh93/src/cmd/ksh93/bltins/alarm.c   |2 +-
 .../dtksh/ksh93/src/cmd/ksh93/bltins/read.c|2 +-
 .../dtksh/ksh93/src/cmd/ksh93/bltins/sleep.c   |2 +-
 .../dtksh/ksh93/src/cmd/ksh93/edit/history.c   |2 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/edit/vi.c   |   33 +++
 .../dtksh/ksh93/src/cmd/ksh93/include/fault.h  |2 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/sh/io.c |2 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/sh/timers.c |4 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/sh/xec.c|2 +-
 .../dtksh/ksh93/src/lib/libast/hash/hashalloc.c|   14 +--
 .../dtksh/ksh93/src/lib/libast/port/astconf.c  |   15 ---
 .../dtksh/ksh93/src/lib/libast/sfio/sfvprintf.c|   16 ---
 .../dtksh/ksh93/src/lib/libast/string/tokscan.c|   12 +--
 cde/programs/dtksh/xmcmds.c|   14 +--
 cde/programs/dtksh/xmdtksym.h  |1 +
 21 files changed, 54 insertions(+), 207 deletions(-)

diff --git a/cde/programs/Imakefile b/cde/programs/Imakefile
index ca66a8b..f6b1835 100644
--- a/cde/programs/Imakefile
+++ b/cde/programs/Imakefile
@@ -12,9 +12,12 @@ EXTRADIRS += util
 
 XCOMM some of these cannot be built on linux yet.
 XCOMM dtksh dtinfo
-#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture) || 
defined(FreeBSDArchitecture)
+#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture)
 DTKSHDIR = 
 DTINFODIR = 
+#elif defined(FreeBSDArchitecture)
+DTKSHDIR = dtksh
+DTINFODIR = 
 #else
 DTKSHDIR = dtksh
 DTINFODIR = dtinfo
diff --git a/cde/programs/dtksh/Imakefile b/cde/programs/dtksh/Imakefile
index 0b78726..f5071a3 100644
--- a/cde/programs/dtksh/Imakefile
+++ b/cde/programs/dtksh/Imakefile
@@ -135,4 +135,4 @@ ComplexProgramTarget($(PROGRAMS))
 
 clean::
@echo " Cleaning ksh directories"
-   ./MakeClean
+   $(SHELL) MakeClean
diff --git a/cde/programs/dtksh/dtkcvt.c b/cde/programs/dtksh/dtkcvt.c
index ff5f892..fe69042 100644
--- a/cde/programs/dtksh/dtkcvt.c
+++ b/cde/programs/dtksh/dtkcvt.c
@@ -67,7 +67,8 @@
 #include "xmwidgets.h"
 #include "msgs.h"
 
-#if defined(SYSV) || defined(SVR4_0) || defined(SVR4) || defined(DEC)
+#if defined(SYSV) || defined(SVR4_0) || defined(SVR4) || defined(DEC) \
+   || defined(CSRG_BASED) || defined(linux)
 #define lsprintf sprintf
 #endif
 
@@ -430,7 +431,7 @@ DtkshCvtStringToCallback(
cb = (XtCallbackList)XtMalloc(sizeof(XtCallbackRec)*2);
cb[0].callback = (XtCallbackProc)stdCB;
 
-   cdata = GetNewCBData((String)fval->addr, w, DTKSHConversionResource, NULL);
+   cdata = GetNewCBData((String)fval->addr, w, DTKSHConversionResource, None);
 
cb[0].closure = (caddr_t)cdata;
cb[1].callback = NULL;
@@ -572,7 +573,7 @@ static EventMaskTable eventMasks[] = {
{"PropertyChangeMask", PropertyChangeMask},
{"ColormapChangeMask", ColormapChangeMask},
{"OwnerGrabButtonMask", OwnerGrabButtonMask},
-   {NULL, NULL},
+   {NULL, NoEventMask},
 };
 
 
@@ -739,7 +740,7 @@ static MWMTable mwmDecorations[] = {
{"MWM_DECOR_MENU", MWM_DECOR_MENU},
{"MWM_DECOR_MINIMIZE", MWM_DECOR_MINIMIZE},
{"MWM_DECOR_MAXIMIZE", MWM_DECOR_MAXIMIZE},
-   {NULL, NULL},
+   {NULL, 0},
 };
 
 static MWMTable mwmFunctions[] = {
@@ -749,7 +750,7 @@ static MWMTable mwmFunctions[] = {
{"MWM_FUNC_MINIMIZE", MWM_FUNC_MINIMIZE},
{"MWM_FUNC_MAXIMIZE", MWM_FUNC_MAXIMIZE},
{"MWM_FUNC_CLOSE", MWM_FUNC_CLOSE},
-   {NULL, NULL},
+   {NULL, 0},
 };
 
 static void
diff --git a/cde/programs/dtksh/ksh93/Imakefile 
b/cde/programs/dtksh/ksh93/Imakefile
index 410a9c4..ee961cb 100644
--- a/cde/programs/dtksh/ksh93/Imakefile
+++ b/cde/programs/dtksh/ksh93/Imakefile
@@ -15,7 +15,7 @@ CCFLAGS =
 .NO_PARALLEL:
 #endif /* SunArchitecture */
 
-FORCE_SHIP = -E
+FORCE_SHIP = -F
 
 MALLOCOBJ =
 
@@ -31,6 +31,7 @@ KSH_OBJS = \
 
 OBJS = $(KSH_OBJS) $(KSH_LIBS)
 
+KSHELL?= /usr/local/bin/ksh93
 
 SUIDEXECDEFINES = \
-DPROFILEPATH=\"$(CDE_CONFIGURATION_TOP)/config/profile\" \
@@ -57,15 +58,7 @@ ALL_SUBS = *
 
 ksh93src:
$(RM) $(SHIP_DIR)/$(ALL_SUBS)/$(ALL_SUBS)/BUILT; \
-   if [ -f /bin/ksh ]; \
-   then \
- 

[cdesktopenv-devel] [PATCH 09/10] Use $(SHELL) and $(KORNSHELL) for shell scripts

2012-08-14 Thread Marcin Cieslak
Introduce KORNSHELL make variable to point
to the implementation of the Korn Shell.

Use $(SHELL) or $(KORNSHELL) explicitly for
make programs that do not automatically call
shell scripts from the current directory.
---
 cde/admin/IntegTools/post_install/Imakefile   |   27 +
 cde/config/cf/FreeBSD.cf  |2 ++
 cde/config/cf/Imake.tmpl  |4 
 cde/config/cf/README  |1 +
 cde/databases/Imakefile   |2 +-
 cde/programs/dtprintinfo/Imakefile|2 +-
 cde/programs/dtterm/Imakefile |2 +-
 cde/programs/localized/templates/header2.tmpl |4 ++--
 8 files changed, 26 insertions(+), 18 deletions(-)

diff --git a/cde/admin/IntegTools/post_install/Imakefile 
b/cde/admin/IntegTools/post_install/Imakefile
index 0120a40..3b6bc43 100644
--- a/cde/admin/IntegTools/post_install/Imakefile
+++ b/cde/admin/IntegTools/post_install/Imakefile
@@ -10,7 +10,8 @@ XCOMM $TOG: Imakefile /main/13 1998/03/11 16:20:10 mgreess $
 
 TOOL_DIR = ../dbTools
 DATABASE_DIR = ../../../databases
-BUILD_UDB_TOOL = ./build_udb_list
+BUILD_UDB_TOOL = $(SHELL) build_udb_list
+UDB_TOOL = $(KORNSHELL) $(TOOL_DIR)/udbToAny.ksh
 
 #ifdef HPArchitecture
 PLATFORM = hp-ux
@@ -53,62 +54,62 @@ MakeSubdirs($(SUBDIRS))
 all::
 
 configHelp:: $(DATABASE_DIR)/CDE-HELP-C.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-HELP-C.udb > CDE-HELP-C.lst
$(BUILD_UDB_TOOL) CDE-HELP-C ../../..
 
 configHelpPrg:: $(DATABASE_DIR)/CDE-HELP-PRG.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-HELP-PRG.udb > CDE-HELP-PRG.lst
$(BUILD_UDB_TOOL) CDE-HELP-PRG ../../..
 
 configDemos:: $(DATABASE_DIR)/CDE-DEMOS.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-DEMOS.udb > CDE-DEMOS.lst
$(BUILD_UDB_TOOL) CDE-DEMOS ../../..
 
 configFonts:: $(DATABASE_DIR)/CDE-FONTS.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-FONTS.udb > CDE-FONTS.lst
$(BUILD_UDB_TOOL) CDE-FONTS ../../..
 
 configHelpRun:: $(DATABASE_DIR)/CDE-HELP-RUN.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-HELP-RUN.udb > CDE-HELP-RUN.lst
$(BUILD_UDB_TOOL) CDE-HELP-RUN ../../..
 
 configIcons:: $(DATABASE_DIR)/CDE-ICONS.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-ICONS.udb > CDE-ICONS.lst
$(BUILD_UDB_TOOL) CDE-ICONS ../../..
 
 configInc:: $(DATABASE_DIR)/CDE-INC.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-INC.udb > CDE-INC.lst
$(BUILD_UDB_TOOL) CDE-INC ../../..
 
 configManDev:: $(DATABASE_DIR)/CDE-MAN-DEV.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-MAN-DEV.udb > CDE-MAN-DEV.lst
$(BUILD_UDB_TOOL) CDE-MAN-DEV ../../..
 
 configMan:: $(DATABASE_DIR)/CDE-MAN.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-MAN.udb > CDE-MAN.lst
$(BUILD_UDB_TOOL) CDE-MAN ../../..
 
 configMsgCat:: $(DATABASE_DIR)/CDE-MSG-C.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-MSG-C.udb > CDE-MSG-C.lst
$(BUILD_UDB_TOOL) CDE-MSG-C ../../..
 
 configPrg:: $(DATABASE_DIR)/CDE-PRG.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-PRG.udb > CDE-PRG.lst
$(BUILD_UDB_TOOL) CDE-PRG ../../..
 
 configShlibs:: $(DATABASE_DIR)/CDE-SHLIBS.udb
-   $(TOOL_DIR)/udbToAny.ksh  -toLst -ReleaseStream $(PLATFORM) \
+   $(UDB_TOOL)  -toLst -ReleaseStream $(PLATFORM) \
 $(DATABASE_DIR)/CDE-SHLIBS.udb > CDE-SHLIBS.lst
$(BUILD_UDB_TOOL) CDE-SHLIBS ../../..
 
diff --git a/cde/config/cf/FreeBSD.cf b/cde/config/cf/FreeBSD.cf
index dc37202..4f81bef 100644
--- a/cde/config/cf/FreeBSD.cf
+++ b/cde/config/cf/FreeBSD.cf
@@ -30,6 +30,8 @@ XCOMM operating system:  OSName 
(OSMajorVersion./**/OSMinorVersion./**/OSTeenyVe
 #endif
 #undef  InstallCmd
 #define In

[cdesktopenv-devel] [PATCH] Compile dtksh on FreeBSD

2012-08-14 Thread Marcin Cieslak
dtksh can be now compiled on FreeBSD. Work in progress.

Needs a real Korn shell to bootstrap as $(KSHELL).
KSHELL is set by default to /usr/local/bin/ksh93
(generic POSIX shell may not work)

Tested on:

  FreeBSD 9.0-BETA1 #0 r224912M amd64

Known issues:

xvmstat:
* sleep does not work well (SIGSTOP is delivered)
xpong:
* xpong: line 220:  ball1x = max_x * 2.2 / 3 : arithmetic syntax error
* dtksh is rebuilt uncondtionally every time make is invoked
---
 cde/programs/Imakefile |5 +-
 cde/programs/dtksh/Imakefile   |2 +-
 cde/programs/dtksh/dtkcvt.c|   11 ++-
 cde/programs/dtksh/ksh93/Imakefile |   13 +--
 cde/programs/dtksh/ksh93/ship/shipin   |  104 
 cde/programs/dtksh/ksh93/ship/shipproto.c  |3 +-
 .../dtksh/ksh93/src/cmd/ksh93/bltins/alarm.c   |2 +-
 .../dtksh/ksh93/src/cmd/ksh93/bltins/read.c|2 +-
 .../dtksh/ksh93/src/cmd/ksh93/bltins/sleep.c   |2 +-
 .../dtksh/ksh93/src/cmd/ksh93/edit/history.c   |2 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/edit/vi.c   |   33 +++
 .../dtksh/ksh93/src/cmd/ksh93/include/fault.h  |2 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/sh/io.c |2 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/sh/timers.c |4 +-
 cde/programs/dtksh/ksh93/src/cmd/ksh93/sh/xec.c|2 +-
 .../dtksh/ksh93/src/lib/libast/hash/hashalloc.c|   14 +--
 .../dtksh/ksh93/src/lib/libast/port/astconf.c  |   15 ---
 .../dtksh/ksh93/src/lib/libast/sfio/sfvprintf.c|   16 ---
 .../dtksh/ksh93/src/lib/libast/string/tokscan.c|   12 +--
 cde/programs/dtksh/xmcmds.c|   14 +--
 cde/programs/dtksh/xmdtksym.h  |1 +
 21 files changed, 54 insertions(+), 207 deletions(-)

diff --git a/cde/programs/Imakefile b/cde/programs/Imakefile
index ca66a8b..f6b1835 100644
--- a/cde/programs/Imakefile
+++ b/cde/programs/Imakefile
@@ -12,9 +12,12 @@ EXTRADIRS += util
 
 XCOMM some of these cannot be built on linux yet.
 XCOMM dtksh dtinfo
-#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture) || 
defined(FreeBSDArchitecture)
+#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture)
 DTKSHDIR = 
 DTINFODIR = 
+#elif defined(FreeBSDArchitecture)
+DTKSHDIR = dtksh
+DTINFODIR = 
 #else
 DTKSHDIR = dtksh
 DTINFODIR = dtinfo
diff --git a/cde/programs/dtksh/Imakefile b/cde/programs/dtksh/Imakefile
index 0b78726..f5071a3 100644
--- a/cde/programs/dtksh/Imakefile
+++ b/cde/programs/dtksh/Imakefile
@@ -135,4 +135,4 @@ ComplexProgramTarget($(PROGRAMS))
 
 clean::
@echo " Cleaning ksh directories"
-   ./MakeClean
+   $(SHELL) MakeClean
diff --git a/cde/programs/dtksh/dtkcvt.c b/cde/programs/dtksh/dtkcvt.c
index ff5f892..fe69042 100644
--- a/cde/programs/dtksh/dtkcvt.c
+++ b/cde/programs/dtksh/dtkcvt.c
@@ -67,7 +67,8 @@
 #include "xmwidgets.h"
 #include "msgs.h"
 
-#if defined(SYSV) || defined(SVR4_0) || defined(SVR4) || defined(DEC)
+#if defined(SYSV) || defined(SVR4_0) || defined(SVR4) || defined(DEC) \
+   || defined(CSRG_BASED) || defined(linux)
 #define lsprintf sprintf
 #endif
 
@@ -430,7 +431,7 @@ DtkshCvtStringToCallback(
cb = (XtCallbackList)XtMalloc(sizeof(XtCallbackRec)*2);
cb[0].callback = (XtCallbackProc)stdCB;
 
-   cdata = GetNewCBData((String)fval->addr, w, DTKSHConversionResource, NULL);
+   cdata = GetNewCBData((String)fval->addr, w, DTKSHConversionResource, None);
 
cb[0].closure = (caddr_t)cdata;
cb[1].callback = NULL;
@@ -572,7 +573,7 @@ static EventMaskTable eventMasks[] = {
{"PropertyChangeMask", PropertyChangeMask},
{"ColormapChangeMask", ColormapChangeMask},
{"OwnerGrabButtonMask", OwnerGrabButtonMask},
-   {NULL, NULL},
+   {NULL, NoEventMask},
 };
 
 
@@ -739,7 +740,7 @@ static MWMTable mwmDecorations[] = {
{"MWM_DECOR_MENU", MWM_DECOR_MENU},
{"MWM_DECOR_MINIMIZE", MWM_DECOR_MINIMIZE},
{"MWM_DECOR_MAXIMIZE", MWM_DECOR_MAXIMIZE},
-   {NULL, NULL},
+   {NULL, 0},
 };
 
 static MWMTable mwmFunctions[] = {
@@ -749,7 +750,7 @@ static MWMTable mwmFunctions[] = {
{"MWM_FUNC_MINIMIZE", MWM_FUNC_MINIMIZE},
{"MWM_FUNC_MAXIMIZE", MWM_FUNC_MAXIMIZE},
{"MWM_FUNC_CLOSE", MWM_FUNC_CLOSE},
-   {NULL, NULL},
+   {NULL, 0},
 };
 
 static void
diff --git a/cde/programs/dtksh/ksh93/Imakefile 
b/cde/programs/dtksh/ksh93/Imakefile
index 410a9c4..ee961cb 100644
--- a/cde/programs/dtksh/ksh93/Imakefile
+++ b/cde/programs/dtksh/ksh93/Imakefile
@@ -15,7 +15,7 @@ CCFLAGS =
 .NO_PARALLEL:
 #endif /* SunArchitecture */
 
-FORCE_SHIP = -E
+FORCE_SHIP = -F
 
 MALLOCOBJ =
 
@@ -31,6 +31,7 @@ KSH_OBJS = \
 
 OBJS = $(KSH_OBJS) $(KSH_LIBS)
 
+KSHELL?= /usr/local/bin/ksh93
 
 SUIDEXECDEFINES = \
-DPROFILEPATH=\"$(CDE_CONFIGURATION_TOP)/config/profile\" \
@@ -57,15 +58,7 @@ ALL_SUBS = *
 
 ksh93src:
$(RM) $(SHIP_DIR)/$(ALL_SUBS)/$(ALL_SUBS)/BUILT; \
-   if [ -f /bin/ksh ]; \
-   then \
- 

Re: [cdesktopenv-devel] [PATCH] Compile dtksh on FreeBSD

2012-08-14 Thread Marcin Cieslak
On Tue, 14 Aug 2012, Marcin Cieslak wrote:

> dtksh can be now compiled on FreeBSD. Work in progress.

(please disregard this one)

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] For FreeBSD: patch for x11-toolkits/open-motif

2012-08-14 Thread Marcin Cieslak
Hello,

to sucessfully build CDE on FreeBSD a small patch
is needed to configure of open-motif to make sure
printing is enabled.

The patch is here:
http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/170626

(thanks to Ulrich Wilkens for providing the fix)

With the patch and after rebuilding open-motif
you should have the following in your /usr/local/include/Xm/Xm.h:

#ifndef PRINTING_SUPPORTED
#define PRINTING_SUPPORTED 1
#endif

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] Deal with *.tmp.msg after mkcatdefs failure

2012-08-14 Thread Marcin Cieslak
BSD make interrupts shell pipeline after
if it cannot run the command:

rm -f Mrm.msg
ln -s ../../../../imports/motif/localized/de_DE.ISO8859-1/msg/Mrm.msg Mrm.msg
Running mkcatdefs for Mrm.cat with LANG set to de_DE.ISO8859-1
(  rm -f Mrm.cat Mrm.tmp.msg;  LANG=de_DE.ISO8859-1;  export LANG;  
../../../../imports/motif/localized/util/mkcatdefs Mrm Mrm.msg -h > 
Mrm.tmp.msg;  gencat  Mrm.cat Mrm.tmp.msg;  rm -f Mrm.tmp.msg  )
../../../../imports/motif/localized/util/mkcatdefs: not found
*** Error code 127

After this, an empty Mrm.tmp.msg is left.
---
 cde/.gitignore|   10 ++
 cde/programs/localized/templates/msg.tmpl |1 +
 2 files changed, 11 insertions(+)

diff --git a/cde/.gitignore b/cde/.gitignore
index 9aa2dd7..4682717 100644
--- a/cde/.gitignore
+++ b/cde/.gitignore
@@ -131,6 +131,16 @@ programs/dtwm/dtwm
 programs/localized/C/types/*.dt
 programs/localized/C/types/*.dt.tmsg
 programs/localized/C/types/*.nls
+programs/localized/ls /msg/*.nls
+programs/localized/de_DE.ISO8859-1/msg/*.tmp.msg
+programs/localized/es_ES.ISO8859-1/msg/*.tmp.msg
+programs/localized/fr_FR.ISO8859-1/msg/*.tmp.msg
+programs/localized/it_IT.ISO8859-1/msg/*.tmp.msg
+programs/localized/ja_JP.dt-eucJP/msg/*.tmp.msg
+programs/localized/ko_KR.dt-eucKR/msg/*.tmp.msg
+programs/localized/sv_SE.ISO8859-1/msg/*.tmp.msg
+programs/localized/zh_CN.dt-eucCN/msg/*.tmp.msg
+programs/localized/zh_TW.dt-eucTW/msg/*.tmp.msg
 
 # dtappbuilder
 programs/dtappbuilder/src/ab/.dtcodegen.log
diff --git a/cde/programs/localized/templates/msg.tmpl 
b/cde/programs/localized/templates/msg.tmpl
index 697f457..f9987c7 100644
--- a/cde/programs/localized/templates/msg.tmpl
+++ b/cde/programs/localized/templates/msg.tmpl
@@ -7,5 +7,6 @@ RandomMessageCatalogRule()
 
 clean::
$(RM) *.cat
+   $(RM) *.tmp.msg
 
 depend::
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] const char maze: unbreak ToolTalk build

2012-08-14 Thread Marcin Cieslak
Follow up to de82eebdd56c02ae200bf2d9ec60df053919e7e7
---
 cde/lib/tt/lib/db/tt_db_client.C |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/cde/lib/tt/lib/db/tt_db_client.C b/cde/lib/tt/lib/db/tt_db_client.C
index 24d369c..22e210f 100644
--- a/cde/lib/tt/lib/db/tt_db_client.C
+++ b/cde/lib/tt/lib/db/tt_db_client.C
@@ -193,7 +193,7 @@ _Tt_db_results _Tt_db_client::connectToDB (const _Tt_string 
&hostname)
// If dbVersion == 1, then we are talking to an old DB 
server
static _tt_auth_level_results results;
 
-   const char  *path = "";
+   char  *path = "";
clnt_stat  rpc_status;
int   *result = (int *)NULL;
result = _tt_min_auth_level_1(&path, dbServer, 
&rpc_status);
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] [PATCH] const char maze: unbreak ToolTalk build

2012-08-14 Thread Marcin Cieslak
>> Marcin Cieslak  wrote:
> Follow up to de82eebdd56c02ae200bf2d9ec60df053919e7e7
> ---
>  cde/lib/tt/lib/db/tt_db_client.C |2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/cde/lib/tt/lib/db/tt_db_client.C 
> b/cde/lib/tt/lib/db/tt_db_client.C
> index 24d369c..22e210f 100644
> --- a/cde/lib/tt/lib/db/tt_db_client.C
> +++ b/cde/lib/tt/lib/db/tt_db_client.C
> @@ -193,7 +193,7 @@ _Tt_db_results _Tt_db_client::connectToDB (const 
> _Tt_string &hostname)
>   // If dbVersion == 1, then we are talking to an old DB 
> server
>   static _tt_auth_level_results results;
>  
> - const char  *path = "";
> + char  *path = "";
>   clnt_stat  rpc_status;
>   int   *result = (int *)NULL;
>   result = _tt_min_auth_level_1(&path, dbServer, 
> &rpc_status);

Here is the failure I am getting:

rm -f tt_db_client.o
CC -c -O2   -I../../lib -I../../../.. -I../../../../exports/include 
-I../../../../imports/motif/include -I../../../../imports/x11/include  
-DCSRG_BASED -DANSICPP -DMULTIBYTE -DNLS16   -DOSMAJORVERSION=9 
-DOSMINORVERSION=0 -DBSDSHLIB  -fpic tt_db_client.C
tt_db_client.C: In member function '_Tt_db_results 
_Tt_db_client::connectToDB(const _Tt_string&)':
tt_db_client.C:199: error: invalid conversion from 'const char**' to 'char**'
tt_db_client.C:199: error:   initializing argument 1 of 'int* 
_tt_min_auth_level_1(char**, CLIENT*, clnt_stat*)'
*** Error code 1

Stop in /.amd_mnt/radziecki/a/icybox/tmp/cdesktopenv/cde/lib/tt/lib/db.
*** Error code 1



--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] [PATCH] Process SGML and man files

2012-08-15 Thread Marcin Cieslak
>> Ulrich Wilkens  wrote:

> diff --git a/cde/programs/nsgmls/parser_inst.m4 
> b/cde/programs/nsgmls/parser_inst.m4
> index 4c09cb2..a325156 100644
> --- a/cde/programs/nsgmls/parser_inst.m4
> +++ b/cde/programs/nsgmls/parser_inst.m4
> @@ -26,6 +26,7 @@
>  #undef SP_DEFINE_TEMPLATES
>  
>  #include 
> +#include 
>  #include "Attribute.h"
>  #include "Attributed.h"
>  #include "CharsetDecl.h"
> @@ -165,7 +166,9 @@ __instantiate(Vector >)
>  __instantiate(Vector)
>  __instantiate(Vector)
>  __instantiate(Vector)
> +#if UINTPTR_MAX == 0x
>  __instantiate(Vector)
> +#endif
>  __instantiate(Vector)
>  
>  __instantiate(NamedTable)

This causes the following error on my system:
Without it nsgmls compiles fine.

//Marcin

8<
rm -f parser_inst.C
/usr/bin/m4 instmac.m4 parser_inst.m4 >parser_inst.C
rm -f parser_inst.o
CC -c -O2 -DSP_VOLATILE=volatile -DSP_CONST=const -DSP_ANSI_CLASS_INST   
-DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST -fno-implicit-templates   
-I../.. -I../../exports/include -I../../imports/motif/include 
-I../../imports/x11/include  -DCSRG_BASED -DANSICPP -DMULTIBYTE -DNLS16  
-DOSMAJORVERSION=9 -DOSMINORVERSION=0-fno-implicit-templates parser_inst.C
rm -f nsgmls
CC -o nsgmls -O2 -DSP_VOLATILE=volatile -DSP_CONST=const -DSP_ANSI_CLASS_INST   
-DSP_HAVE_LOCALE -DSP_MULTI_BYTE -DSP_MANUAL_INST -fno-implicit-templates
-L../../exports/lib  -L../../imports/motif/lib -L../../imports/x11/lib 
Allocator.o  ArcEngine.o  Attribute.o   
   CharsetDecl.oCharsetInfo.o   
 CharsetRegistry.oCmdLineApp.o 
CodingSystem.o   ConsoleOutput.o  
ContentState.o   ContentToken.o   
DescriptorManager.o  Dtd.o
EUCJPCodingSystem.o  ElementType.oEntity.o  
   EntityApp.o  EntityCatalog.o 
 EntityDecl.o EntityManager.o  
ErrnoMessageArg.oErrorCountEventHandler.o Event.o   
   EventGenerator.o ExtendEntityManager.o   
 ExternalId.o Fixed2CodingSystem.o 
GenericEventHandler.oGroup.o  Hash.o
   IListBase.o  ISO8859InputCodingSystem.o  
 Id.o IdentityCodingSystem.o   
InputSource.oInternalInputSource.oLink.o
   LinkProcess.oLiteralStorage.o
 Location.o   Lpd.oMarkup.o 
Message.oMessageArg.o   
  MessageEventHandler.oMessageReporter.o
MessageTable.o   ModeInfo.o   Notation.o
   NumericCharRefOrigin.o   OffsetOrderedList.o 
 OpenElement.oOutputCharStream.o   
OutputState.oParam.o  Parser.o  
   ParserApp.o  ParserEventGeneratorKit.o   
 ParserOptions.o  ParserState.o
Partition.o  PosixStorage.o   
RastEventHandler.o   Recognizer.o 
RewindStorageObject.oSGMLApplication.o
SJISCodingSystem.o   SOEntityCatalog.oSd.o  
   SdText.o SearchResultMessageArg.o
 SgmlParser.o SgmlsEventHandler.o  
ShortReferenceMap.o  StdioStorage.o   
StorageManager.o StringSet.o  
StringVectorMessageArg.o Syntax.o Text.o
   TokenMessageArg.o
TranslateInputCodingSystem.o TrieBuilder.oTypeId.o  
   URLStorage.o UTF8CodingSystem.o  
 Undo.o   UnicodeCodingSystem.o
UnivCharsetDesc.oassert.o nsgmls.o  
   parseAttribute.o parseCommon.o   
 parseDecl.o  parseInstance.o  
parseMode.o  parseParam.o parseSd.o 
   splib.o  app_inst.o  
 arc_inst.o   entmgr_inst.o
nsgmls_inst.oparser_inst.o
xentmgr_inst.o  -L/usr/dt/lib   -L/usr/local/lib 
ArcEng

[cdesktopenv-devel] [PATCH 14/16] FreeBSD does not need extern char *sys_errlist[]

2012-08-15 Thread Marcin Cieslak
Add preprocessor directives not to try
to redefine sys_errlist[] or sys_nerr

There are already definitions:

 extern __const char *__const sys_errlist[];
 extern __const int sys_nerr;

in 

Actually we should have something like
NeedSysErrlist in imake definitions
to get rid of those #ifdefs.
---
 cde/programs/dtappbuilder/src/ab/palette_stubs.c   |2 +-
 cde/programs/dtappbuilder/src/ab/proj.c|2 +-
 cde/programs/dtappbuilder/src/ab/projP_utils.c |2 +-
 cde/programs/dtappbuilder/src/ab/proj_utils.c  |2 +-
 .../dtappbuilder/src/libABil/bil_loadfile.c|2 +-
 cde/programs/dtcm/dtcm/dnd.c   |2 +-
 cde/programs/dtimsstart/remote.c   |2 +-
 cde/programs/dtimsstart/start.c|2 +-
 cde/programs/dtprintinfo/libUI/MotifUI/Debug.c |2 +-
 9 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/cde/programs/dtappbuilder/src/ab/palette_stubs.c 
b/cde/programs/dtappbuilder/src/ab/palette_stubs.c
index 8f8dd86..da9e97a 100644
--- a/cde/programs/dtappbuilder/src/ab/palette_stubs.c
+++ b/cde/programs/dtappbuilder/src/ab/palette_stubs.c
@@ -140,7 +140,7 @@ static void register_palette_info(
 **  **
 **/
 
-#if !defined(linux)
+#if !defined(linux) && !defined(__FreeBSD__)
 extern char *sys_errlist[];
 #endif
 
diff --git a/cde/programs/dtappbuilder/src/ab/proj.c 
b/cde/programs/dtappbuilder/src/ab/proj.c
index a2cb1fc..d2bfa97 100644
--- a/cde/programs/dtappbuilder/src/ab/proj.c
+++ b/cde/programs/dtappbuilder/src/ab/proj.c
@@ -228,7 +228,7 @@ static XtTranslations proj_transtbl = NULL;
 static XRectangle   *rband_rect = NULL;
 static Boolean  mselect_adjust = False;
 
-#if !defined(linux)
+#if !defined(linux) && !defined(__FreeBSD__)
 extern char *sys_errlist[];
 #endif
 char   Buf[MAXPATHLEN];/* Work buffer */
diff --git a/cde/programs/dtappbuilder/src/ab/projP_utils.c 
b/cde/programs/dtappbuilder/src/ab/projP_utils.c
index e44764b..d0e6900 100644
--- a/cde/programs/dtappbuilder/src/ab/projP_utils.c
+++ b/cde/programs/dtappbuilder/src/ab/projP_utils.c
@@ -93,7 +93,7 @@ static void mult_module_selected(
 **  **
 **/
 
-#if !defined(linux)
+#if !defined(linux) && !defined(__FreeBSD__)
 extern char*sys_errlist[];
 #endif
 char   Buf[MAXPATHLEN];/* Work buffer */
diff --git a/cde/programs/dtappbuilder/src/ab/proj_utils.c 
b/cde/programs/dtappbuilder/src/ab/proj_utils.c
index 0256c0f..6754a1a 100644
--- a/cde/programs/dtappbuilder/src/ab/proj_utils.c
+++ b/cde/programs/dtappbuilder/src/ab/proj_utils.c
@@ -180,7 +180,7 @@ static void notify_proj_save_as_okCB(
 **  **
 **/
 
-#if !defined(linux)
+#if !defined(linux) && !defined(__FreeBSD__)
 extern char *sys_errlist[];
 #endif
 
diff --git a/cde/programs/dtappbuilder/src/libABil/bil_loadfile.c 
b/cde/programs/dtappbuilder/src/libABil/bil_loadfile.c
index 08a876a..def0f7f 100644
--- a/cde/programs/dtappbuilder/src/libABil/bil_loadfile.c
+++ b/cde/programs/dtappbuilder/src/libABil/bil_loadfile.c
@@ -61,7 +61,7 @@
 
 BIL_LOAD_INFO  bilP_load;
 char   Buf[MAXPATHLEN];
-#if !defined(linux)
+#if !defined(linux) && !defined(__FreeBSD__)
 extern char *sys_errlist[];
 #endif
 
diff --git a/cde/programs/dtcm/dtcm/dnd.c b/cde/programs/dtcm/dtcm/dnd.c
index d4c6be6..eb5fb8a 100644
--- a/cde/programs/dtcm/dtcm/dnd.c
+++ b/cde/programs/dtcm/dtcm/dnd.c
@@ -72,7 +72,7 @@
 
 static Bool lookForButton(Display *, XEvent *, XPointer);
 
-#if !defined(linux)
+#if !defined(linux) && !defined(__FreeBSD__)
 extern char*sys_errlist[];
 #endif
 
diff --git a/cde/programs/dtimsstart/remote.c b/cde/programs/dtimsstart/remote.c
index 819a265..476c7d0 100644
--- a/cde/programs/dtimsstart/remote.c
+++ b/cde/programs/dtimsstart/remote.c
@@ -37,7 +37,7 @@
 #include /* for X_ChangeHosts */
 #include  /* for XA_STRING */
 
-#if !defined(linux)
+#if !defined(linux) && !defined(__FreeBSD__)
 extern char*sys_errlist[];
 #endif
 
diff --git a/cde/programs/dtimsstart/start.c b/cde/programs/dtimsstart/start.c
index 6880051..085403a 100644
--- a/cde/programs/dtimsstart/start.c
+++ b/cde/programs/dtimsstart/start.c
@@ -32,7 +32,7 @@
 #define _NFILE FOPEN_MAX
 #endif
 
-#if !defined(linux)
+#if !defined(linux) && !defined(__FreeBSD__)
 extern char*sys_errlist[];
 extern int sys_nerr;
 #endif
diff --git a/cde/programs/dtprintinfo/libUI/MotifUI/Debug.c 
b/cde/programs/dtprintinfo/libUI/MotifUI/Debug.c
index 615ee9c..e6fd10b 100644
--- 

[cdesktopenv-devel] [PATCH 15/16] Modern BSDs don't need union wait

2012-08-15 Thread Marcin Cieslak
We have

pid_t
wait3(int *status, int options, struct rusage *rusage);

on FreeBSD and we don't need (union wait) handling.

Another good candidate for one #ifdef from imake templates.
We have already OPT_BSD_WAIT in ToolTalk's tt_options.h
---
 cde/programs/dtudcexch/exportbdf.c |2 +-
 cde/programs/dtudcfonted/dtaddcpf/addcpf.c |4 ++--
 cde/programs/dtudcfonted/dtcpftogpf/cpftogpf.c |4 ++--
 cde/programs/dtudcfonted/libfuty/getfname.c|2 +-
 cde/programs/dtudcfonted/libfuty/oakfuty.c |2 +-
 5 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/cde/programs/dtudcexch/exportbdf.c 
b/cde/programs/dtudcexch/exportbdf.c
index d4eebe5..95016d6 100644
--- a/cde/programs/dtudcexch/exportbdf.c
+++ b/cde/programs/dtudcexch/exportbdf.c
@@ -211,7 +211,7 @@ char**comment_list ;/* pointer to the list of comments  
*/
int cnt ;
int comflg ;
pid_t   chld_pid = 0;
-#if defined( SVR4 ) || defined( SYSV )
+#if defined( SVR4 ) || defined( SYSV ) || defined(__FreeBSD__)
int chld_stat ;
 #else
union   waitchld_stat ;
diff --git a/cde/programs/dtudcfonted/dtaddcpf/addcpf.c 
b/cde/programs/dtudcfonted/dtaddcpf/addcpf.c
index 1271707..eb876bd 100644
--- a/cde/programs/dtudcfonted/dtaddcpf/addcpf.c
+++ b/cde/programs/dtudcfonted/dtaddcpf/addcpf.c
@@ -86,7 +86,7 @@ staticchar*util_locale ;
 
 static pid_t   gtob_pid = 0;
 static pid_t   btop_pid = 0;
-#if defined( SVR4 ) || defined( SYSV ) || defined(__osf__)
+#if defined( SVR4 ) || defined( SYSV ) || defined(__osf__) || 
defined(__FreeBSD__)
 static int chld_stat ;
 #else
 static union   waitchld_stat ;
@@ -397,7 +397,7 @@ char*argv[];
 #else
fclose( WriteSnf.output );
WaitID( btop_pid, chld_stat ) ;
-#if !defined( SVR4 ) && !defined( SYSV ) &&!defined(__osf__)
+#if !defined( SVR4 ) && !defined( SYSV ) &&!defined(__osf__) && 
!defined(__FreeBSD__)
if ( !WIFEXITED(chld_stat) ) {
 #else
if ( ! ( WIFEXITED(chld_stat) && !WEXITSTATUS(chld_stat) ) ) {
diff --git a/cde/programs/dtudcfonted/dtcpftogpf/cpftogpf.c 
b/cde/programs/dtudcfonted/dtcpftogpf/cpftogpf.c
index 966babf..8df38cd 100644
--- a/cde/programs/dtudcfonted/dtcpftogpf/cpftogpf.c
+++ b/cde/programs/dtudcfonted/dtcpftogpf/cpftogpf.c
@@ -102,7 +102,7 @@ char*argv[];
char*style ;/* style */
int chk_fd;
pid_t   chld_pid = 0;
-#if defined( SVR4 ) || defined( SYSV )
+#if defined( SVR4 ) || defined( SYSV ) || defined(__FreeBSD__)
int chld_stat ;
 #else
union   waitchld_stat ;
@@ -370,7 +370,7 @@ char*argv[];
fclose( Head.output );
close( pfd[1] );
wait( &exit_stat );
-#if !defined( SVR4 ) && !defined( SYSV )
+#if !defined( SVR4 ) && !defined( SYSV ) && !defined(__FreeBSD__)
if ( !WIFEXITED(exit_stat) ) {
 #else
if (! ( WIFEXITED(exit_stat) && !WEXITSTATUS(exit_stat) ) ) {
diff --git a/cde/programs/dtudcfonted/libfuty/getfname.c 
b/cde/programs/dtudcfonted/libfuty/getfname.c
index a4c2b22..e145874 100644
--- a/cde/programs/dtudcfonted/libfuty/getfname.c
+++ b/cde/programs/dtudcfonted/libfuty/getfname.c
@@ -1047,7 +1047,7 @@ char  **fontname ;
 {
FILE*fp ;
pid_t   chld_pid = 0;
-#if defined( SVR4 ) || defined( SYSV )
+#if defined( SVR4 ) || defined( SYSV ) || defined(__FreeBSD__)
int chld_stat ;
 #else
union   waitchld_stat ;
diff --git a/cde/programs/dtudcfonted/libfuty/oakfuty.c 
b/cde/programs/dtudcfonted/libfuty/oakfuty.c
index 359b9d9..4a9be04 100644
--- a/cde/programs/dtudcfonted/libfuty/oakfuty.c
+++ b/cde/programs/dtudcfonted/libfuty/oakfuty.c
@@ -190,7 +190,7 @@ struct ptobhead *head;
char  buf[BUFSIZE], *p;
 
pid_t   chld_pid = 0;
-#if defined( SVR4 ) || defined( SYSV )
+#if defined( SVR4 ) || defined( SYSV ) || defined(__FreeBSD__)
int chld_stat ;
 #else
union   waitchld_stat ;
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH 16/16] FreeBSD updates for dtspcd, dtfile and others

2012-08-15 Thread Marcin Cieslak
* Add libraries where necesary
* Point to Freetype2 includes for dtfile
* Define default manpath
---
 cde/programs/dtaction/Imakefile   |4 
 cde/programs/dtcm/dtcm/Imakefile  |2 +-
 cde/programs/dtfile/Imakefile |2 +-
 cde/programs/dtsearchpath/libCliSrv/UnixEnv.C |2 ++
 cde/programs/dtspcd/Imakefile |3 ++-
 5 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/cde/programs/dtaction/Imakefile b/cde/programs/dtaction/Imakefile
index a58065f..a0b9ebd 100644
--- a/cde/programs/dtaction/Imakefile
+++ b/cde/programs/dtaction/Imakefile
@@ -16,6 +16,10 @@ EXTRA_DEFINES = +e
 SYS_LIBRARIES   = -lm -lcrypt
 #endif
 
+#ifdef FreeBSDArchitecture
+SYS_LIBRARIES   = -lm -lcrypt
+#endif
+
 #ifdef SCOArchitecture
 SYS_LIBRARIES   = -lm -lcrypt
 #endif
diff --git a/cde/programs/dtcm/dtcm/Imakefile b/cde/programs/dtcm/dtcm/Imakefile
index aff0826..b6fe1bc 100644
--- a/cde/programs/dtcm/dtcm/Imakefile
+++ b/cde/programs/dtcm/dtcm/Imakefile
@@ -32,7 +32,7 @@ EXTRA_LIBRARIES   = -lrpcsvc -lPW -ldiag
 EXTRA_LIBRARIES= -lrpcsvc -lV3
 #endif
 
-#if defined(OpenBSDArchitecture)
+#if defined(OpenBSDArchitecture) || defined(FreeBSDArchitecture)
 EXTRA_LIBRARIES = -lcompat
 #endif
 
diff --git a/cde/programs/dtfile/Imakefile b/cde/programs/dtfile/Imakefile
index 10a2ce7..0d0febc 100644
--- a/cde/programs/dtfile/Imakefile
+++ b/cde/programs/dtfile/Imakefile
@@ -31,7 +31,7 @@ EXTRA_CCOPTIONS = -xF
 EXTRA_INCLUDES = -I/usr/include/freetype2
 #endif
 
-#if defined(OpenBSDArchitecture)
+#if defined(OpenBSDArchitecture) || defined(FreeBSDArchitecture)
 EXTRA_INCLUDES = -I$(XPROJECTROOT)/include/freetype2
 #endif
 
diff --git a/cde/programs/dtsearchpath/libCliSrv/UnixEnv.C 
b/cde/programs/dtsearchpath/libCliSrv/UnixEnv.C
index 1e7fdf1..e00bb2c 100644
--- a/cde/programs/dtsearchpath/libCliSrv/UnixEnv.C
+++ b/cde/programs/dtsearchpath/libCliSrv/UnixEnv.C
@@ -82,6 +82,8 @@ UnixEnvironment::UnixEnvironment()
 manpath = 
"/usr/share/man/%L:/usr/share/man:/usr/contrib/man/%L:/usr/contrib/man:/usr/local/man/%L:/usr/local/man";
 #elif defined(__OpenBSD__)
manpath = 
"/usr/share/man:/usr/X11R6/man:/usr/local/man:/usr/ports/infrastructure/man";
+#elif defined(__FreeBSD__)
+   manpath = "/usr/share/man:/usr/local/man";
 #endif
 else
manpath = temp;
diff --git a/cde/programs/dtspcd/Imakefile b/cde/programs/dtspcd/Imakefile
index 645abed..3e7a433 100644
--- a/cde/programs/dtspcd/Imakefile
+++ b/cde/programs/dtspcd/Imakefile
@@ -24,7 +24,8 @@ LOCAL_LIBRARIES = $(DTHELPLIB) $(DTSVCLIB) $(TTLIB) \
 SYS_LIBRARIES = -lm -lgen 
 #endif
 
-#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture)
+#if defined(LinuxArchitecture) || defined(OpenBSDArchitecture) \
+|| defined(FreeBSDArchitecture)
 LOCAL_LIBRARIES = $(DTHELPLIB) $(DTSVCLIB) $(TTLIB) \
$(XMLIB) $(XTOOLLIB) $(XLIB)
 SYS_LIBRARIES = -lm
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] running rpcbind without -i (insecure)

2012-08-15 Thread Marcin Cieslak
>> Jon Trulson  wrote:
>   This message is in MIME format.  The first part should be readable text,
>   while the remaining parts are likely unreadable without MIME-aware tools.
>
> --8323329-905150771-1345051536=:12267
> Content-Type: TEXT/PLAIN; format=flowed; charset=US-ASCII
>
> In IRC yesterday, kpedersen mentioned he had made CDE run under Fedora
> 17.  He said he had to install the tirpc (Transport Independant RPC)
> package, as fedora does not include the rpc facility in their glibc
> anymore.

What is exactly the "insecure" RPC problem? I can see ttdbserver
registering with rpcbind just fine (on FreeBSD, but it uses
very similar machanism).

//Marcin


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] [PATCH 14/16] FreeBSD does not need extern char *sys_errlist[]

2012-08-15 Thread Marcin Cieslak
On Wed, 15 Aug 2012, Jon Trulson wrote:

> On Wed, 15 Aug 2012, Marcin Cieslak wrote:
> 
> > Add preprocessor directives not to try
> > to redefine sys_errlist[] or sys_nerr
> > 
> > There are already definitions:
> > 
> > extern __const char *__const sys_errlist[];
> > extern __const int sys_nerr;
> > 
> > in 
> > 
> 
> This is probably true of all of the BSD's, so instead of (__FreeBSD__)
> shouldn't it be (CSRG_BASED)?

Maybe, not sure. It also applies to linux so I think
we should really some common define in .cf files.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] [PATCH 15/16] Modern BSDs don't need union wait

2012-08-15 Thread Marcin Cieslak
On Wed, 15 Aug 2012, Jon Trulson wrote:

> On Wed, 15 Aug 2012, Marcin Cieslak wrote:
> 
> > We have
> > 
> > pid_t
> > wait3(int *status, int options, struct rusage *rusage);
> > 
> > on FreeBSD and we don't need (union wait) handling.
> > 
> 
> Again - doesn't this apply to the other bsd's as well?  ie use
> CSRG_BASED rather than __FreeBSD__?

Older BSD systems use (union wait) instead of int.

Not sure how far back in the history CSRG_BASED goes...

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] Fix compiler warnings in dtsession

2012-08-15 Thread Marcin Cieslak
---
 cde/lib/DtSvc/DtUtil2/UserMsg.h |4 +--
 cde/programs/dtsession/SmCommun.c   |1 +
 cde/programs/dtsession/SmConMgmt.c  |2 +-
 cde/programs/dtsession/SmGlobals.c  |   50 +--
 cde/programs/dtsession/SmLock.c |1 +
 cde/programs/dtsession/SmMain.c |1 +
 cde/programs/dtsession/SmProp.c |1 +
 cde/programs/dtsession/SmRestore.c  |   36 ++---
 cde/programs/dtsession/SmRestore.h  |1 +
 cde/programs/dtsession/SmSave.c |   12 +
 cde/programs/dtsession/SmScreen.c   |1 +
 cde/programs/dtsession/SmUI.c   |   11 +---
 cde/programs/dtsession/SmWindow.c   |1 +
 cde/programs/dtsession/SrvFile_io.h |5 +++-
 cde/programs/dtsession/SrvPalette.c |   19 -
 15 files changed, 86 insertions(+), 60 deletions(-)

diff --git a/cde/lib/DtSvc/DtUtil2/UserMsg.h b/cde/lib/DtSvc/DtUtil2/UserMsg.h
index 097dd59..54c2f78 100644
--- a/cde/lib/DtSvc/DtUtil2/UserMsg.h
+++ b/cde/lib/DtSvc/DtUtil2/UserMsg.h
@@ -79,14 +79,14 @@ extern void _DtSimpleErrnoError(
 
 #define DtProgName  XeProgName
 
-extern _DtPrintDefaultError(
+extern int _DtPrintDefaultError(
 Display *dpy,
 XErrorEvent *event,
 char *msg );
 
 #define _DTPRINTDEFAULTERROR_BUFSIZE 1024
 
-extern _DtPrintDefaultErrorSafe(
+extern int _DtPrintDefaultErrorSafe(
 Display *dpy,
 XErrorEvent *event,
 char *msg,
diff --git a/cde/programs/dtsession/SmCommun.c 
b/cde/programs/dtsession/SmCommun.c
index 9446d47..c86c0c1 100644
--- a/cde/programs/dtsession/SmCommun.c
+++ b/cde/programs/dtsession/SmCommun.c
@@ -58,6 +58,7 @@
 #include 
 #endif /* USE_X11SSEXT */
 #include 
+#include 
 #include 
 #include 
 #include 
diff --git a/cde/programs/dtsession/SmConMgmt.c 
b/cde/programs/dtsession/SmConMgmt.c
index 23ed57c..cda6055 100644
--- a/cde/programs/dtsession/SmConMgmt.c
+++ b/cde/programs/dtsession/SmConMgmt.c
@@ -162,7 +162,7 @@ GetMemoryUtilization(void)
 {
 #if !defined(linux)
 static int init = 0;
-static kmem;
+static int kmem;
 #if !defined(SVR4) && !defined(sco) && !defined(hpV4) && !defined(_POWER) && 
!defined (__osf__) && !defined(CSRG_BASED)
 extern void nlist();
 #endif
diff --git a/cde/programs/dtsession/SmGlobals.c 
b/cde/programs/dtsession/SmGlobals.c
index 4bda658..e721d19 100644
--- a/cde/programs/dtsession/SmGlobals.c
+++ b/cde/programs/dtsession/SmGlobals.c
@@ -714,9 +714,9 @@ SetRestorePath(
  */
 if(smGD.compatMode == True)
 {
-   smGD.clientPath[0] = NULL;
-   smGD.resourcePath[0] = NULL;
-   smGD.settingPath[0] = NULL;
+   smGD.clientPath[0] = 0;
+   smGD.resourcePath[0] = 0;
+   smGD.settingPath[0] = 0;
smGD.sessionType = DEFAULT_SESSION;
smGD.restoreSession = NULL;
 return(0);
@@ -836,7 +836,7 @@ SetSysDefaults( void )
  */
 strcpy(smGD.resourcePath, "");
 strcpy(smGD.clientPath, "");
-smGD.settingPath[0] = NULL;
+smGD.settingPath[0] = 0;
 smGD.sessionType = DEFAULT_SESSION;
 smGD.restoreSession = (char *) SM_SYSTEM_DIRECTORY;
 
@@ -845,7 +845,7 @@ SetSysDefaults( void )
 {
 strcat(smGD.clientPath, "/");
 strncat(smGD.clientPath, langSpec, MAXPATHLEN-2);
-smGD.clientPath[MAXPATHLEN-1];
+smGD.clientPath[MAXPATHLEN-1] = 0;
 }
 
 strcat(smGD.clientPath, "/");
@@ -865,8 +865,8 @@ SetSysDefaults( void )
 PrintErrnoError(DtError, GETMESSAGE(4, 2,
 "No defaults files exist.  "
 "No applications will be restarted."));
-smGD.clientPath[0] = NULL;
-smGD.resourcePath[0] = NULL;
+smGD.clientPath[0] = 0;
+smGD.resourcePath[0] = 0;
 }
 else
 {
@@ -881,8 +881,8 @@ SetSysDefaults( void )
 PrintErrnoError(DtError, GETMESSAGE(4, 3,
 "No defaults files exist.  "
 "No applications will be restarted."));
-smGD.clientPath[0] = NULL;
-smGD.resourcePath[0] = NULL;
+smGD.clientPath[0] = 0;
+smGD.resourcePath[0] = 0;
 }
 }
 }
@@ -934,13 +934,13 @@ SetResSet( void )
 status = stat(smGD.resourcePath, &buf);
 if(status == -1)
 {
-smGD.resourcePath[0] = NULL;
+smGD.resourcePath[0] = 0;
 }
 
 status = stat(smGD.settingPath, &buf);
 if(status == -1)
 {
-smGD.settingPath[0] = NULL;
+smGD.settingPath[0] = 0;
 }
 return(0);
 }
@@ -1039,9 +1039,9 @@ SetSavePath(
 if(smGD.savePath == NULL)
 {
 PrintErrnoError(DtError, smNLS.cantCreateDirsString);
-smGD.clientPath[0] = NULL;
-smGD.settingPath[0] = NULL;
-smGD.resourcePath[0] = NULL;
+smGD.clientPath[0] = 0;
+smGD.settingPath[0] = 0;
+smGD.resourcePath[0] = 0;
 return(-1);
 }
 
@@ -11

[cdesktopenv-devel] dtsession listening on IPv6?

2012-08-15 Thread Marcin Cieslak
Hello,

My 64-bit FreeBSD dtsession still does not work as it should.
dtsession hangs after startup - it launches dtfile, dtwm and dthelp
but no application appears.

dtfile can communicate to ttsession (there are some 
messages shown when running ttsession -t)

During my troubleshooting I noticed the following
output from sockstat(8) utility:

desktop  dtsession  6475  3  stream -> /tmp/.X11-unix/X0
desktop  dtsession  6475  4  stream -> /tmp/.X11-unix/X0
desktop  dtsession  6475  5  tcp6   *:56861   *:*
desktop  dtsession  6475  6  tcp4   *:26080   *:*
desktop  dtsession  6475  7  stream /tmp/.ICE-unix/6475
desktop  dtsession  6475  8  stream -> /tmp/.X11-unix/X0
desktop  dtsession  6475  9  tcp4   127.0.0.1:12516   127.0.0.1:27029
desktop  dtsession  6475  10 tcp4   *:55726   *:*
desktop  dtsession  6475  11 tcp4   127.0.0.1:55726   127.0.0.1:18337
desktop  dtsession  6475  12 stream /tmp/.ICE-unix/6475

127.0.0.1:27029 seems to be a ttsession connection

of course, having nice IPv6 support would be a nice thing
in the future, but isn't is strange? (FreeBSD has support
for dual IPv6+IPv4 sockets but they are marked as tcp46
normally).

Where is this connection coming from? I supposed it's created
by some other library (like one of the X libraries).

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] [PATCH] Process SGML and man files

2012-08-15 Thread Marcin Cieslak
On Wed, 15 Aug 2012, Jon Trulson wrote:

> On Wed, 15 Aug 2012, Ulrich Wilkens wrote:
> 
> > Hmm, I tested the patch on Bsd and linux, on 32 and 64 bit and i didn't got 
> > this error.
> > But anyway, here's the patch again with the last part changed. Now nsgmls 
> > is 
> > compiled with -fpermissive like it's done under linux. You have to patch 
> > here, otherwise you get an error "duplicate explicit instantiation ..." on 
> > 32bit. Now this error is turned into just a warning.
> >
> 
> Applied.

Thanks, works for me. On my 64-bit system I get no warning (as you say)
and nsgmls compiles fine. 

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] Provide basic font aliases for FreeBSD

2012-08-15 Thread Marcin Cieslak
The following font families
(or their aliases) will be used:

-adobe-courier-bold-o-normal--*-
-adobe-courier-bold-r-normal--*-
-adobe-courier-medium-o-normal--*-
-adobe-courier-medium-r-normal--*-
-adobe-helvetica-bold-o-normal--*-
-adobe-helvetica-bold-r-normal--*-
-adobe-helvetica-medium-o-normal--*-
-adobe-helvetica-medium-r-normal--*-
-adobe-symbol-medium-r-normal--*-
-adobe-times-bold-i-normal--*-
-adobe-times-bold-r-normal--*-
-adobe-times-medium-i-normal--*-
-adobe-times-medium-r-normal--*-
-b&h-lucidasans-medium-r-normal-sans-*-
-b&h-lucidatypewriter-bold-r-normal-sans-*-
-b&h-lucidatypewriter-medium-r-normal-sans-*-

The files will be installed in

/usr/dt/config/xfonts/C

This directory should be added to the
X server font path:

   xset fp+ /usr/dt/config/xfonts/C

and/or via

   FontPath "/usr/dt/config/xfonts/C"

in the "Files" section of the xorg.conf file.
---
 cde/.gitignore |5 +
 cde/databases/CDE-FONTS.udb|   16 +++
 cde/programs/fontaliases/Imakefile |2 +
 cde/programs/fontaliases/freebsd/C/Imakefile   |3 +
 cde/programs/fontaliases/freebsd/C/fonts.alias |  178 
 cde/programs/fontaliases/freebsd/Imakefile |8 ++
 6 files changed, 212 insertions(+)
 create mode 100644 cde/programs/fontaliases/freebsd/C/Imakefile
 create mode 100644 cde/programs/fontaliases/freebsd/C/fonts.alias
 create mode 100644 cde/programs/fontaliases/freebsd/Imakefile

diff --git a/cde/.gitignore b/cde/.gitignore
index fa55ac5..6b4a79a 100644
--- a/cde/.gitignore
+++ b/cde/.gitignore
@@ -1057,6 +1057,11 @@ programs/dtwm/Dtwm.defs
 programs/dtwm/dtfplist
 programs/dtwm/sys.dtwmrc
 
+# programs/fontaliases
+programs/fontaliases/freebsd/C/dtinfo.bdf
+programs/fontaliases/freebsd/C/dtinfo.pcf
+programs/fontaliases/freebsd/C/fonts.dir
+
 # programs/ksh93
 programs/dtksh/ksh93/man/man1/sh.1
 programs/dtksh/ksh93/man/man3/nval.3
diff --git a/cde/databases/CDE-FONTS.udb b/cde/databases/CDE-FONTS.udb
index 1cd029b..72514c8 100644
--- a/cde/databases/CDE-FONTS.udb
+++ b/cde/databases/CDE-FONTS.udb
@@ -1091,3 +1091,19 @@ programs/fontaliases/linux/ja_JP/fonts.dir
 { openbsd
install_target = /usr/local/dt/config/xfonts/ja_JP/fonts.dir
 }
+
+#
+# for FreeBSD
+#
+programs/fontaliases/freebsd/C/fonts.alias
+{ freebsd
+   install_target = /usr/dt/config/xfonts/C/fonts.alias
+}
+programs/fontaliases/freebsd/C/fonts.dir
+{ freebsd
+   install_target = /usr/dt/config/xfonts/C/fonts.dir
+}
+programs/fontaliases/freebsd/C/dtinfo.pcf
+{ freebsd
+   install_target = /usr/dt/config/xfonts/C/dtinfo.pcf
+}
diff --git a/cde/programs/fontaliases/Imakefile 
b/cde/programs/fontaliases/Imakefile
index fb80bd0..68fd3ce 100644
--- a/cde/programs/fontaliases/Imakefile
+++ b/cde/programs/fontaliases/Imakefile
@@ -10,6 +10,8 @@ SUBDIRS = hp
 SUBDIRS = ibm
 #elif defined(SunArchitecture)
 SUBDIRS = sun
+#elif defined(FreeBSDArchitecture)
+SUBDIRS = freebsd
 #elif defined(USLArchitecture)
 SUBDIRS = novell
 #elif defined(UXPArchitecture)
diff --git a/cde/programs/fontaliases/freebsd/C/Imakefile 
b/cde/programs/fontaliases/freebsd/C/Imakefile
new file mode 100644
index 000..45f6866
--- /dev/null
+++ b/cde/programs/fontaliases/freebsd/C/Imakefile
@@ -0,0 +1,3 @@
+XCOMM $XConsortium: Imakefile /main/3 1996/09/13 17:50:44 drk $
+
+#include "../../bdf/fonts.tmpl"
diff --git a/cde/programs/fontaliases/freebsd/C/fonts.alias 
b/cde/programs/fontaliases/freebsd/C/fonts.alias
new file mode 100644
index 000..6f71e23
--- /dev/null
+++ b/cde/programs/fontaliases/freebsd/C/fonts.alias
@@ -0,0 +1,178 @@
+! $XConsortium: fonts.alias /main/3 1996/10/29 17:06:58 drk $
+"-dt-application-bold-i-normal-serif-11-80-100-100-m-60-iso8859-1" 
"-adobe-courier-bold-o-normal--11-80-100-100-m-60-iso8859-1"
+"-dt-application-bold-i-normal-serif-14-100-100-100-m-90-iso8859-1" 
"-adobe-courier-bold-o-normal--14-100-100-100-m-90-iso8859-1"
+"-dt-application-bold-i-normal-serif-17-120-100-100-m-100-iso8859-1" 
"-adobe-courier-bold-o-normal--17-120-100-100-m-100-iso8859-1"
+"-dt-application-bold-i-normal-serif-20-140-100-100-m-110-iso8859-1" 
"-adobe-courier-bold-o-normal--20-140-100-100-m-110-iso8859-1"
+"-dt-application-bold-i-normal-serif-25-180-100-100-m-150-iso8859-1" 
"-adobe-courier-bold-o-normal--25-180-100-100-m-150-iso8859-1"
+"-dt-application-bold-i-normal-serif-34-240-100-100-m-200-iso8859-1" 
"-adobe-courier-bold-o-normal--34-240-100-100-m-200-iso8859-1"
+"-dt-application-bold-i-normal-serif-8-80-75-75-m-50-iso8859-1" 
"-adobe-courier-bold-o-normal--8-80-75-75-m-50-iso8859-1"
+"-dt-application-bold-i-normal-serif-10-100-75-75-m-60-iso8859-1" 
"-adobe-courier-bold-o-normal--10-100-75-75-m-60-iso8859-1"
+"-dt-application-bold-i-normal-serif-12-120-75-75-m-70-iso8859-1" 
"-adobe-courier-bold-o-normal--12-120-75-75-m-70-iso8859-1"
+"-dt-application-bold-i-normal-serif-14-140-75-75-m-90-iso8859-1" 
"-adobe-courier-bold-o-normal--14-140-75-

Re: [cdesktopenv-devel] [PATCH] Process SGML and man files

2012-08-15 Thread Marcin Cieslak
On Thu, 16 Aug 2012, Ulrich Wilkens wrote:

> Let me make a remark:
> 
> In order to compile the documents dtdocbook also needs the external 
> program mkcatdefs. This is part of openmotif, but unfortunately it's not 
> compiled by default. So I stepped into the openmotif code, compiled it 
> manually and copied it to cde/imports/motif/localized/util .
> So far as I can see this is also an issue for linux. mkcatdefs is 
> missing there too.
> Of course we should have a better solution for it.

Here is what I get with nsgmls:

making all in doc/C/help...
LANG=C SGML_SEARCH_PATH=".:.." 
LD_LIBRARY_PATH=../../../exports/lib:../../../imports/motif/lib:../../../imports/x11/lib
 DTLCXSEARCHPATH=../../../lib/DtHelp /usr/local/bin/ksh93 
../../../programs/dtdocbook/doc2sdl/dtdocbook -t 
../../../programs/dtdocbook/doc2sdl -H 
../../../programs/dthelp/parser/pass2/htag2/dthelp_htag2 -I 
../../../programs/dtdocbook/instant/instant -L 
../../../programs/dtdocbook/xlate_locale/xlate_locale -S 
../../../programs/nsgmls/nsgmls  -o ../help-sdl/Appmanager.sdl 
Appmanager/book.sgm
dtdocbook fatal error:
Error processing book.esis by instant
*** Error code 1

Stop in /.amd_mnt/radziecki/a/icybox/tmp/cdesktopenv/cde/doc/C/help.


Manually compiled mkcatdefs works fine for me (it is used
to process message catalogs in programs/localized).

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [EARLY PATCH] FreeBSD: Early support for the installer

2012-08-15 Thread Marcin Cieslak
This is work in progress - please
do not merge into master yet.

Note to users: please check
if you are affected by awk bug
in udbParseLib.awk if you can.

Just remove this line:

DUMMY = $0

and run "make clean all" in "databases"
and see if generated files are small
and contain only the error message.

---
 cde/.gitignore |   15 +
 cde/admin/IntegTools/dbTools/installCDE.src|9 +-
 cde/admin/IntegTools/dbTools/udbParseLib.awk   |7 +
 cde/admin/IntegTools/post_install/Imakefile|1 +
 .../IntegTools/post_install/freebsd/Imakefile  |   65 
 .../IntegTools/post_install/freebsd/configMin.src  |  271 
 .../IntegTools/post_install/freebsd/configRun.src  |  336 
 .../post_install/freebsd/configShlibs.src  |  109 +++
 .../IntegTools/post_install/freebsd/configTT.src   |  166 ++
 cde/config/cf/bsdLib.rules |6 +-
 cde/databases/CDE-SHLIBS.src   |  127 
 cde/programs/Imakefile |   34 +-
 12 files changed, 1133 insertions(+), 13 deletions(-)
 create mode 100644 cde/admin/IntegTools/post_install/freebsd/Imakefile
 create mode 100755 cde/admin/IntegTools/post_install/freebsd/configMin.src
 create mode 100755 cde/admin/IntegTools/post_install/freebsd/configRun.src
 create mode 100755 cde/admin/IntegTools/post_install/freebsd/configShlibs.src
 create mode 100755 cde/admin/IntegTools/post_install/freebsd/configTT.src

diff --git a/cde/.gitignore b/cde/.gitignore
index 6b4a79a..63a6bc7 100644
--- a/cde/.gitignore
+++ b/cde/.gitignore
@@ -25,6 +25,19 @@ admin/IntegTools/post_install/*.list
 admin/IntegTools/post_install/*.lst
 admin/IntegTools/post_install/linux
 
+admin/IntegTools/post_install/freebsd/CDE-MIN.list
+admin/IntegTools/post_install/freebsd/CDE-MIN.lst
+admin/IntegTools/post_install/freebsd/CDE-RUN.list
+admin/IntegTools/post_install/freebsd/CDE-RUN.lst
+admin/IntegTools/post_install/freebsd/CDE-SHLIBS.list
+admin/IntegTools/post_install/freebsd/CDE-SHLIBS.lst
+admin/IntegTools/post_install/freebsd/CDE-TT.list
+admin/IntegTools/post_install/freebsd/CDE-TT.lst
+admin/IntegTools/post_install/freebsd/configMin
+admin/IntegTools/post_install/freebsd/configRun
+admin/IntegTools/post_install/freebsd/configShlibs
+admin/IntegTools/post_install/freebsd/configTT
+
 admin/IntegTools/post_install/configDemos
 admin/IntegTools/post_install/configFonts
 admin/IntegTools/post_install/configHelp
@@ -279,6 +292,8 @@ programs/dtappbuilder/src/libABil/bil_parse.h
 config/imake/Makefile.proto
 
 # doc 
+doc/C/help/book.log
+doc/C/help/book.out.idx
 doc/C/help-sdl/
 doc/C/m-guides/
 doc/C/man/man1/
diff --git a/cde/admin/IntegTools/dbTools/installCDE.src 
b/cde/admin/IntegTools/dbTools/installCDE.src
index 9c90278..b969240 100755
--- a/cde/admin/IntegTools/dbTools/installCDE.src
+++ b/cde/admin/IntegTools/dbTools/installCDE.src
@@ -51,7 +51,7 @@ REVISION="$(echo "$Revision: /main/20 $" | awk '{print $2}')"
 
 Log()
 {
-  echo "$1" | tee -a $LOGFILE
+  /bin/echo "$1" | tee -a $LOGFILE
 }
 
 MakeTarball()
@@ -240,6 +240,9 @@ RestartInetd()
   elif [ "$PLATFORM" = "openbsd" ]
   then
 true
+  elif [ "$PLATFORM" = "freebsd" ]
+  then
+/etc/rc.d/inetd start
   else
 #ifdef hpV4
 /usr/sbin/inetd 
@@ -543,6 +546,10 @@ XCOMM
   then
 PLATFORM="linux"
 PLATFORM_SCRIPT_DIR=""
+  elif [ $BUILDSYSTEM = "FreeBSD" ];
+  then
+PLATFORM="freebsd"
+PLATFORM_SCRIPT_DIR="freebsd"
   elif [ $BUILDSYSTEM = "OpenBSD" ];
   then
 PLATFORM="openbsd"
diff --git a/cde/admin/IntegTools/dbTools/udbParseLib.awk 
b/cde/admin/IntegTools/dbTools/udbParseLib.awk
index a10af39..cf7faab 100644
--- a/cde/admin/IntegTools/dbTools/udbParseLib.awk
+++ b/cde/admin/IntegTools/dbTools/udbParseLib.awk
@@ -268,6 +268,13 @@ function tokenize() {
printf(" ") > DeBugFile
print "Entering function tokenize:" > DeBugFile
}
+   # Workaround for a strange awk bug, seen on FreeBSD
+   # and results in .db files generated with
+   #   Syntax ERROR line: 10 of file: CDE-INC.udb
+   #   Missing initial {
+   #
+   DUMMY = $0
+
# Skip blank/comment lines
while ( NF == 0 || $0 ~ /^[ ]*#/  ) {
if ( (getline) <= 0 ) {
diff --git a/cde/admin/IntegTools/post_install/Imakefile 
b/cde/admin/IntegTools/post_install/Imakefile
index 3b6bc43..b0dcbf8 100644
--- a/cde/admin/IntegTools/post_install/Imakefile
+++ b/cde/admin/IntegTools/post_install/Imakefile
@@ -25,6 +25,7 @@ PLATFORM = openbsd
 #endif
 #ifdef FreeBSDArchitecture
 PLATFORM = freebsd
+SUBDIRS = freebsd
 #endif
 #ifdef RsArchitecture
 PLATFORM = aix
diff --git a/cde/admin/IntegTools/post_install/freebsd/Imakefile 
b/cde/admin/IntegTools/post_install/freebsd/Imakefile
new file mode 100644
index 000..7bf6c55
--- /dev/null
+++ b/cde/admin/IntegTools/post_install/freebsd/I

Re: [cdesktopenv-devel] [PATCH] Use $(KORNSHELL) for dtksh as well

2012-08-15 Thread Marcin Cieslak
On Thu, 16 Aug 2012, Ulrich Wilkens wrote:

> On 08/15/12 04:39, Jon Trulson wrote:
> > On Wed, 15 Aug 2012, Marcin Cieslak wrote:
> >
> > Applied.
> >
> 
> 
> This patch fails on FreeBSD 9.0 i3386 with:
> 
> ./cdesktopenv-code/cde/programs/dtksh/ksh93/lib/libast.a(hashalloc.o): 
> In function `hashalloc':
> hashalloc.c:(.text+0x1f9): undefined reference to `__va_copy'
> hashalloc.c:(.text+0x367): undefined reference to `__va_copy'
> hashalloc.c:(.text+0x383): undefined reference to `__va_copy'

I have some idea how to fix this. In the original code
__va_copy was #ifdef'd for PPC; otherwise just simple scalar
move was used. I think we can restore this scalar operation
for platforms not having __va_copy; in case pre-standard
va_copy does not work.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] Dtfile segfault (linux amd64)

2012-08-16 Thread Marcin Cieslak
On Thu, 16 Aug 2012, Lennert Van Alboom wrote:

> Done; attached the (new) gdb and strace logs, as well as the valgrind log.
> Hope
> it sheds some light :-) thanks for helping.

Thanks, I think I have a similar crash in dtpad. Also with CreateMenu.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] Build missing Xm.cat Mrm.cat Uil.cat for LANG=C

2012-08-16 Thread Marcin Cieslak
We need to use mkcatdefs to build those.

mkcatdefs needs to be built from the open motif
source tree (localized/util/mkcatdefs.c)
and installed as:

cde/imports/motif/localized/util/mkcatdefs
---
 cde/programs/localized/templates/msg.C.tmpl |7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/cde/programs/localized/templates/msg.C.tmpl 
b/cde/programs/localized/templates/msg.C.tmpl
index eeb4fc9..61f144a 100644
--- a/cde/programs/localized/templates/msg.C.tmpl
+++ b/cde/programs/localized/templates/msg.C.tmpl
@@ -68,9 +68,10 @@ all:: $(OBJS)
 clean::
$(RM) $(OBJS)
 
-LinkFile(Xm.msg,$(MLOCSRC)/C/msg/Xm.msg)
-LinkFile(Mrm.msg,$(MLOCSRC)/C/msg/Mrm.msg)
-LinkFile(Uil.msg,$(MLOCSRC)/C/msg/Uil.msg)
+RandomMotifMessageCatalogRule(Xm)
+RandomMotifMessageCatalogRule(Mrm)
+RandomMotifMessageCatalogRule(Uil)
+
 LinkFile(DtHelp.msg,$(CDELIBSRC)/DtHelp/DtHelp.msg)
 LinkFile(fmt_tbl.msg,$(CDELIBSRC)/DtHelp/fmt_tbl.msg)
 LinkFile(DtMail.msg,$(CDESRC)/dtmail/dtmail/DtMail.msg)
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] dtsession/DtSvc corrupting environment?

2012-08-16 Thread Marcin Cieslak
Hello,

After enabling session log in .dtprofile:

export dtstart_sessionlogfile="somefile

I noticed that applications complain about
broken environment passed to them:

dthelpview: environment corrupt; missing value for `yA
^[[?1;2c

Indeed, after additional debug logging it seems
like space allocated for env variables

XFILESEARCHPATH
NLSPATH
XMICONBMSEARCHPATH
XMICONSEARCHPATH

got released and is reused:

Environment: environ=0x80543f300
Environment: After adding envVal[0,p=0x80543f300]: *p=0x805597c00 [DISPLAY=:1.0]
Environment: After adding envVal[1,p=0x80543f308]: *p=0x80540fa80 
[SESSION_MANAGER=local/aaabbbccc.saper.info:/tmp/.ICE-unix/29696,inet6/aaabbbccc.saper.info:47459,inet/aaabbbccc.saper.info:54707]
Environment: After adding envVal[2,p=0x80543f310]: *p=0x805412180 [`yA^E^H]
Environment: After adding envVal[3,p=0x80543f318]: *p=0x8054180b0 [<9F>"^P^B^H]
Environment: After adding envVal[4,p=0x80543f320]: *p=0x8054088c0 []
Environment: After adding envVal[5,p=0x80543f328]: *p=0x805408540 []
^[[?1;2cEnvironment: After adding envVal[6,p=0x80543f330]: *p=0x80540f240 
[PATH=/sbin:/bin:/usr/sbin:/usr/dt/bin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/home/saper/bin:/usr/home/saper/bin:/usr/home/saper/bin:/sbin:/usr/sbin]


Previously, the addresses 0x805412180, 0x8054180b0, 0x8054088c0, 0x805408540
were pointing at other variables:

Environment: environ=0x80543f300
Environment: SmRestore.c ForkWM() before 
DT_ENV_RESTORE_PRE_DT[0,p=0x80543f300]: *p=0x80540fa80 
[SESSION_MANAGER=local/aaabbbccc.saper.info:/tmp/.ICE-unix/296
96,inet6/aaabbbccc.saper.info:47459,inet/aaabbbccc.saper.info:54707]
Environment: SmRestore.c ForkWM() before 
DT_ENV_RESTORE_PRE_DT[1,p=0x80543f308]: *p=0x805412180 
[XFILESEARCHPATH=/etc/dt/app-defaults/%L/%N:/etc/dt/app-defaul
ts/C/%N:/usr/dt/app-defaults/%L/%N:/usr/dt/app-defaults/C/%N]
Environment: SmRestore.c ForkWM() before 
DT_ENV_RESTORE_PRE_DT[2,p=0x80543f310]: *p=0x8054180b0 
[NLSPATH=/usr/dt/lib/nls/msg/%L/%N.cat:/usr/dt/lib/nls/msg/C/%
N.cat]
Environment: SmRestore.c ForkWM() before 
DT_ENV_RESTORE_PRE_DT[3,p=0x80543f318]: *p=0x8054088c0 
[XMICONBMSEARCHPATH=/etc/dt/appconfig/icons/%L/%B%M.bm:/etc/dt
/appconfig/icons/%L/%B%M.pm:/etc/dt/appconfig/icons/%L/%B:/etc/dt/appconfig/icons/C/%B%M.bm:/etc/dt/appconfig/icons/C/%B%M.pm:/etc/dt/appconfig/icons/C/%B:/us
r/dt/appconfig/icons/%L/%B%M.bm:/usr/dt/appconfig/icons/%L/%B%M.pm:/usr/dt/appconfig/icons/%L/%B:/usr/dt/appconfig/icons/C/%B%M.bm:/usr/dt/appconfig/icons/C/%
B%M.pm:/usr/dt/appconfig/icons/C/%B]
Environment: SmRestore.c ForkWM() before 
DT_ENV_RESTORE_PRE_DT[4,p=0x80543f320]: *p=0x805408540 
[XMICONSEARCHPATH=/etc/dt/appconfig/icons/%L/%B%M.pm:/etc/dt/a
ppconfig/icons/%L/%B%M.bm:/etc/dt/appconfig/icons/%L/%B:/etc/dt/appconfig/icons/C/%B%M.pm:/etc/dt/appconfig/icons/C/%B%M.bm:/etc/dt/appconfig/icons/C/%B:/usr/
dt/appconfig/icons/%L/%B%M.pm:/usr/dt/appconfig/icons/%L/%B%M.bm:/usr/dt/appconfig/icons/%L/%B:/usr/dt/appconfig/icons/C/%B%M.pm:/usr/dt/appconfig/icons/C/%B%
M.bm:/usr/dt/appconfig/icons/C/%B]
Environment: SmRestore.c ForkWM() before 
DT_ENV_RESTORE_PRE_DT[5,p=0x80543f328]: *p=0x80540f240 
[PATH=/sbin:/bin:/usr/sbin:/usr/dt/bin:/usr/bin:/usr/games:/us
r/local/sbin:/usr/local/bin:/usr/home/saper/bin:/usr/home/saper/bin:/usr/home/saper/bin:/sbin:/usr/sbin]

Anyone seeing something similar like this?

I suspect some problems with lib/DtSvc/DtUtil2/EnvControl.c,
but I am not yet sure.

Running FreeBSD 9.0/amd64

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] [PATCH] Build missing Xm.cat Mrm.cat Uil.cat for LANG=C

2012-08-17 Thread Marcin Cieslak
On Thu, 16 Aug 2012, Jon Trulson wrote:

> On Fri, 17 Aug 2012, Marcin Cieslak wrote:
> 
> > We need to use mkcatdefs to build those.
> > 
> > mkcatdefs needs to be built from the open motif
> > source tree (localized/util/mkcatdefs.c)
> > and installed as:
> > 
> > cde/imports/motif/localized/util/mkcatdefs
> 
> If we had a mkcatdefs already included in cde and building, would this
> patch be neccessary?  I'm thinking not..

Yes, it is necessary because without the patch "mkcatdefs"
is not invoked at all in the "C" locale (it is so for German,
 French, etc - those locales get their Mrm.cat, Uil.cat files).

What happens without the patch is that "gencat" utility
is invoked on the .msg file and it fails because it cannot
parse symbolic set names:

$set MS_Mrm

gencat insists on having numbers here:

ln -s ../../../../imports/motif/localized/C/msg/Xm.msg Xm.msg
/usr/local/bin/ksh93 ../../../../programs/localized/util/makeMessCat  Xm.cat C
Running gencat on  ./Xm.vmsg with LANG set to C 
gencat: neither blank line nor start of a message id on line 28
 
^
gencat: neither blank line nor start of a message id on line 29
 
^
gencat: setId's must be greater than zero on line 31
$set MS_ArrowButton
chmod: ./Xm.cat: No such file or directory
 Removing  ./Xm.vmsg 

I am not a locale expert but I understand that we
still need .cat files installed even for C locale -
the installer does so for CDE programs as well
as it attempts to install those three
files as well.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] New dependency in linux/configRun?

2012-08-17 Thread Marcin Cieslak
On Fri, 17 Aug 2012, Marc Balmer wrote:

> Since today, the script in linux/configRun calls a binary lpstat, which
> is not installed on my Debian squeeze 32 bit system.
> 
> I did not find out which package does provide lpstat, can someone
> enlighten me, please?

There is a bunch of tools and a library related to printing:

lib/DtPrint
programs/dtprintinfo -> dtprintinfo
programs/dtprintegrate -> dtlp dtlpsetup

inside there is a system-dependent detection code
to find out which printing system to use (AT&T lpstat vs. 
BSD lpq).  The code is mostly in here:

  programs/dtprintinfo/objects/PrintObj/

Upon installation

  LANG=C /usr/dt/bin/dtprintinfo -populate

is invoked as root - this is where the lpstat
call comes from.

I have cups installed so I do have "lpstat"
installed.

Maybe support for your printing system should
be added to PrintObj interface. 

If you intend not to have any, maybe a dummy
system could be implemented not to give any
printer connections nor queues. 

//Marcin


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] More dtcreate fixes

2012-08-17 Thread Marcin Cieslak
On Thu, 16 Aug 2012, Frederic Koehler wrote:

> Fix some more obvious bugs; unfortunately, they don't seem to be behind
> dtcreate's current brokenness.
> 

I would be careful here:

@@ -278,6 +278,7 @@ charlinebuf[1024],**wordPairs,**execstr;
 {
 ActionDataptr->pszCmd = execstr[0];
 ActionDataptr->pszPrompt = execstr[1];
+free(execstr);
 }

I am not sure execstr (returned by ProcessExecString) is no heap.

It returns a pointer to internal automatic variable :/

Maybe this whole thing should be changed to use caller-supplied
char *[3] for output?


//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] amd64 segfaults interfacing with libXm

2012-08-17 Thread Marcin Cieslak
On Fri, 17 Aug 2012, Lennert Van Alboom wrote:

> Dtmail segfaults when configuring it for IMAP mail server retrieval.

> Any help is appreciated.

I have traced and fixed my problem with dtpad crash on startup which
is I think similar issue to what you reported before and maybe now.


Some of the functions in libDtWidget (and I suppose other libraries to)
do not include proper Motif headers.

For example (what crashed by dtpad), lib/DtWidget/Editor.c 
was missing these:

#include 
#include 
#include 
#include 
#include 
#include 

With 64 bit it may cause crash when interfacing with libXm
because (Widget) pointer returned is assumed to be (int)
when there is function prototype and therefore it gets
truncated to 32 bit.

My dtpad crashed because in Editor.c:4792

M_status_lineLabel(parent) = (Widget) XmCreateLabelGadget( container, 
"lineLabel", al, ac);

The Widget pointer was truncated and it caused the crash later
in the code.

So the bad news is unless most of the compiler warnings are fixed
we will have trouble running some code on 64 bit systems.

I have fixed most of the DtWidget problems, once complete will post
the patch; but there are still other libraries waiting.

//Marcin


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] dtsession/DtSvc corrupting environment?

2012-08-17 Thread Marcin Cieslak
On Thu, 16 Aug 2012, Jon Trulson wrote:

> On Thu, 16 Aug 2012, Jon Trulson wrote:
> 
> > On Thu, 16 Aug 2012, Marcin Cieslak wrote:
> > 
> > > Hello,
> > > 
> > > After enabling session log in .dtprofile:
> > > 
> [...]
> > 
> > Looking at the XiG source, seems I ran into and fixed this problem for
> > both linux and CSRG_BASED, I added some specific code to
> > _DtEnvRemove() at least.  I'll post a patch with these fixes so maybe
> > you can try it.
> > 
> > 
> 
> Can you try the attached patch and let me know?

Yes, we have setenv() and friends the warning goes away. Thanks!

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] Action "ExitSession" not found

2012-08-17 Thread Marcin Cieslak
Slowly by dtsession is getting somewhere
on my FreeBSD/amd64.

Now I get

Action "Dthelpgen_delay" not found

and

Action "ExitSession" not found

Also front panel does not start.

I could start dtterm/dtpad by hand
and even dtstyle works.

Any ideas where to search for the
missing actions?

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] Action "ExitSession" not found

2012-08-18 Thread Marcin Cieslak
On Fri, 17 Aug 2012, Jon Trulson wrote:

> On Fri, 17 Aug 2012, Marcin Cieslak wrote:
> 
> > Any ideas where to search for the
> > missing actions?
> > 
> 
> What do you get when you run 'dttypes'?  I believe these are installed
> in appconfig/types/$LANG/ ...

dttypes does not yet compile because it needs regexp.h style regular
expression handling while I have regex.h

But $LANG was a good hint - setting LANG=C before starting the X server
(I'm using pl_PL.UTF-8 normally) make the front panel to appear and
"dtaction ExitSession" worked (as well as normal logout).

Thanks!

//Marcin


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] keyboard and xorg

2012-08-18 Thread Marcin Cieslak
On Sat, 18 Aug 2012, Antonis Tsolomitis wrote:

> 
> Hello to all.
> 
> I do not know..., is this the right list to report bugs? Or there will
> be another service for bugs?

Yes, we just started :)

> setxkbmap -layout us,gr -option grp:alt_shift_toggle -option
> terminate:ctrl_alt_bksp -option grp_led:scroll -option eurosign:5
> -option eurosign:e -option ctrl:swapcaps

What locale are you running?
> 
> The keyboard works, so I can switch languages and write, say, in emacs.
> But when the keyboard is in gr, the window manager does not function.
> For example you can not grab a window
> from it's title bar and move it around. It does not move. If you switch
> back to us-keyboard then it works again.

How do you switch your keyboard layouts? alt+shift? Is this the same
if you run "setxbmap gr" from dtterm?

I did try the similar setup, running LANG=C with

$ setxkbmap -print
xkb_keymap {
xkb_keycodes  { include "xfree86+aliases(qwerty)"   };
xkb_types { include "complete"  };
xkb_compat{ include "complete"  };
xkb_symbols   { include 
"pc+pl+de:2+altwin(left_meta_win)+group(sclk_toggle)+ctrl(swapcaps)+compose(102)+terminate(ctrl_alt_bksp)"
  };
xkb_geometry  { include "pc(pc101)" };
};

And when I use scrolllock to switch to the German layout
everything seems fine except that German characters are
not visible for dtterm. But this is bacause of locale
 - when I start 

  env LANG=de_DE.ISO8859-1 /usr/dt/bin/dtterm 

this terminal window even display German characters properly
(except for the Euro sign of course).

> Also, I tried to use stalonetray for applets. Is there any applet for
> the keyboard? And stalonetray although configured
> to be sticky it does not show on all desktops. I guess this is a problem
> of CDE since it is sticky on other desktops, such as openbox, windowmaker.

dtwm probably implements core ICCCM window manager features [1]
and not Extended Window Manager Hints[2]. So I would not expect that
applications that try to know more about the window management
will work as expected.

You might want to try some very simple window manager
(including my favourite dwm [3]) you will see that 
stalonetray is being treated just like anyother X client.

//Marcin

[1] http://www.tronche.com/gui/x/icccm/sec-4.html#s-4
[2] http://standards.freedesktop.org/wm-spec/wm-spec-latest.html
[3] http://dwm.suckless.org/

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] keyboard and xorg

2012-08-18 Thread Marcin Cieslak
On Sat, 18 Aug 2012, Antonis Tsolomitis wrote:

> 
> >> setxkbmap -layout us,gr -option grp:alt_shift_toggle -option
> >> terminate:ctrl_alt_bksp -option grp_led:scroll -option eurosign:5
> >> -option eurosign:e -option ctrl:swapcaps
> > What locale are you running?
> 
> It does the same either in C or in el_GR.UTF-8

First, to clarify: do not run CDE with UTF-8 locale. Only 
locales listed in /usr/dt/appconfig/types/ might work.

So I would recommend testing only with LANG=C and set different
LANG only for one application to see if you can actually type
non-ASCII text.

> I just started with the latter locale and when I change keyboard to Greek,
> windows can not be moved around, can not be minimized or maximized
> can not come forward. The wm menu (left icon on any window bar) does not
> function.

OK, now I see the issue (switched to Russian). I think it's a more
general and not CDE-specific issue. I have seen the same with dwm
- in the Russian keyboard I can't switch workspaces there too.

Regarding translations: maybe we could ask IBM to donate what
they've had. I remember using different translations of CDE
for AIX and they were excellent.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] [PATCH] Provide basic font aliases for FreeBSD

2012-08-19 Thread Marcin Cieslak
On Sun, 19 Aug 2012, Ulrich Wilkens wrote:

> 
> The font -b&h-lucidasans-medium-r-normal-sans-*- doesn't seem to exist 
> on a freshly installed system with xorg port. Did you use an additional 
> port for it? Or can you replace it with another font?
> For example with -b&h-lucidabright-medium-r-normal--*- which was used on 
> the old 'CDE for FreeBSD' from Xig. ;-)

Yes I have those fonts installed:

font-adobe-100dpi-1.0.3 font-bh-75dpi-1.0.3
font-adobe-75dpi-1.0.3  font-bh-lucidatypewriter-100dpi-1.0.3
font-adobe-utopia-100dpi-1.0.4  font-bh-lucidatypewriter-75dpi-1.0.3
font-adobe-utopia-75dpi-1.0.4   font-bh-ttf-1.0.3
font-adobe-utopia-type1-1.0.4   font-bh-type1-1.0.3
font-bh-100dpi-1.0.3

Looking at the x11/xorg and x11-fonts/xorg-fonts, x11-fonts/xorg-fonts-75dpi
and x11-fonts/xorg-fonts-100dpi "meta" ports those fonts should
be installed when installing X.org, but I didn't install
the system from scratch.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] fix localized build on OpenBSD

2012-08-19 Thread Marcin Cieslak
On Sun, 19 Aug 2012, Pascal Stumpf wrote:

> See patch.


Just curious, why is this:

+ LC_CTYPE=""; \@@\
+ export LC_CTYPE; \@@\

necessary?

I build CDE having LANG=pl_PL.UTF-8 without visible issues.

//Marcin



--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] TT_ERR_PROCID with dtmail/dtpad

2012-08-19 Thread Marcin Cieslak
Seems like I have to run dtmail both setuid root
and setgid mail (with setgid only I get a well
known error), but here is something different:

After I go to Mailbox -> Mail Options and then "Apply"
I get the dialog box saying:

Action: Mailer[Error]

The request to service this action has failed for 
the following reason:

TT_ERR_PROCID The process id passed is not valid

I have a current /etc/tt/types.xdr installed.

Here's what is in the "ttsession -t" output:

tt_message_send: 
TT_CREATED TT_PROCEDURE TT_NOTICE (TT_DISCARD in TT_SESSION): 0 == TT_OK
id: 9 2.1GCJay 01 3800 1342177280 1 1 169 127.0.0.1 4
op: DtActivity_Beginning
session:01 3800 1342177280 1 1 169 127.0.0.1 4
sender: [169/10] 2.1GCJay 01 3800 1342177280 1 1 169 127.0.0.1 
4 [3808]
TT_CREATED => TT_SENT: 
TT_SENT TT_PROCEDURE TT_NOTICE (TT_DISCARD in TT_SESSION): 0 == 
TT_OK
id: 9 2.1GCJay 01 3800 1342177280 1 1 169 127.0.0.1 
4
op: DtActivity_Beginning
session:01 3800 1342177280 1 1 169 127.0.0.1 4
sender: [169/10] 2.1GCJay 01 3800 1342177280 1 1 169 
127.0.0.1 4 [3808@localhost]
Tt_message & Tt_pattern {
timestamp:  0
id: 0:2.1GCJay 01 3800 1342177280 1 1 169 127.0.0.1 
4
category:   TT_OBSERVE
classes:TT_NOTICE 
states: TT_SENT 
scopes: TT_SESSION 
sessions:   P 01 3800 1342177280 1 1 169 127.0.0.1 4 
ops:DtTypes_Reloaded DtActivity_Began 
DtActivity_Beginning 
} == 5;
Tt_message => 2.1GCJay 01 3800 1342177280 1 1 169 127.0.0.1 4 
[3808@localhost]
tt_message_send: 
TT_CREATED TT_PROCEDURE TT_REQUEST (TT_DISCARD in TT_SESSION): 0 == 
TT_OK
id: 10 2.1GCJay 01 3800 1342177280 1 1 169 127.0.0.1 4
op: Display
args:
TT_IN RFC_822_MESSAGE: "DTMAIL_INBOX\000"
session:01 3800 1342177280 1 1 169 127.0.0.1 4
sender: [169/10] 2.1GCJay 01 3800 1342177280 1 1 169 127.0.0.1 
4 [3808]
TT_CREATED => TT_SENT: 
TT_SENT TT_PROCEDURE TT_REQUEST (TT_DISCARD in TT_SESSION): 0 
== TT_OK
id: 10 2.1GCJay 01 3800 1342177280 1 1 169 
127.0.0.1 4
op: Display
args:
TT_IN RFC_822_MESSAGE: "DTMAIL_INBOX\000"
session:01 3800 1342177280 1 1 169 127.0.0.1 4
sender: [169/10] 2.1GCJay 01 3800 1342177280 1 1 169 
127.0.0.1 4 [3808@localhost]
Tt_message & ptype RFC_822_Message {
handle: session Display(in RFC_822_Message contents, in title 
docName) => start opnum=3;
} == 0; /* args*/
Tt_message & ptype RFC_822_Message {
handle: session Display(in RFC_822_Message contents) => start 
opnum=1;
} == 0; /* args*/
Tt_message & ptype DTPAD {
handle: session Display(in ALL contents, in messageID 
counterfoil, in title docName) => start opnum=4;
} == 0; /* args*/
Tt_message & ptype DTPAD {
handle: session Display(in ALL contents, in title docName) => 
start opnum=3;
} == 0; /* args*/
Tt_message & ptype DTPAD {
handle: session Display(in ALL contents, in messageID 
counterfoil) => start opnum=2;
} == 0; /* args*/
Tt_message & ptype DTPAD {
handle: session Display(in ALL contents) => start opnum=1;
} == 3;
Tt_message & ptype DT_File_Manager {
handle: session Display(in DT_NETFILE contents, in messageID 
counterfoil, in title docName) => start opnum=1004;
} == 0; /* args*/
Tt_message & ptype DT_File_Manager {
handle: session Display(in DT_NETFILE contents, in title 
docName) => start opnum=1003;
} == 0; /* args*/
Tt_message & ptype DT_File_Manager {
handle: session Display(in DT_NETFILE contents, in messageID 
counterfoil) => start opnum=1002;
} == 0; /* args*/
Tt_message & ptype DT_File_Manager {
handle: session Display(in DT_NETFILE contents) => start 
opnum=1001;
} == 0; /* args*/
Tt_message & ptype DT_File_Manager {
handle: session Display(in FILE_NAME contents, in messageID 
counterfoil, in title docName) => start opnum=4;
} == 0; /* args*/
Tt_message & ptype DT_File_Manager {
handle: session Display(in FILE_NAME contents, in title 
docName) => start opnum=3;
} == 0; /* args*/
Tt_message & ptype DT_File_Manager {
handle: session Display(in FILE_NAME contents, in messageID 
counterfoil) => start opnum=2

Re: [cdesktopenv-devel] fix localized build on OpenBSD

2012-08-19 Thread Marcin Cieslak
On Sun, 19 Aug 2012, Pascal Stumpf wrote:

> Well, LANG already gets reset to a sensible value.  If it does indeed
> work on FreeBSD with LC_CTYPE set, then this is probably an OS-dependent
> problem.

No, I do not change any of LC_* variables.

I was not sure what is your goal here.

If we just want to avoid the user setting other LC_* variables,
then LC_ALL is the solution; but I am not sure we should use
that in the build scripts.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] Add mkcatdefs and book.* to .gitignore

2012-08-19 Thread Marcin Cieslak
---
 cde/.gitignore |4 
 1 file changed, 4 insertions(+)

diff --git a/cde/.gitignore b/cde/.gitignore
index 6b4a79a..7b78641 100644
--- a/cde/.gitignore
+++ b/cde/.gitignore
@@ -144,6 +144,7 @@ programs/localized/ko_KR.dt-eucKR/msg/*.tmp.msg
 programs/localized/sv_SE.ISO8859-1/msg/*.tmp.msg
 programs/localized/zh_CN.dt-eucCN/msg/*.tmp.msg
 programs/localized/zh_TW.dt-eucTW/msg/*.tmp.msg
+programs/localized/util/mkcatdefs
 
 # dtappbuilder
 programs/dtappbuilder/src/ab/.dtcodegen.log
@@ -279,6 +280,9 @@ programs/dtappbuilder/src/libABil/bil_parse.h
 config/imake/Makefile.proto
 
 # doc 
+book.log
+book.out.idx
+book.esis
 doc/C/help-sdl/
 doc/C/m-guides/
 doc/C/man/man1/
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] CDE from git master + Marcin Cieslak's patches bringup on freebsd9 64bit

2012-08-19 Thread Marcin Cieslak
On Sun, 19 Aug 2012, Jubal Skaggs wrote:

> Here we go, after applying Marcin's patches, I can bring up Xsession using
> these notes - can we make a wiki page for FreeBSD?  :-)

Thanks for writing this up!

> 1. Install freebsd9-amd64, get lib32 and ports
> 
> 2. Add your hostname to the localhost line in /etc/hosts (I have a dhcp
> address)
> 
> 3. Update your ports tree with portsnap
> 
> 4. install packages
> pkg_add -r xorg
>  pkg_add -r git
> pkg_add -r iconv
> pkg_add -r bdftopcf
>  cd /usr/ports/shells/ksh93; make; make install
> 
> 4. build openmotif from ports, fix the Makefile first (fixes a problem
> building dtpad and dtmail related to XmPrintCallbackStruct)
>  cd /usr/ports/x11-toolkits/open-motif
> vi Makefile
> change the line
>  CPPFLAGS+= -DCSRG_BASED -DXUSE_MTSAFE_API -DXNO_MTSAFE_PWDAPI
> to:
> CPPFLAGS+= -DCSRG_BASED -DXUSE_MTSAFE_API -DXNO_MTSAFE_PWDAPI
> -I${LOCALBASE}/include
> 
> make
> make install
> 
> 5. add to /etc/rc.conf
> hald_enable="YES"
>  dbus_enable="YES"
> rpcbind_enable="YES"
> rpc_lockd_enable="YES"
>  rpc_statd_enable="YES"

Do we really need dbus if we have ToolTalk? :)
(My X.org server works without hal as well but you
are right about the package)

> 6. reboot your machine.
> 
> 8. clone the source from the git repository (I'm doing all of this as root
> on an expendable machine.)
>  cd ~
> git clone git://git.code.sf.net/p/cdesktopenv/code cdesktopenv-code
>  9. make symlinks
> cd ~/cdesktopenv-code/cde/imports
> mkdir -p x11
>  cd x11
> ln -s /usr/X11R6/bin .
> ln -s /usr/local/include .
>  ln -s /usr/local/lib .
> cd ~/cdesktopenv-code/cde/imports/motif
>  mkdir -p include
> cd include
> ln -s /usr/local/include/Xm .

Until everything is fixed I would say you have to do

  ln -s /usr/local/bin/ksh93 /bin/ksh

> 10. pull down sapers patches from the news server (hopefully these will be
> fit to be merged into the mainline soon.)
> cd ~/cdesktopenv-code/cde
> git apply patch from:
> http://sourceforge.net/mailarchive/forum.php?thread_name=1345083730-60762-1-git-send-email-saper%40saper.info&forum_name=cdesktopenv-devel
>  git apply patch from
> http://sourceforge.net/mailarchive/forum.php?thread_name=1345334660-16345-1-git-send-email-saper%40saper.info&forum_name=cdesktopenv-devel
>  make World

> 11. do the installation
> # Install CDE
>  cd ~/cdesktopenv-code/cde/admin/IntegTools/dbTools
> ./installCDE -s /path/to/cdesktopenv-code/cde/

I am using

 sudo ksh93 ./installCDE -s /path/to/cdesktopenv-code/cde/

> 
> # It seems this dir needs to be writable by every user of CDE
> chmod -R a+rwx /var/dt

Works for me as is : here's my ls -ld /var/dt:
drwxr-xr-x  4 bin  bin  512 19 sie 23:05 /var/dt

> # Directory required for calendar service
> mkdir -p /usr/spool/calendar

My personal preference based on old UNIX experience:

mkdir /var/spool/calendar
ln -s /var/spool /usr/spool

>  mkdir -p /etc/tt
> cp ~/cdesktopenv-code/cde/programs/tttypes/types.xdr /etc/tt
> 
> 12. Fire it up :-)
> export LD_LIBRARY_PATH=/usr/dt/lib:$LD_LIBRARY_PATH

or ldconfig -m /usr/dt/lib

> export PATH=/usr/dt/bin:$PATH
>  export LANG=C
> startx /usr/dt/bin/Xsession

I was still using my hacked up Xsession
but you are right - this one works.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] [PATCH] DtWidget: Improve portability of Motif interface

2012-08-20 Thread Marcin Cieslak
On Sun, 19 Aug 2012, Jon Trulson wrote:

> I propose that I take those header from the LGPL motif I have, add the
> appropriate license headers, and put them in imports/motif/include/

You are right - I included them to push my change out fast (I dislike
WIP to be stuck forever in my working tree) only to find out
that my next set of patches (for dtwm) also needs some Motif
includes.

I think they should be put together with the "official" ones
in $top/imports/motif/include/Xm  (they live in the 
same source directory anyway).

There are two possibilities:

1) We can link them:

So instead of doing right now

ln -s /usr/local/include $top/imports/motif/include
(on FreeBSD)

I would need to

mkdir -p $top/imports/motif/include/Xm
and then

ln -s $xm/*.h $top/imports/motif/include/Xm/

where $xm is "lib/Xm" from the openmotif distribution


2) or - as you suggest - we can import them into the 
CDE distribution. 

Below is the list of all files in lib/Xm/*.h,
"exists" means it is a public header that goes into
 and "NOT FOUND" it's a private one.

AccColorT.h exists.
AccTextT.h exists.
ActivatableT.h exists.
ArrowB.h exists.
ArrowBG.h exists.
ArrowBGP.h exists.
ArrowBP.h exists.
AtomMgr.h exists.
BaseClassI.h NOT FOUND.
BaseClassP.h exists.
BitmapsI.h NOT FOUND.
BulletinB.h exists.
BulletinBI.h NOT FOUND.
BulletinBP.h exists.
ButtonBox.h exists.
ButtonBoxP.h exists.
CacheI.h NOT FOUND.
CacheP.h exists.
CallbackI.h NOT FOUND.
CareVisualT.h exists.
CareVisualTI.h NOT FOUND.
CascadeB.h exists.
CascadeBG.h exists.
CascadeBGI.h NOT FOUND.
CascadeBGP.h exists.
CascadeBI.h NOT FOUND.
CascadeBP.h exists.
ClipWindTI.h NOT FOUND.
ClipWindowP.h exists.
CntrbmI.h NOT FOUND.
ColorI.h NOT FOUND.
ColorObjI.h NOT FOUND.
ColorObjP.h exists.
ColorP.h exists.
ColorS.h exists.
ColorSP.h exists.
Column.h exists.
ColumnP.h exists.
ComboBox.h exists.
ComboBox2.h exists.
ComboBox2P.h exists.
ComboBoxP.h exists.
Command.h exists.
CommandI.h NOT FOUND.
CommandP.h exists.
ContItemT.h exists.
Container.h exists.
ContainerP.h exists.
ContainerT.h exists.
CutPaste.h exists.
CutPasteI.h NOT FOUND.
DataF.h exists.
DataFP.h exists.
DataFSelP.h exists.
DesktopP.h exists.
DestI.h NOT FOUND.
DialogS.h exists.
DialogSEP.h exists.
DialogSP.h exists.
DialogSavvyT.h exists.
Display.h exists.
DisplayI.h NOT FOUND.
DisplayP.h exists.
DragBSI.h NOT FOUND.
DragC.h exists.
DragCI.h NOT FOUND.
DragCP.h exists.
DragDrop.h exists.
DragICCI.h NOT FOUND.
DragIcon.h exists.
DragIconI.h NOT FOUND.
DragIconP.h exists.
DragOverS.h exists.
DragOverSI.h NOT FOUND.
DragOverSP.h exists.
DragUnderI.h NOT FOUND.
DrawI.h NOT FOUND.
DrawP.h exists.
DrawUtils.h exists.
DrawingA.h exists.
DrawingAI.h NOT FOUND.
DrawingAP.h exists.
DrawnB.h exists.
DrawnBP.h exists.
DropDown.h exists.
DropDownP.h exists.
DropSMgr.h exists.
DropSMgrI.h NOT FOUND.
DropSMgrP.h exists.
DropTrans.h exists.
DropTransP.h exists.
EditresComI.h NOT FOUND.
Ext.h exists.
Ext18List.h exists.
Ext18ListP.h exists.
ExtObjectI.h NOT FOUND.
ExtObjectP.h exists.
ExtP.h exists.
FileSB.h exists.
FileSBP.h exists.
FontS.h exists.
FontSP.h exists.
Form.h exists.
FormP.h exists.
Frame.h exists.
FrameP.h exists.
GMUtilsI.h NOT FOUND.
Gadget.h exists.
GadgetI.h NOT FOUND.
GadgetP.h exists.
GadgetUtiI.h NOT FOUND.
GeoUtilsI.h NOT FOUND.
GrabShell.h exists.
GrabShellP.h exists.
HashI.h NOT FOUND.
Hierarchy.h exists.
HierarchyP.h exists.
IconBox.h exists.
IconBoxP.h exists.
IconButton.h exists.
IconButtonP.h exists.
IconFile.h exists.
IconFileP.h exists.
IconG.h exists.
IconGI.h NOT FOUND.
IconGP.h exists.
IconH.h exists.
IconHP.h exists.
ImageCachI.h NOT FOUND.
JoinSideT.h exists.
JpegI.h NOT FOUND.
Label.h exists.
LabelG.h exists.
LabelGI.h NOT FOUND.
LabelGP.h exists.
LabelI.h NOT FOUND.
LabelP.h exists.
LayoutT.h exists.
List.h exists.
ListP.h exists.
MainW.h exists.
MainWP.h exists.
Manager.h exists.
ManagerI.h NOT FOUND.
ManagerP.h exists.
MapEventsI.h NOT FOUND.
MenuProcI.h NOT FOUND.
MenuProcP.h exists.
MenuShell.h exists.
MenuShellI.h NOT FOUND.
MenuShellP.h exists.
MenuStateI.h NOT FOUND.
MenuStateP.h exists.
MenuT.h exists.
MenuUtilI.h NOT FOUND.
MenuUtilP.h exists.
MessageB.h exists.
MessageBI.h NOT FOUND.
MessageBP.h exists.
MessagesI.h NOT FOUND.
MultiList.h exists.
MultiListP.h exists.
MwmUtil.h exists.
NavigatorT.h exists.
Notebook.h exists.
NotebookP.h exists.
Outline.h exists.
OutlineP.h exists.
Paned.h exists.
PanedP.h exists.
PanedW.h exists.
PanedWP.h exists.
Picture.h exists.
PictureP.h exists.
PixConvI.h NOT FOUND.
PngI.h NOT FOUND.
PointInT.h exists.
Primitive.h exists.
PrimitiveI.h NOT FOUND.
PrimitiveP.h exists.
Print.h exists.
PrintSI.h NOT FOUND.
PrintSP.h exists.
Protocols.h exists.
ProtocolsI.h NOT FOUND.
ProtocolsP.h exists.
PushB.h exists.
PushBG.h exists.
PushBGP.h exists.
PushBP.h exists.
RCHookI.h NOT FOUND.
RCLayoutI.h NOT FOUND.
RCLayoutP.h exists.
RCMenuI.h NOT FOUND.
RCMenuP.h exists.
ReadImageI.h NOT FOUND.
RegionI.h NOT FOUND.
RepType.h exists.
RepTypeI.h NOT FOUND.
ResConverI

Re: [cdesktopenv-devel] [PATCH] DtWidget: Improve portability of Motif interface

2012-08-20 Thread Marcin Cieslak
On Mon, 20 Aug 2012, Jon Trulson wrote:

> On Mon, 20 Aug 2012, Marcin Cieslak wrote:
> 
> > On Sun, 19 Aug 2012, Jon Trulson wrote:
> > 
> > > I propose that I take those header from the LGPL motif I have, add the
> > > appropriate license headers, and put them in imports/motif/include/
> > 
> > You are right - I included them to push my change out fast (I dislike
> [...]
> 
> I would only want to include those that we actually use... The
> normally exported headers will already be usable as-is without any
> changes as long as the openmotif devkit is installed.
> 
> However, while adding the ones mentioned in your patches, I came
> across XmStrDefsI.h.  This one is a problem, since it is automatically
> generated during a motif build.  And if you look at the contents, it
> could be different for any given build, so a way must be found to avoid
> this one.
> 
> Any suggestions?

Looking at the trouble involved and the fact we just need some externs
what about producing a special file (maybe automatically
generated from Motif headers on request) with all the extern declarations
needed?

I don't think we need any complex type declarations or macros.
And this way we can kind of avoid copyright issues (not that 
I personally believe that a list of externs can be subjected
to copyright but that's another matter).

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] CDE from git master + Marcin Cieslak's patches bringup on freebsd9 64bit

2012-08-20 Thread Marcin Cieslak
On Mon, 20 Aug 2012, Jon Trulson wrote:

> On Mon, 20 Aug 2012, Christopher Turkel wrote:
> 
> > Since I'm not a coder, can someone tell me how to apply the FreeBSD patches 
> > mentioned in those two emails?
> >
> >
> 
> The easiest way is using 'git am '...
> 
> To avoid possible issues with further updates (especially when these
> are fixed and can be added), I'd probably use a branch...  Somthing
> like:

Given the interest in the FreeBSD version I will push my
work in progress to the respository clone on SourceForge.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] CDE git repository with Marcin Cieslak's patches for FreeBSD

2012-08-21 Thread Marcin Cieslak
On Tue, 21 Aug 2012, Marcin Cieslak wrote:

> On Mon, 20 Aug 2012, Jon Trulson wrote:
> 
> > On Mon, 20 Aug 2012, Christopher Turkel wrote:
> > 
> > > Since I'm not a coder, can someone tell me how to apply the FreeBSD 
> > > patches mentioned in those two emails?
> > >
> > >
> > 
> > The easiest way is using 'git am '...
> > 
> > To avoid possible issues with further updates (especially when these
> > are fixed and can be added), I'd probably use a branch...  Somthing
> > like:
> 
> Given the interest in the FreeBSD version I will push my
> work in progress to the respository clone on SourceForge.

I have pushed my work in progress (which is somewhat usable
to me) to my repository clone at

  http://sourceforge.net/u/saperski/cde-freebsd/

You can clone this repository using:

  git clone git://git.code.sf.net/u/saperski/cde-freebsd 

During "make World" the build may stop in the doc/ directory.
In this case just continue with "make"

Of course I hope that soon this repository will not be needed
at all and the regular master can be used.

Changes included not yet in the master repository:

$ git log build ^master
commit de656bb4e7caec0a3b765a151885608bf33af003
Author: Marcin Cieslak 
Date:   Sun Aug 19 15:55:13 2012 +0200

Fix warnings in dtwm

- Improve pointer/int compatibility
- Include unpublished Motif and Dt headers in Xm and Dt

There are still warnings left generated because
ElementValue.parsed_value should really be a union.

There are also some warnings left because of XtPointer
casting and some unused variables and functions.

commit fc5106141ce50e0a86dfc3a80c3343d2b7324d47
Author: Marcin Cieslak 
Date:   Thu Aug 16 04:18:14 2012 +0200

FreeBSD: Early support for the installer

This is work in progress - please
do not merge into master yet.

Note to users: please check
if you are affected by awk bug
    in udbParseLib.awk if you can.

Conflicts:

cde/.gitignore

commit 27971eeada7344e932dacd48cb4bdb7079fae1aa
Author: Marcin Cieslak 
Date:   Sun Aug 19 01:15:46 2012 +0200

DtWidget: Improve portability of Motif interface

- Add missing includes and prototypes
- Import unofficial libXm headers into "Xm" directory
- Improve type compatibility

With this patch, dtpad no longer crashes on startup
on FreeBSD/amd64 because of a truncated 64-bit pointer.


Please treat this as a work in progress, nothing stable
or even fully working - but reports are welcome.
I have posted few known issues already to this mailing list:

TT_ERR_PROCID with dtmail/dtpad
http://article.gmane.org/gmane.comp.desktop.cde.devel/412

I would also welcome reports of testing of the alleged
awk problem mentioned in:

http://thread.gmane.org/gmane.comp.desktop.cde.devel/344

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] Compiz or Compositing compatibility?

2012-08-22 Thread Marcin Cieslak
On Wed, 22 Aug 2012, Martin wrote:

> Hey,
> 
> First off when i do login to CDE nothing appears except the help for how to
> use CDE, i am not sure where the issue lies as i followed the installation
> instructions on sourceforge to a "T".

What is your $LANG? (If you have a chance to open the terminal in the CDE
you can try "echo $LANG" there). If you can't open a terminal window
in the CDE sometimes opening another text console session and
running "DISPLAY=:0 /usr/dt/bin/dtterm" may help.

This might require telling gdm to set a different LANG variable (LANG=C
is the safest).

For multi-display I don't think there is any problem (not sure though).

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] Various build failures as of today

2012-08-22 Thread Marcin Cieslak
After cleaning ".depend" files (necessary because I have 
linked motif includes differently) I am getting
various build failures:

1)

making all in programs/localized/C/app-defaults...
Extracting NLS messages for: Dthelpview
../../../../programs/localized/util/merge -lang C Dthelpview.tmsg < 
Dthelpview.nls > Dthelpview || rm -f Dthelpview
../../../../programs/localized/util/merge: not found
Extracting NLS messages for: Dtimsstart
../../../../programs/localized/util/merge -lang C Dtimsstart.tmsg < 
Dtimsstart.nls > Dtimsstart || rm -f Dtimsstart
../../../../programs/localized/util/merge: not found
make: don't know how to make ../../../../programs/dtlogin/config/Dtlogin. Stop
*** Error code 2

2) 

gcc -O2 -pipe  -I.  -I../.. -I../../exports/include 
-I../../imports/motif/include -I../../imports/x11/include -I/usr/local/include 
-DCSRG_BASED -DANSICPP -DMULTIBYTE -DNLS16   -DOSMAJORVERSION=9 
-DOSMINORVERSION=0 -c ../../lib/DtSvc/DtUtil2/EnvControl.c
In file included from ../../lib/DtSvc/DtUtil2/EnvControl.c:48:
../../exports/include/Dt/DtosP.h:153:1: warning: "alloca" redefined
In file included from ../../lib/DtSvc/DtUtil2/EnvControl.c:41:
/usr/include/stdlib.h:233:1: warning: this is the location of the previous 
definition
../../lib/DtSvc/DtUtil2/EnvControl.c:52:23: error: DtSvcLock.h: No such file or 
directory
../../lib/DtSvc/DtUtil2/EnvControl.c: In function 'makeDefaultIconPmPath':
../../lib/DtSvc/DtUtil2/EnvControl.c:216: error: 'CDE_CONFIGURATION_TOP' 
undeclared (first use in this function)
../../lib/DtSvc/DtUtil2/EnvControl.c:216: error: (Each undeclared identifier is 
reported only once
../../lib/DtSvc/DtUtil2/EnvControl.c:216: error: for each function it appears 
in.)
../../lib/DtSvc/DtUtil2/EnvControl.c:216: error: expected ')' before string 
constant
../../lib/DtSvc/DtUtil2/EnvControl.c:216: error: too few arguments to function 
'makeDefaultIconPath'


New commits:

commit 20c107bce203e7c4d8fb0ed089c5ca368c43e89e
Author: Peter Howkins 
Date:   Wed Aug 22 11:28:36 2012 +0100

dtcalc: Resolve "format not a string literal and no format arguments 
[-Wformat-security]" warnings.

Fix warnings related to secruity concerns on varargs functions. By 
specifying
"%s" on single string calls to sprintf() (and related) it's not possible to
have a % in the input string causing random data to be read off the stack.

commit 7d5072168535968055260c7279b3f2404d4cd88e
Author: Peter Howkins 
Date:   Wed Aug 22 10:44:33 2012 +0100

dtcalc: Resolve "missing sentinel in function call [-Wformat]" warnings

Caused by XtVaGetValues() and XtVaSetValues() variable arguments lists
needing to be terminated by NULL not 0.

commit f98d6f41d3e763d229b6630aa6130c5e6a474e7e
Author: David Cantrell 
Date:   Tue Aug 21 21:53:33 2012 -0400

Simple compiler warning fixes in programs/dthelp.

commit 16c57ad6690097ec6ed8b8995114bee1deb2fa7d
Author: David Cantrell 
Date:   Tue Aug 21 21:51:56 2012 -0400

Use mkstemp() and handle /usr/lib64 in imake.c

tmpnam() usage replaced with mkstemp().  Find a suitable tmp directory
checking the TMPDIR environment variable first, then the P_tmpdir
macro and finally /tmp directly.

On 64-bit Linux platforms, check to see if libc.so exists in /usr/lib64.
If found, use it over /usr/lib/libc.so.

commit 6d46aca1b1b57d949d7a7bac56d3950eb024d16d
Author: David Cantrell 
Date:   Tue Aug 21 21:51:06 2012 -0400

Fix basic compiler warnings in ccimake.c

main() always returns an int.

commit 8d32067a4a242276250c1c9dcf309979590189b7
Author: David Cantrell 
Date:   Tue Aug 21 09:34:23 2012 -0400

Account for multilib Linux installations in imake.

The libc.so file is not always in /usr/lib.  On multilib systems, the
file we care about could be in /usr/lib64.  Likewise, common Linux
conventions call for 64-bit libraries to go in lib64 directories, so
check there first when on a Linux 64-bit system.

commit 929a5f7327e4402d1232093cd6de67f8e8f610e7
Author: David Cantrell 
Date:   Fri Aug 17 15:41:00 2012 -0400

Include stdlib.h in cde/config/imake/ccimake.c

stdlib.h defines exit(3) on Linux systems.

commit 7ee2f3e80d776275fd0bd4541b20f4ab43e05c01
Author: Pascal Stumpf 
Date:   Sun Aug 19 19:35:38 2012 +0200

Fix localized build on OpenBSD.

Use the same set of langs as on Linux and FreeBSD (no Japanese), don't
redefine a needed macro as no-op, and unset LC_CTYPE in the environment
when building cat files.


Strange, will investigate.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/

Re: [cdesktopenv-devel] Various build failures as of today

2012-08-22 Thread Marcin Cieslak
On Wed, 22 Aug 2012, Marcin Cieslak wrote:

> After cleaning ".depend" files (necessary because I have 
> linked motif includes differently) I am getting
> various build failures:

Another one:

3) 

rm -f ttdesktop.o
CC -c -O2   -I../../lib -I../../../.. -I../../../../exports/include 
-I../../../../imports/motif/include -I../../../../imports/x11/include  
-DCSRG_BASED -DANSICPP -DMULTIBYTE -DNLS16   -DOSMAJORVERSION=9 
-DOSMINORVERSION=0 -DBSDSHLIB  -fpic ttdesktop.C
In file included from ttdesktop.C:56:
../../lib/tttk/tttk.h:36:21: error: Tt/tt_c.h: No such file or directory

Strange... looks like I cleaned "too much" ?

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] Various build failures as of today [solved]

2012-08-22 Thread Marcin Cieslak
On Wed, 22 Aug 2012, Marcin Cieslak wrote:

> After cleaning ".depend" files (necessary because I have 
> linked motif includes differently) I am getting
> various build failures:

(...)

Seems like I was working a lot in the unclean environment
- some required dtlogin files were present, although
we don't attempt to build dtlogin yet.

Two patches attached seem to solve this and now it is
possible to build a FreeBSD branch (git clone 
http://sourceforge.net/u/saperski/cde-freebsd/)
in a clean environment.

Those patches should not yet go into a mainline,
do you think that turning off SGML guides 
could become a global parameter in the Imakefiles?
(right now I put the ugly !defined(FreeBSDArchitecture))

//Marcin


>From 450e55ef919115f1b107a38a2149f109eef86539 Mon Sep 17 00:00:00 2001
From: Marcin Cieslak 
Date: Wed, 22 Aug 2012 17:40:48 +0200
Subject: [PATCH 1/2] Don't build guides for FreeBSD yet

---
 cde/doc/common/help/Imakefile.tmpl |2 ++
 1 file changed, 2 insertions(+)

diff --git a/cde/doc/common/help/Imakefile.tmpl 
b/cde/doc/common/help/Imakefile.tmpl
index 6099e4f..f3e245c 100644
--- a/cde/doc/common/help/Imakefile.tmpl
+++ b/cde/doc/common/help/Imakefile.tmpl
@@ -6,6 +6,7 @@ XCOMM $XConsortium: Imakefile.tmpl /main/8 1996/10/30 18:57:11 
rws $
  * macros to be defined in the local Imakefile. 
  */
 
+#if !defined(FreeBSDArchitecture)
 SDLDIR = ../help-sdl
 #if UseNSGMLS
 DBENV = LANG=$(LANG) SGML_SEARCH_PATH=".:.."
@@ -183,3 +184,4 @@ TEXTEDIT_SRCS = \
 
 MakeSdlVolume(Textedit,$(SDLDIR),$(DBENV),$(DBOPTS),$(TEXTEDIT_SRCS))
 #endif
+#endif
-- 
1.7.9.2



>From fa18301621c9420b8c6ca620b69b1014e4cd915b Mon Sep 17 00:00:00 2001
From: Marcin Cieslak 
Date: Wed, 22 Aug 2012 17:41:06 +0200
Subject: [PATCH 2/2] Build dtlogin/config even without dtlogin

dtlogin/config generates useful shell scripts
as well as resource files

We have some trouble building the CDE on FreeBSD
if those are not included.
---
 cde/programs/Imakefile |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/cde/programs/Imakefile b/cde/programs/Imakefile
index 64cd36c..f278e37 100644
--- a/cde/programs/Imakefile
+++ b/cde/programs/Imakefile
@@ -23,7 +23,7 @@ DTLOGIN = dtlogin
 DTKSHDIR = dtksh
 DTINFODIR = 
 DTCMDIR =
-DTLOGINDIR =
+DTLOGINDIR = dtlogin/config
 #else
 DTKSHDIR = dtksh
 DTINFODIR = dtinfo
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] 64 bit pointer issue in the ToolTalk ISAM library

2012-08-22 Thread Marcin Cieslak
>> Chris Wareham  wrote:
> Hi folks,
>
> I've been cleaning up the code in the ToolTalk ISAM library
> (cde/lib/tt/mini_isam), and writing some tests around it. However, I've
> run into a nasty 64 bit pointer issue on LP64 systems that I'm unsure
> how to fix.
>
> The source file cde/lib/tt/mini_isam/iscntl.c defines an iscntl
> function that looks like it was modelled on ioctl(2). It acts as a front
> end to a number of other ISAM functions, and is exposed as an RPC
> function elsewhere in the ToolTalk code. The problem is that it's
> declared to return an int (4 bytes), but in one case it is returning a
> pointer to a function (8 bytes) that will be truncated:
>
>  case ISCNTL_FATAL:
>  ret =  (int)_isfatal_error_set_func(va_arg(pvar,  intfunc));
>  break;
>
> This call is supposed to return the address of the old error callback
> function.
>
> Any suggestions as to how this could be fixed?

This seems horrible, no wonder that ToolTalk has such a bad security
record. Does this mean that remote client
application is able to set error handler pointer to some arbitrary
set of four bytes? Sounds very dangerous.

I am not sure which functions of iscntl are supposed to be called
remotely. 

There seems to be some attempt to convert XDR representation
of integer into the function pointer.

bool_t
xdr_Tt_iscntl_args(XDR *xdrs, _Tt_iscntl_args *objp)
{
if (!xdr_int(xdrs, &objp->isfd)) {
return (FALSE);
}
if (!xdr_int(xdrs, &objp->func)) {
return (FALSE);
}
if (!xdr_array(xdrs, (char **)&objp->arg.arg_val, (u_int 
*)&objp->arg.arg_len, ISAPPLMAGICLEN, sizeof(char), (xdrproc_t)xdr_char)) {
return (FALSE);
}
return (TRUE);
}

However, I think that the only server implementation
of this function we have (bin/ttdbserverd/dm_server.C:966)
seems to ignore almost all arguments and always return
"   1" (probably emulating iscntl(isfd, ISCNTL_APPLMAGIC_READ, buf))
call:

_Tt_iscntl_results *
_tt_iscntl_1(_Tt_iscntl_args *args, SVCXPRT * /* transp */)
{
static const char *here = "_tt_iscntl_1()";
static _Tt_iscntl_results res;
if (!_tt_check_stale_isfd(args->isfd)) {
res.result = -1;
res.iserrno = ERPC;
_tt_syslog(errstr, LOG_ERR, "%s: _tt_check_stale_isfd() == 0",
   here );
} else {
/*
res.result = iscntl(args->isfd, args->func, args->arg.arg_val);
res.iserrno = iserrno;
res.arg.arg_val = args->arg.arg_val;
res.arg.arg_len = args->arg.arg_len;
if (res.result == -1) {
_tt_syslog(errstr, LOG_ERR, "%s: iscntl(): %d",   
   here, iserrno);
}
*/
res.iserrno = 0;
res.arg.arg_val = "   1";
res.arg.arg_len = 4;
res.result = 0;
}
return (&res);
}

Interesting, that the code doing the actual call
is commented out.

I would change calls to iscntl(isfd, ISCNTL_FATAL, ...)
 to some public form of _isfatal_error_set_func(), 
and remove ISCNTL_FATAL facility from iscntl altogether.

//Marcin


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] On TI-RPC, TLI and IPv6

2012-08-22 Thread Marcin Cieslak
I've had a brief look at the possibility
of adding IPv6 support to ToolTalk.
It is necessary for me as rpc.ttdbserver
when invoked from FreeBSD's inetd will
likely receive an AF_INET6 ::1 socket
instead of AF_INET 127.0.0.1.

The TI-RPC stack that supports NFSv4
and IPv6 has imported lots of Sun's
RPC features and APIs, including
, clnt_create() and 
clnt_create_timed() and rpcb_set().
Those functions are also provided
by libtirpc for Linux.

Those APIs, however are almost not tied
to the Transport Layer Inteface 
(TLI, a.k.a. as XTI) APIs that
are System V's approach alternative
to BSD sockets (t_accept, t_bind, etc.).

Only (struct t_bind) needed for
svc_tli_create() is provided.

So BSDs and Linux could use new RPC functions
on top of the traditional socket stack.

What I would propose is to separate
OPT_TLI into two options:

 * OPT_TLI -- if defined then use TLI instead of BSD sockets
 *
 * OPT_TLIRPC -- if defined then rpc code is compiled for the new
 *transport-independent rpc


And use OPT_TLI for functions related
to sockets only, and introduce
OPT_TLIRPC for the new RPC calls.
For all systems that had OPT_TLI defined,
OPT_TLIRPC should be defined as well.


Some more work is needed on:

In slib/mp_rpc_server.C

- netconfig and svc_tli_create() that
are available in the TI-RPC are used,
but the socket is created using t_open.

- gettransient() should be written
a bit differently.

- lib/mp/mp_rpc_fns.C should be split

_tt_tli_set_nodelay and _tt_bind_endpoint
relate to the TLI sockets, while
_tt_svc_freeargs and _tt_svc_getargs
are related to the TLI RPC.

What do you think about splitting OPT_TLI
like this?

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] examples/tt now runs on FreeBSD

2012-08-22 Thread Marcin Cieslak
---
 cde/.gitignore   |3 +++
 cde/examples/tt/Makefile.FreeBSD |   45 ++
 cde/examples/tt/broadcast.c  |   36 +-
 3 files changed, 69 insertions(+), 15 deletions(-)
 create mode 100644 cde/examples/tt/Makefile.FreeBSD

diff --git a/cde/.gitignore b/cde/.gitignore
index 8fa6a9a..fbe8ecc 100644
--- a/cde/.gitignore
+++ b/cde/.gitignore
@@ -87,6 +87,9 @@ config/util/makestrs
 config/util/mergelib
 config/util/xmkmf
 
+# exampls
+examples/tt/broadcast
+
 # Compiled binaries and misc generated program files
 programs/dsdm/dsdm
 programs/dtaction/dtaction
diff --git a/cde/examples/tt/Makefile.FreeBSD b/cde/examples/tt/Makefile.FreeBSD
new file mode 100644
index 000..9d153fa
--- /dev/null
+++ b/cde/examples/tt/Makefile.FreeBSD
@@ -0,0 +1,45 @@
+# $XConsortium: Makefile.ibm /main/2 1996/05/13 12:02:39 drk $
+##
+#
+#  Makefile for ToolTalk examples (IBM)
+#
+#  (c) Copyright 1993, 1994 Hewlett-Packard Company
+#  (c) Copyright 1993, 1994 International Business Machines Corp.
+#  (c) Copyright 1993, 1994 Sun Microsystems, Inc.
+#  (c) Copyright 1993, 1994 Novell, Inc.
+#
+##
+
+CC = clang
+RM = rm -f
+
+PROGRAM= broadcast
+SOURCES= broadcast.c
+OBJECTS= broadcast.o
+
+DEFINES= 
+CDEBUGFLAGS= -O -g
+CFLAGS = $(DEFINES) $(CDEBUGFLAGS)
+
+DTINCLUDE  = -I/usr/dt/include
+X11INCLUDE = -I/usr/local/include
+
+INCLUDES   = $(DTINCLUDE) $(X11INCLUDE)
+
+DTLIBS = -L/usr/dt/lib -ltt -L/usr/local/lib -lXm
+X11LIBS= -L/usr/local/lib -lXt -lX11
+SYSLIBS= 
+
+LIBRARIES  = $(DTLIBS) $(X11LIBS) $(SYSLIBS)
+LDFLAGS= 
+
+.c.o:
+   $(CC) -c $(CFLAGS) $(INCLUDES) $<
+
+all::  $(PROGRAM)
+
+$(PROGRAM)::   $(OBJECTS)
+   $(CC) -o $(PROGRAM) $(LDFLAGS) $(OBJECTS) $(LIBRARIES)
+
+clean::
+   $(RM) $(PROGRAM) $(OBJECTS)
diff --git a/cde/examples/tt/broadcast.c b/cde/examples/tt/broadcast.c
index a2a3fcd..039a83c 100644
--- a/cde/examples/tt/broadcast.c
+++ b/cde/examples/tt/broadcast.c
@@ -36,6 +36,7 @@
  */
 
 #include 
+#include 
 #include 
 #include 
 #include 
@@ -50,7 +51,7 @@ void  receive_tt_message();
 void   create_ui_components();
 
 
-void
+int
 main(argc, argv)
int argc;
char**argv;
@@ -64,7 +65,7 @@ main(argc, argv)
 */
toplevel = XtVaAppInitialize(&app, "ttsample1", NULL, 0,
&argc, argv, NULL, NULL);
-   XtVaSetValues(toplevel, XmNtitle, "ToolTalk Sample 1", 0);
+   XtVaSetValues(toplevel, XmNtitle, "ToolTalk Sample 1", NULL);
create_ui_components();
 
/*
@@ -75,6 +76,11 @@ main(argc, argv)
 
my_procid = tt_open();
ttfd = tt_fd();
+   if (ttfd < 0) {
+   fprintf(stderr, "Cannot get tt_fd, err=%d\n", ttfd);
+   return -1;
+   }
+   
 
/*
 * Arrange for Motif to call receive_tt_message when the ToolTalk
@@ -112,7 +118,7 @@ main(argc, argv)
 */
tt_close();
 
-   exit(0);
+   return 0;
 }
 
 
@@ -132,9 +138,9 @@ broadcast_value(widget, client_data, call_data)
 * ttsample1_value(in int http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] New src tarball in a couple weeks?

2012-08-22 Thread Marcin Cieslak
On Wed, 22 Aug 2012, Jon Trulson wrote:

> The current src tarball up on SF is... well, way out of date compared
> to where git master is now.
> 
> I'd like to get some fixes into master and make a new one in around 2
> weeks.  Does that seem reasonable?
> 
> Specifically, I'd like:
> 
> 1) *BSD fixes (still in marcin's tree, maybe Pascal's as well)

I need to fix those two things at _minimum_:

- remove depenedency on /bin/ksh (more $(KORNSHELL) everywhere)
- fix shared library scheme - now apps link to

libtt.so => /usr/dt/lib/libtt.so (0x800fbe000)
libDtSvc.so => /usr/dt/lib/libDtSvc.so (0x800d57000)

instead of the libtt.so.2, libDtSvc.so.2 (as I think it should be)

Don't want to create upgrade problems for users with the tarball
if the scheme changes in git later.

- add /usr/dt/lib and /usr/dt/share/man to their repective systemwide
paths (trivial)

> 2) tirpc support for linux (I'll add this, probably disabled by default)
> 3) dtksh on linux, might work - haven't tried yet
> 
> Anything else?  Does this sound like a good idea?

Getting Xm private headers right so you can merge my dtwm and libDtWidget
patches.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] Error processing book.esis by instant / couldn't create error file for command

2012-08-22 Thread Marcin Cieslak
On Wed, 22 Aug 2012, Jon Trulson wrote:

> On Wed, 22 Aug 2012, Marcin Cieslak wrote:
> 
> BTW - why don't guides build yet on fbsd?  Still locale issues?

Sorry, I meant "help" not "guides":

making all in doc/C...
+ mkdir -p help-sdl
+ mkdir -p cde.dti
making all in doc/C/help...
LANG=C SGML_SEARCH_PATH=".:.." 
LD_LIBRARY_PATH=../../../exports/lib:../../../imports/motif/lib:../../../imports/x11/lib
 DTLCXSEARCHPATH=../../../lib/DtHelp /usr/local/bin/ksh93 
../../../programs/dtdocbook/doc2sdl/dtdocbook -t 
../../../programs/dtdocbook/doc2sdl -H 
../../../programs/dthelp/parser/pass2/htag2/dthelp_htag2 -I 
../../../programs/dtdocbook/instant/instant -L 
../../../programs/dtdocbook/xlate_locale/xlate_locale -S 
../../../programs/nsgmls/nsgmls  -o ../help-sdl/Appmanager.sdl 
Appmanager/book.sgm
dtdocbook fatal error:
Error processing book.esis by instant
*** Error code 1

book.log says:

Interpreter (internal to DtDocBook) error
couldn't create error file for command: no such file or directory
while executing
"exec rm -f ${baseName}.sdl ${baseName}.idx ${baseName}.snb"
(procedure "WriteSNB" line 16)
invoked from within
"WriteSNB"
(procedure "CloseDocument" line 43)
invoked from within
"CloseDocument"

which means trouble creating temporary file (and this is because
something changes my /var/tmp to 755 owned by root, not 1777!)

Looks like a local problem (I've seen this outside of 
my CDE efforts)

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH 27/27] 64bit: Fix crash in dtexec

2012-08-23 Thread Marcin Cieslak
No ANSI prototype for malloc() caused
the returned pointer to be truncated
to 32 bits.
---
 cde/lib/DtSvc/DtUtil2/DtGetMessage.c |1 +
 cde/lib/DtSvc/DtUtil2/MsgLog.c   |2 +-
 cde/programs/dtexec/Main.c   |   19 +++
 3 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/cde/lib/DtSvc/DtUtil2/DtGetMessage.c 
b/cde/lib/DtSvc/DtUtil2/DtGetMessage.c
index 527a348..b1fe32c 100644
--- a/cde/lib/DtSvc/DtUtil2/DtGetMessage.c
+++ b/cde/lib/DtSvc/DtUtil2/DtGetMessage.c
@@ -40,6 +40,7 @@
 
 #ifndef NO_MESSAGE_CATALOG
 #include 
+#include 
 #include 
 #include 
 #include "DtSvcLock.h"
diff --git a/cde/lib/DtSvc/DtUtil2/MsgLog.c b/cde/lib/DtSvc/DtUtil2/MsgLog.c
index 8d3dd82..0aa48d1 100644
--- a/cde/lib/DtSvc/DtUtil2/MsgLog.c
+++ b/cde/lib/DtSvc/DtUtil2/MsgLog.c
@@ -145,7 +145,7 @@ static char * get_file_name (
va_list args;
 
file = malloc(MAXPATHLEN+1);
-   if (! file) return;
+   if (! file) return NULL;
 
Va_start (args, format);
 
diff --git a/cde/programs/dtexec/Main.c b/cde/programs/dtexec/Main.c
index 3c359f0..71f77ee 100644
--- a/cde/programs/dtexec/Main.c
+++ b/cde/programs/dtexec/Main.c
@@ -59,6 +59,9 @@
 #include "osdep.h" /* select(2) mask width and bit manipulation macros */
 #include 
 #include 
+#include 
+#include 
+#include 
 
 #include 
 
@@ -320,7 +323,7 @@ Help(
  */
 
 static void
-#if defined(__aix) || defined (__osf__)
+#if defined(__aix) || defined (__osf__) || defined(__FreeBSD__)
 PanicSignal(int s)
 #else
 PanicSignal(void)
@@ -357,7 +360,7 @@ PanicSignal(void)
  */
 
 static void
-#if defined(__aix) || defined (__osf__)
+#if defined(__aix) || defined (__osf__) || defined(__FreeBSD__)
 IgnoreSignal(int i)
 #else
 IgnoreSignal(void)
@@ -399,7 +402,7 @@ IgnoreSignal(void)
  */
 
 static void
-#if defined(__aix) || defined (__osf__)
+#if defined(__aix) || defined (__osf__) || defined(__FreeBSD__)
 UrgentSignal(int i)
 #else
 UrgentSignal(void)
@@ -450,7 +453,7 @@ UrgentSignal(void)
  *
  */
 static void
-#if defined(__aix) || defined (__osf__)
+#if defined(__aix) || defined (__osf__) || defined(__FreeBSD__)
 SigCld(int i)
 #else
 SigCld(void)
@@ -769,7 +772,7 @@ ParseCommandLine(
 #endif /* _DTEXEC_NLS16 */
 
 if (tick2)
-   *tick2 = NULL;
+   *tick2 = 0;
 
 #ifdef _DTEXEC_NLS16
tick1 = (char *) Dt_strrchr( dtSvcProcIdG, '_' );
@@ -778,8 +781,8 @@ ParseCommandLine(
 #endif /* _DTEXEC_NLS16 */
 
if ( tick1 && tick2 ) {
-   *tick1 = NULL;
-   *tick2 = NULL;
+   *tick1 = 0;
+   *tick2 = 0;
 
dtSvcInvIdG = atoi((char *) (tick1 + 1));
dtSvcChildIdG = atoi((char *) (tick2 + 1));
@@ -1520,7 +1523,7 @@ main (
 * a SIGCLD, give up and exit.
 */
if (rediscoverUrgentSigG > ((1000/SHORT_SELECT_TIMEOUT)*5) ) {
-#if defined(__aix) || defined (__osf__)
+#if defined(__aix) || defined (__osf__) || defined(__FreeBSD__)
PanicSignal(0);
 #else
PanicSignal();
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH 25/27] Use FreeBSD-specific invocation of /bin/ps

2012-08-23 Thread Marcin Cieslak
---
 cde/programs/dtlogin/config/_common.ksh.src |4 +++-
 cde/programs/dtprintinfo/util/Process.C |2 ++
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/cde/programs/dtlogin/config/_common.ksh.src 
b/cde/programs/dtlogin/config/_common.ksh.src
index 90154a6..b3b73ea 100644
--- a/cde/programs/dtlogin/config/_common.ksh.src
+++ b/cde/programs/dtlogin/config/_common.ksh.src
@@ -36,8 +36,10 @@
   pexec=$(LC_TIME=C ps -p $PPID | awk 'NR==2 {print $5}')
 #elif defined(USL) && (OSMAJORVERSION > 1)
   pexec=$(LC_TIME=C ps -p $PPID | awk 'NR==2 {print $6}')
-#elif defined(linux) || defined(CSRG_BASED)
+#elif defined(linux) || defined(CSRG_BASED) && !defined(__FreeBSD__)
   pexec=$(LC_TIME=C /bin/ps -p $PPID 2>/dev/null | awk 'NR==2 {print $4}')
+#elif defined(__FreeBSD__)
+  pexec=$(LC_TIME=C /bin/ps -o comm= -p $PPID 2>/dev/null)
 #else
   pexec=$(LC_TIME=C /usr/bin/ps -p $PPID | awk 'NR==2 {print $4}')
 #endif
diff --git a/cde/programs/dtprintinfo/util/Process.C 
b/cde/programs/dtprintinfo/util/Process.C
index 9dc93ce..51e9115 100644
--- a/cde/programs/dtprintinfo/util/Process.C
+++ b/cde/programs/dtprintinfo/util/Process.C
@@ -38,6 +38,8 @@ Process::Process()
 {
 #ifdef aix
(void)Invoke("ps -e -F \"pid ppid uid command\"", &procs);
+#elif defined(__FreeBSD__)
+   (void)Invoke("/bin/ps ax -o pid,ppid,uid,comm", &procs);
 #else
(void)Invoke("/bin/ps -el | awk '{printf(\"%s %s %s 
%s\\n\",$4,$5,$3,$NF)}'",
&procs);
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH 26/27] FreeBSD: scan /usr/local/lib/X11/fonts/ for fontpath

2012-08-23 Thread Marcin Cieslak
---
 cde/programs/dtlogin/config/_common.ksh.src |   25 -
 1 file changed, 24 insertions(+), 1 deletion(-)

diff --git a/cde/programs/dtlogin/config/_common.ksh.src 
b/cde/programs/dtlogin/config/_common.ksh.src
index b3b73ea..6386d13 100644
--- a/cde/programs/dtlogin/config/_common.ksh.src
+++ b/cde/programs/dtlogin/config/_common.ksh.src
@@ -472,7 +472,7 @@ SetKeyboardMap()
 #endif
 #endif
 
-#if defined(CSRG_BASED) || defined(linux)
+#if defined(linux)
 #ifdef cpp_Xsetup
 if [ "$DTXSERVERLOCATION" != "remote" ]; then
   fontpath=
@@ -495,3 +495,26 @@ SetKeyboardMap()
 #endif
 #endif
 
+#if defined(CSRG_BASED)
+#ifdef cpp_Xsetup
+if [ "$DTXSERVERLOCATION" != "remote" ]; then
+  fontpath=
+  FONTLIB=/usr/local/lib/X11/fonts
+  for i in misc 75dpi 100dpi Speedo Type1 PJE
+  do
+if [ -f $FONTLIB/$i/fonts.dir ];  then
+if [ ! -z "$fontpath" ]; then
+   fontpath=$fontpath,$FONTLIB/$i/
+else
+   fontpath=$FONTLIB/$i/
+fi
+fi
+  done
+
+  if [ ! -z "$fontpath" ]; then
+$XDIR/xset fp+ $fontpath
+  fi
+fi
+#endif
+#endif
+
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] New src tarball in a couple weeks?

2012-08-23 Thread Marcin Cieslak
On Thu, 23 Aug 2012, David Cantrell wrote:

> > - fix shared library scheme - now apps link to
> > 
> > libtt.so => /usr/dt/lib/libtt.so (0x800fbe000)
> > libDtSvc.so => /usr/dt/lib/libDtSvc.so (0x800d57000)
> > 
> > instead of the libtt.so.2, libDtSvc.so.2 (as I think it should be)
> 
> Are you sure that's a good idea?  Having the major version of the library
> in the linked library name allows for API breakage and concurrent library
> version installations.  Modern ELF systems do this for a reason.  The .so
> library symlinks are really just a convenience for developers.

That's what I am going to fix - right now the linker points to .so
(without a version number) and I want it to point to .so.2

Not that I think we will be bumping shared lib versions a lot.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] Use KORNSHELL variable instead of /bin/ksh

2012-08-23 Thread Marcin Cieslak
This patch removes instances of hardcoded
invocation of /bin/ksh and allows to
replace it with, for, example,
/usr/local/bin/ksh93

Also "ksh93" is accepted whenever "ksh" is.

Tested using the following /bin/ksh:

8<
WHAT=`ps -o command= -p $PPID`
msg="Something tried to call /bin/ksh: $PPID: $WHAT"
print -u2 "$msg"
logger user.warn "$msg"
exit 99
8<
(Warning: first two lines are FreeBSD specific)

Scripts from Makefiles should now be executed either
with

$(KORNSHELL) korn-shell-script

or

$(SHELL) bourne-shell-script

therefore #!/bin/ksh has not been changed everywhere.

/usr/dt/bin/ scripts have been converted (e.g. Xsession)

Whenever possible Imake and CPP facilities have been used.

For C and C++ programs KORNSHELL needs to be defined to
"/path/to/your/ksh" (with quotes) so that it can make
a valid C constant.

Therefore, when adding KORNSHELL to Imakefile for C files,
you have to add

CXXEXTRA_DEFINES = -DKORNSHELL=\"$(KORNSHELL)\"

or similar (for example, see programs/dtprintinfo)

But for simple shell script substitution we usually change

 LOCAL_CPP_DEFINES = -DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP) \
 -DCDE_INSTALLATION_TOP=$(CDE_INSTALLATION_TOP) \
 -DCDE_LOGFILES_TOP=$(CDE_LOGFILES_TOP)

to:

 LOCAL_CPP_DEFINES = -DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP) \
 -DCDE_INSTALLATION_TOP=$(CDE_INSTALLATION_TOP) \
 -DCDE_LOGFILES_TOP=$(CDE_LOGFILES_TOP) \
 -DKORNSHELL=$(KORNSHELL) \
 -DXPROJECTROOT=X11ProjectRoot

since we don't want quotes for shell scripts.
---
 cde/admin/IntegTools/dbTools/Imakefile |1 +
 cde/admin/IntegTools/dbTools/dinstallCDE.src   |6 +++---
 cde/admin/IntegTools/dbTools/installCDE.src|   12 ++--
 cde/admin/IntegTools/dbTools/linksLast |2 +-
 cde/admin/IntegTools/dbTools/uncomment |2 +-
 cde/programs/dtappintegrate/Imakefile  |3 ++-
 cde/programs/dtappintegrate/dtappintegrate.src |2 +-
 cde/programs/dtfile/Find.c |2 +-
 cde/programs/dtfile/Imakefile  |3 ++-
 cde/programs/dtlogin/config/0015.sun.env.src   |2 +-
 cde/programs/dtlogin/config/0050.dtxmodmap.src |2 +-
 cde/programs/dtlogin/config/0060.dtsysenv.src  |2 +-
 cde/programs/dtlogin/config/Imakefile  |1 +
 cde/programs/dtlogin/config/Xreset.src |2 +-
 cde/programs/dtlogin/config/Xsession.ow.src|2 +-
 cde/programs/dtlogin/config/Xsession.ow2.src   |2 +-
 cde/programs/dtlogin/config/Xsession.src   |   10 +-
 cde/programs/dtlogin/config/Xsetup.src |2 +-
 cde/programs/dtlogin/config/Xstartup.src   |2 +-
 cde/programs/dtlogin/config/dtlslocale.src |2 +-
 cde/programs/dtprintegrate/Imakefile   |3 ++-
 cde/programs/dtprintegrate/dtprintegrate.src   |2 +-
 cde/programs/dtprintinfo/libUI/MotifUI/Imakefile   |2 ++
 .../dtprintinfo/libUI/MotifUI/MotifThread.C|2 +-
 cde/programs/dtprintinfo/util/Imakefile|2 ++
 cde/programs/dtprintinfo/util/Invoke.C |2 +-
 cde/programs/dtsession/Imakefile   |1 +
 cde/programs/dtsession/dtloadresources.src |2 +-
 cde/programs/types/Imakefile   |3 ++-
 cde/programs/types/unsupported.dt.src  |2 +-
 cde/programs/types/uxstd.dt.src|   12 
 cde/programs/types/xclients.dt.src |8 
 32 files changed, 63 insertions(+), 40 deletions(-)

diff --git a/cde/admin/IntegTools/dbTools/Imakefile 
b/cde/admin/IntegTools/dbTools/Imakefile
index 2a9cb49..3885ac4 100644
--- a/cde/admin/IntegTools/dbTools/Imakefile
+++ b/cde/admin/IntegTools/dbTools/Imakefile
@@ -3,6 +3,7 @@ XCOMM $XConsortium: Imakefile /main/5 1996/04/23 21:26:14 drk $
 LOCAL_CPP_DEFINES = -DCDE_INSTALLATION_TOP=$(CDE_INSTALLATION_TOP) \
 -DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP) \
 -DCDE_LOGFILES_TOP=$(CDE_LOGFILES_TOP) \
+-DKORNSHELL=$(KORNSHELL) \
 -Usun -Uusl -Uuxp -Uaix -Udec -UAIX -Uibm -Uhp
 
 AllTarget(installCDE dinstallCDE)
diff --git a/cde/admin/IntegTools/dbTools/dinstallCDE.src 
b/cde/admin/IntegTools/dbTools/dinstallCDE.src
index 78d2e90..d0dba08 100755
--- a/cde/admin/IntegTools/dbTools/dinstallCDE.src
+++ b/cde/admin/IntegTools/dbTools/dinstallCDE.src
@@ -1,4 +1,4 @@
-XCOMM! /bin/ksh
+XCOMM! KORNSHELL
 XCOMM $XConsortium: dinstallCDE.src /main/8 1996/11/25 14:20:36 drk $
 
 XCOMM
@@ -71,12 +71,12 @@ DoLangScript()
   if [ -x $POST_INSTALL_DIR/$PLATFORM_SCRIPT_DIR/$ScriptName ]
   then
 Log "Executing $PLATFORM specific $FilesetName de-customize script"
-$POST_INSTALL_DIR/$PLATFORM_SCRIPT_DIR/$ScriptName -d $3 2>&1 | \
+   

[cdesktopenv-devel] Looking for working help files (.sdl)

2012-08-23 Thread Marcin Cieslak
Hello,

for anyone of you who have the help system working:

- I am looking for good .sdl files (for
example /usr/dt/appconfig/help/C/Intromgr.sdl)
to compare with what I have.

Donations welcome - you can them to my ftp server:

saper.info
login: ftp
password: ftp
directory: /incoming/cde

or

ftp://saper.info/incoming/cde

Thanks in advance,

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] [PATCH] Use KORNSHELL variable instead of /bin/ksh

2012-08-23 Thread Marcin Cieslak
On Thu, 23 Aug 2012, Pascal Stumpf wrote:

> On Thu, 23 Aug 2012 17:49:26 +0200, Marcin Cieslak wrote:
> > This patch removes instances of hardcoded
> > invocation of /bin/ksh and allows to
> > replace it with, for, example,
> > /usr/local/bin/ksh93
> > 
> > Also "ksh93" is accepted whenever "ksh" is.
> 
> Have you looked at whether ksh is actually required everywhere or if
> it's trivial to use just a POSIX-compliant shell?  Should be easier to
> test on FreeBSD.

For some easier scripts, like "uncomment" and "linksLast"
I have changed the #! line to /bin/sh

Scripts that have "typeset" or where I could quickly spot 
some ksh-specific features are getting KORNSHELL.

> Also,
> 
> execlp(KORNSHELL, "ksh", "-c", cmd, NULL);
> 
> this will require both a "ksh" and "ksh93" binary on FreeBSD ...

As far I understand te first argument is the pathname
of the binary to be executed, the second one is the argv[0]
delivered to the shell, but is not executed.

I have tested this with "dtprintinfo -populate", which 
at least is able to execute CUPS lpstat commands
and get a list of printers.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] FreeBSD: Use -O instead of -O2

2012-08-23 Thread Marcin Cieslak
---
 cde/config/cf/FreeBSD.cf |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/cde/config/cf/FreeBSD.cf b/cde/config/cf/FreeBSD.cf
index 3817be6..3671171 100644
--- a/cde/config/cf/FreeBSD.cf
+++ b/cde/config/cf/FreeBSD.cf
@@ -125,14 +125,14 @@ XCOMM operating system:  OSName 
(OSMajorVersion./**/OSMinorVersion./**/OSTeenyVe
 /* The GCC strength-reduce bug is fixed for FreeBSD 2.1.5 and later */
 #ifndef DefaultGcc2i386Opt
 #if OSMajorVersion > 2 || (OSMajorVersion == 2 && OSMinorVersion > 1) || 
(OSMajorVersion == 2 && OSMinorVersion == 1 && OSTeenyVersion >= 5)
-#define DefaultGcc2i386Opt -O2
+#define DefaultGcc2i386Opt -O
 #endif
 #endif
 
 #ifdef i386Architecture
 # define OptimizedCDebugFlags DefaultGcc2i386Opt
 #else
-# define OptimizedCDebugFlags -O2
+# define OptimizedCDebugFlags -O
 #endif
 
 #define ServerExtraDefines GccGasOption XFree86ServerDefines
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] [PATCH] FreeBSD: Use -O instead of -O2

2012-08-24 Thread Marcin Cieslak
On Thu, 23 Aug 2012, Jon Trulson wrote:

> On Thu, 23 Aug 2012, Marcin Cieslak wrote:
> 
> Applied, but why?

Yes, from my limited testing it turns out
that libDtHelp had trouble reading help
volumes (dthelpgen couldn't find any).

When I recompiled with -g everything worked;
after that I tried compiling with -O instead
of -O2 -g and help indexing worked despite
complete eradicaton of traces of CDE on
install. So I suspect some problem here

I am using pretty old 4.2 GCC bundled
with FreeBSD; what worries me is that
system default is "-O2" for my platform.

Further testing is welcome - I see some
people are trying to run CDE on FreeBSD.

I'd leave this is a quick fix and 
concentrate on other problems; for example
it seems like i386 cannot compile dtksh
and dtappbuilder because of missing
__va_copy.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] Add pax files generated by dtksh to .gitignore

2012-08-24 Thread Marcin Cieslak
It seems that after changing -O2 to -O for FreeBSD
pax started to build successfully. Interesting.
---
 cde/.gitignore |6 ++
 1 file changed, 6 insertions(+)

diff --git a/cde/.gitignore b/cde/.gitignore
index 1ebea60..b7b872c 100644
--- a/cde/.gitignore
+++ b/cde/.gitignore
@@ -799,6 +799,7 @@ programs/dtksh/examples/crMovesText1
 programs/dtksh/ksh93/bin
 programs/dtksh/ksh93/include
 programs/dtksh/ksh93/lib
+programs/dtksh/ksh93/man
 programs/dtksh/ksh93/man/man1/sh.1
 programs/dtksh/ksh93/man/man1/sh.1.old
 programs/dtksh/ksh93/man/man3/LIBAST.3
@@ -946,6 +947,11 @@ programs/dtksh/ksh93/src/cmd/ksh93/ksh
 programs/dtksh/ksh93/src/cmd/ksh93/ksh.msg
 programs/dtksh/ksh93/src/cmd/ksh93/shcomp
 programs/dtksh/ksh93/src/cmd/ksh93/suid_exec
+programs/dtksh/ksh93/src/cmd/pax/bax
+programs/dtksh/ksh93/src/cmd/pax/cpio
+programs/dtksh/ksh93/src/cmd/pax/nocom
+programs/dtksh/ksh93/src/cmd/pax/pax
+programs/dtksh/ksh93/src/cmd/pax/tar
 programs/dtksh/ksh93/src/cmd/pax/FEATURE/
 programs/dtksh/ksh93/src/cmd/pax/MAM.list
 programs/dtksh/ksh93/src/cmd/pax/MAM.time
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] Rudimentary LSBBitOrder for FreeBSD

2012-08-30 Thread Marcin Cieslak
---
 cde/config/cf/FreeBSD.cf |   13 +
 1 file changed, 13 insertions(+)

diff --git a/cde/config/cf/FreeBSD.cf b/cde/config/cf/FreeBSD.cf
index 3671171..ebaa743 100644
--- a/cde/config/cf/FreeBSD.cf
+++ b/cde/config/cf/FreeBSD.cf
@@ -52,6 +52,19 @@ XCOMM operating system:  OSName 
(OSMajorVersion./**/OSMinorVersion./**/OSTeenyVe
 # define HasGcc2   YES
 #endif
 
+/* For DtHelp TIFF processing routines. */
+#ifdef AMD64Architecture
+#define LSBBitOrder YES
+#endif
+
+#ifdef ARMArchitecture
+#define LSBBitOrder YES
+#endif
+
+#ifdef i386Architecture
+#define LSBBitOrder YES
+#endif
+
 #define MkdirHierCmd   mkdir -p
 
 #define CcCmd gcc
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] Define AMD64Architecture for FreeBSD

2012-08-30 Thread Marcin Cieslak
---
 cde/config/cf/Imake.cf |5 +
 1 file changed, 5 insertions(+)

diff --git a/cde/config/cf/Imake.cf b/cde/config/cf/Imake.cf
index 456d365..9e93abf 100644
--- a/cde/config/cf/Imake.cf
+++ b/cde/config/cf/Imake.cf
@@ -193,6 +193,11 @@ XCOMM $TOG: Imake.cf /main/30 1998/04/28 13:55:25 barstow $
 #  define i386Architecture
 #  undef i386
 # endif
+# ifdef __amd64__
+#  define AMD64BsdArchitecture
+#  define AMD64Architecture
+#  undef amd64
+# endif
 #endif /* __FreeBSD__ */
 
 #ifdef AMOEBA
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH 33/35] Introduce

2012-08-30 Thread Marcin Cieslak
We need ANSI C prototypes of certain Motif
functions that are not published in the official
header files.

 header file contains
the prototypes extracted from the Motif source.

To re-create :

1) Make sure you have sources of libXm
(lib/Xm directory of the Motif distribution)
accessible via imports/motif/lib/Xm

2) rm include/Xm/XmPrivate.h

3) make includes
---
 cde/include/Imakefile   |4 ++
 cde/include/Xm/Imakefile|   23 +++
 cde/include/Xm/XmPrivate.h  |  129 +++
 cde/include/Xm/extractprototype.awk |   57 
 4 files changed, 213 insertions(+)
 create mode 100644 cde/include/Xm/Imakefile
 create mode 100644 cde/include/Xm/XmPrivate.h
 create mode 100644 cde/include/Xm/extractprototype.awk

diff --git a/cde/include/Imakefile b/cde/include/Imakefile
index 174309c..d6fe5b9 100644
--- a/cde/include/Imakefile
+++ b/cde/include/Imakefile
@@ -1,7 +1,11 @@
 XCOMM $TOG: Imakefile /main/4 1997/07/09 10:03:24 samborn $
 #define PassCDebugFlags /**/
+#define IHaveSubdirs
 
 HEADERS = hpversion.h EUSCompat.h
+SUBDIRS = Xm
+
+MakeSubdirs($(SUBDIRS))
 
 all::
 
diff --git a/cde/include/Xm/Imakefile b/cde/include/Xm/Imakefile
new file mode 100644
index 000..b1b15ce
--- /dev/null
+++ b/cde/include/Xm/Imakefile
@@ -0,0 +1,23 @@
+XCOMM
+XCOMM  Generate XmPrivate.h containing ANSI C 
+XCOMM  function prototypes extracted from the private
+XCOMM  include headers files 
+XCOMM  
+XCOMM  libXm source from Motif (lib/Xm subdirectory)
+XCOMM  needs to be available in ../../imports/motif/lib/Xm
+XCOMM
+
+HEADERS = XmPrivate.h
+ALLHEADERS = *.h
+
+includes:: $(HEADERS)
+
+BuildIncludes($(HEADERS),Xm,..)
+
+XmPrivate.h: extractprototype.awk
+   awk -f extractprototype.awk $(MLIBSRC)/Xm/$(ALLHEADERS) > $@
+
+depend::
+
+clean::
+
diff --git a/cde/include/Xm/XmPrivate.h b/cde/include/Xm/XmPrivate.h
new file mode 100644
index 000..65cb9a5
--- /dev/null
+++ b/cde/include/Xm/XmPrivate.h
@@ -0,0 +1,129 @@
+/*
+ *
+ * PRIVATE MOTIF FUNCTIONS
+ * Declarations extracted from Open Motif header files
+ *
+ */
+
+#include 
+#ifdef __cplusplus
+extern "C" {
+#endif
+/* Extracted from BaseClassI.h */
+extern void _XmPushWidgetExtData( 
+Widget widget,
+XmWidgetExtData data,
+#if NeedWidePrototypes
+unsigned int extType) ;
+#else
+unsigned char extType) ;
+#endif /* NeedWidePrototypes */
+extern void _XmPopWidgetExtData( 
+Widget widget,
+XmWidgetExtData *dataRtn,
+#if NeedWidePrototypes
+unsigned int extType) ;
+#else
+unsigned char extType) ;
+#endif /* NeedWidePrototypes */
+/* Extracted from MenuStateI.h */
+extern void _XmSetInDragMode( 
+Widget widget,
+#if NeedWidePrototypes
+int mode) ;
+#else
+Boolean mode) ;
+#endif /* NeedWidePrototypes */
+/* Extracted from MenuUtilI.h */
+extern int _XmGrabPointer( 
+Widget widget,
+int owner_events,
+unsigned int event_mask,
+int pointer_mode,
+int keyboard_mode,
+Window confine_to,
+Cursor cursor,
+Time time) ;
+/* Extracted from SyntheticI.h */
+extern void _XmExtGetValuesHook( 
+Widget w,
+ArgList args,
+Cardinal *num_args) ;
+extern void _XmGadgetImportSecondaryArgs( 
+Widget w,
+ArgList args,
+Cardinal *num_args) ;
+/* Extracted from TextStrSoI.h */
+extern char  * _XmStringSourceGetString(XmTextWidget tw,
+   XmTextPosition from,
+   XmTextPosition to,
+#if NeedWidePrototypes
+   int want_wchar);
+#else
+Boolean want_wchar);
+#endif /* NeedWidePrototypes */
+/* Extracted from TravActI.h */
+extern void _XmEnterGadget( 
+Widget wid,
+XEvent *event,
+String *params,
+Cardinal *num_params) ;
+extern void _XmLeaveGadget( 
+Widget wid,
+XEvent *event,
+String *params,
+Cardinal *num_params) ;
+extern void _XmFocusInGadget( 
+Widget wid,
+XEvent *event,
+String *params,
+Cardinal *num_params) ;
+extern void _XmFocusOutGadget( 
+Widget wid,
+XEvent *event,
+String *params,
+Cardinal *num_pa

[cdesktopenv-devel] [PATCH 35/35] DtWidget: Improve portability of Motif interface

2012-08-30 Thread Marcin Cieslak
- Add missing includes and prototypes
- Improve type compatibility
- Use  for unofficial libXm headers

With this patch, dtpad no longer crashes on startup
on FreeBSD/amd64 because of a truncated 64-bit pointer.
---
 cde/lib/DtWidget/ComboBox.c  |4 
 cde/lib/DtWidget/Control.c   |6 --
 cde/lib/DtWidget/DialogBox.c |4 ++--
 cde/lib/DtWidget/DtSvcInternal.h |2 ++
 cde/lib/DtWidget/EditAreaData.c  |2 +-
 cde/lib/DtWidget/EditCalls.c |1 +
 cde/lib/DtWidget/Editor.c|   13 +++--
 cde/lib/DtWidget/Icon.c  |   27 +++
 cde/lib/DtWidget/Imakefile   |2 +-
 cde/lib/DtWidget/MenuButton.c|7 +--
 cde/lib/DtWidget/NewCvt.c|1 +
 cde/lib/DtWidget/SearchCalls.c   |4 
 cde/lib/DtWidget/SpinBox.c   |   10 +++---
 cde/lib/DtWidget/TitleBox.c  |2 ++
 14 files changed, 60 insertions(+), 25 deletions(-)
 create mode 100644 cde/lib/DtWidget/DtSvcInternal.h

diff --git a/cde/lib/DtWidget/ComboBox.c b/cde/lib/DtWidget/ComboBox.c
index 8b8d6f7..6ad6e9a 100644
--- a/cde/lib/DtWidget/ComboBox.c
+++ b/cde/lib/DtWidget/ComboBox.c
@@ -109,9 +109,13 @@ express or implied warranty.
 #include   /* for INT_MAX */
 #include 
 #include "ComboBoxP.h"
+#include 
 #include 
+#include 
 #include/* for redirecting utility functions */
 #include "DtWidgetI.h" /* for _Dt thread-safety macros */
+/* some unpublished Motif interfaces */
+#include 
 
 /*
  * MotifBc
diff --git a/cde/lib/DtWidget/Control.c b/cde/lib/DtWidget/Control.c
index e937fc3..8722d67 100644
--- a/cde/lib/DtWidget/Control.c
+++ b/cde/lib/DtWidget/Control.c
@@ -59,12 +59,14 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 #include 
 #include 
 #include 
 #include "DtWidgetI.h"
+#include "DtSvcInternal.h"
 
 
 /Public Function Declarations/
@@ -577,7 +579,7 @@ BusyTimeout(
   else
 {
   G_Set (g) = False;
-  G_BlinkTimer (g) = NULL;
+  G_BlinkTimer (g) = 0;
   G_BlinkElapsed (g) = 0;
   G_Busy (g) = 0;
   (*call_callback) ((DtIconGadget) g, G_Callback (g), XmCR_BUSY_STOP, 
NULL);
@@ -830,7 +832,7 @@ Initialize(
   G_ControlType (new) != XmCONTROL_MAIL &&
   G_ControlType (new) != XmCONTROL_MONITOR)
 {
-  G_ControlType (new) == XmCONTROL_NONE;
+  G_ControlType (new) = XmCONTROL_NONE;
 }
   
   if (G_ControlType (new) == XmCONTROL_SWITCH)
diff --git a/cde/lib/DtWidget/DialogBox.c b/cde/lib/DtWidget/DialogBox.c
index 59f337a..ff240f3 100644
--- a/cde/lib/DtWidget/DialogBox.c
+++ b/cde/lib/DtWidget/DialogBox.c
@@ -274,7 +274,7 @@ DtDialogBoxClassRec dtDialogBoxClassRec =
{
XtInheritTranslations,  /* default_translations */
NULL,   /* get_resources*/
-   NULL,   /* num_get_resources*/
+   0,  /* num_get_resources*/
NULL,   /* get_cont_resources   */
0,  /* num_get_cont_resources */
XmInheritParentProcess, /* parent_process   */
@@ -788,7 +788,7 @@ CreateChildren(
XtSetArg (al[ac], XmNlabelString, string[i]);  ac++;
}
XtSetArg (al[ac], XmNchildType, XmBUTTON);  ac++;
-   sprintf (button_name, "%s_%d\0", M_Name (new), i+1);
+   sprintf (button_name, "%s_%d", M_Name (new), i+1);
btn = XmCreatePushButtonGadget ((Widget)new, button_name, al, 
ac);
XtManageChild (btn);
XtAddCallback (btn, XmNactivateCallback,
diff --git a/cde/lib/DtWidget/DtSvcInternal.h b/cde/lib/DtWidget/DtSvcInternal.h
new file mode 100644
index 000..3e4021e
--- /dev/null
+++ b/cde/lib/DtWidget/DtSvcInternal.h
@@ -0,0 +1,2 @@
+/* Additional import */
+extern Pixmap _DtGetMask(Screen *screen, char *image_name);
diff --git a/cde/lib/DtWidget/EditAreaData.c b/cde/lib/DtWidget/EditAreaData.c
index d3ae6f2..5971383 100644
--- a/cde/lib/DtWidget/EditAreaData.c
+++ b/cde/lib/DtWidget/EditAreaData.c
@@ -1266,7 +1266,7 @@ LoadFile(
 */
 loadError = Check4EnoughMemory( file_length );
if (loadError == DtEDITOR_INSUFFICIENT_MEMORY)
- returnVal == loadError;
+ returnVal = loadError;
else {
 
  /* 
diff --git a/cde/lib/DtWidget/EditCalls.c b/cde/lib/DtWidget/EditCalls.c
index 8d3d6a7..9a9b29e 100644
--- a/cde/lib/DtWidget/EditCalls.c
+++ b/cde/lib/DtWidget/EditCalls.c
@@ -49,6 +49,7 @@
 
 #include "EditorP.h"
 #include "DtWidgetI.h"
+#include   /* _XmStringSourceGetString */
 
 void
 _DtEditorResetUndo(
diff --git a/cde/lib/DtWidget/Editor.c b/cde/lib/DtWidget/Editor.c
index 431dbb5..09718bd 100644
--- a/cde/lib/DtWidget/Editor.c
+++ b/cde/lib/DtWidget/Editor.c
@@ -69,6 +69,7 @@
 # define NO_putwc
 #elif defined(CSRG_

[cdesktopenv-devel] [PATCH 34/35] Fix warnings in dtwm

2012-08-30 Thread Marcin Cieslak
- Improve pointer/int compatibility
- Include unpublished Dt headers in Dt
- Use  for unpublished Motif functions

There are still warnings left generated because
ElementValue.parsed_value should really be a union.

There are also some warnings left because of XtPointer
casting and some unused variables and functions.
---
 cde/programs/dtwm/Button.c|9 +++---
 cde/programs/dtwm/Callback.c  |   11 +---
 cde/programs/dtwm/DataBaseLoad.c  |   31 ++--
 cde/programs/dtwm/DataBaseLoad.h  |1 +
 cde/programs/dtwm/Dt/shellutils.h |   56 +
 cde/programs/dtwm/DtSvcInternal.h |2 ++
 cde/programs/dtwm/Parse.c |   12 
 cde/programs/dtwm/PopupMenu.c |5 ++--
 cde/programs/dtwm/Print.c |2 +-
 cde/programs/dtwm/UI.c|8 +++---
 cde/programs/dtwm/UI.h|5 
 cde/programs/dtwm/WmBackdrop.c|   17 ++-
 cde/programs/dtwm/WmCDecor.c  |2 +-
 cde/programs/dtwm/WmEvent.c   |6 ++--
 cde/programs/dtwm/WmFP.c  |   10 +--
 cde/programs/dtwm/WmFunction.c|5 ++--
 cde/programs/dtwm/WmGraphics.c|2 +-
 cde/programs/dtwm/WmHelp.c|   34 +++---
 cde/programs/dtwm/WmIPC.c |3 +-
 cde/programs/dtwm/WmIPC.h |7 +
 cde/programs/dtwm/WmIconBox.c |6 ++--
 cde/programs/dtwm/WmInitWs.c  |   23 +++
 cde/programs/dtwm/WmMain.c|1 +
 cde/programs/dtwm/WmManage.c  |   17 ---
 cde/programs/dtwm/WmParse.c   |   10 +++
 cde/programs/dtwm/WmParse.h   |2 +-
 cde/programs/dtwm/WmProperty.c|6 ++--
 cde/programs/dtwm/WmProperty.h|1 +
 cde/programs/dtwm/WmProtocol.c|2 +-
 cde/programs/dtwm/WmResParse.c|   54 +--
 cde/programs/dtwm/WmResource.c|6 ++--
 cde/programs/dtwm/WmSignal.c  |3 ++
 cde/programs/dtwm/WmWinConf.c |3 +-
 cde/programs/dtwm/WmWinInfo.c |7 +++--
 cde/programs/dtwm/WmWinList.c |5 ++--
 cde/programs/dtwm/WmWrkspace.c|   20 ++---
 cde/programs/dtwm/WmWrkspace.h|1 +
 37 files changed, 235 insertions(+), 160 deletions(-)
 create mode 100644 cde/programs/dtwm/Dt/shellutils.h
 create mode 100644 cde/programs/dtwm/DtSvcInternal.h

diff --git a/cde/programs/dtwm/Button.c b/cde/programs/dtwm/Button.c
index 9cfad52..1f406a3 100644
--- a/cde/programs/dtwm/Button.c
+++ b/cde/programs/dtwm/Button.c
@@ -43,6 +43,9 @@ static char SCCSID[] = "OSF/Motif: @(#)Button.c   1.19 
95/05/01";
 #include 
 #include 
 
+#include "DtSvcInternal.h"   /* _DtGetMask */
+#include /* _XmFocusInGadget, _XmFocusOutGadget, 
_XmSocorro */
+
 #define DELAY_DEFAULT 100  
 
 static void Initialize( 
@@ -377,7 +380,6 @@ UpdateGCs(
 {
DtButtonGadget bg = (DtButtonGadget) w ;
XmManagerWidget mw = (XmManagerWidget) XtParent(w) ;
-   XGCValues values;
 
XtReleaseGC ((Widget) mw, bg->button.gc_normal);
XtReleaseGC ((Widget) mw, bg->button.gc_background);
@@ -404,7 +406,6 @@ Redisplay(
 Region region )
 {
 DtButtonGadget bg = (DtButtonGadget) w;
-XmManagerWidget mw = (XmManagerWidget) XtParent(w);
 Dimension  s_t = bg -> gadget.shadow_thickness;
 Dimension  h_t = bg -> gadget.highlight_thickness;
 Position   x;
@@ -510,11 +511,9 @@ SetValues(
 
 {
DtButtonGadget  current = (DtButtonGadget) current_w;
-   DtButtonGadget  request = (DtButtonGadget) request_w;
DtButtonGadget  new_g = (DtButtonGadget) new_w;
XmManagerWidget mw = (XmManagerWidget) XtParent(new_w);
Boolean  returnFlag = FALSE;
-   Cursor   cursor;
 
G_EventMask (new_g) = (XmARM_EVENT | XmACTIVATE_EVENT |
 XmMULTI_ARM_EVENT | XmMULTI_ACTIVATE_EVENT |
@@ -648,7 +647,6 @@ Activate(
 {
DtButtonGadget bg = (DtButtonGadget) w ;
DtButtonCallbackStruct call_value;
-   Dimension bw = G_BorderWidth(bg);
 
if (!B_Armed (bg))
   return;
@@ -844,6 +842,7 @@ VisualChange(
else
 return (False);
 }
+return (False);
 }
 
 /
diff --git a/cde/programs/dtwm/Callback.c b/cde/programs/dtwm/Callback.c
index 3ea47a4..9e40a61 100644
--- a/cde/programs/dtwm/Callback.c
+++ b/cde/programs/dtwm/Callback.c
@@ -54,6 +54,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include 
 #include 
@@ -67,7 +68,9 @@
 #include "UI.h"
 
 #include "WmGlobal.h"
+#include "WmHelp.h"
 #include "WmResNames.h"
+#include "WmResParse.h"
 #include "WmFunction.h"
 
 
@@ -1865,7 +1868,7 @@ DropCB (Widgetw,
  if (save_name != NULL)
 drop_action->action_name = save_name;
 
- control_data->operation = NULL;
+ control_data->operation = 0;
 
  return;
   }
@@ -1878,7 +1881,7 @@ DropCB (Widgetw,
   if (save_name != NULL)
  drop_action->action_name = save_name;
 
-  control_data

Re: [cdesktopenv-devel] [PATCH 33/35] Introduce

2012-08-30 Thread Marcin Cieslak
>> Jon Trulson  wrote:
> On Fri, 31 Aug 2012, Marcin Cieslak wrote:
>
>> We need ANSI C prototypes of certain Motif
>> functions that are not published in the official
>> header files.
>>
>>  header file contains
>> the prototypes extracted from the Motif source.
>>
>
> Applied, though I did make one chage - I removed the includes::
> XmPrivate directive in the Imakefile - it was causing it to try to
> build it leaving a near empty file.  To regen, just remove the file,
> then do a make XmPrivate.h, which should work.

I noticed that when my links where not correct (it generated just
few lines) - this is because stdout file is not clobbered on
awk failure.

I will try to rectify this so we can have XmPrivate.h back there :)

If there any further problems with this, I think they should be 
fixed as well.

//Marcin


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] Allow building on FreeBSD

2012-09-06 Thread Marcin Cieslak
- build shared libraries with major number only (libtt.so.2)
- don't build dtlogin and dtinfo

FreeBSD support for the installer:
- work around awk issue
- create post_install FreeBSD scripts
- install only cmsd on /etc/inetd.conf
  skip dtspc and ttdbserver for now

Note to users: please check
if you are affected by awk bug
in udbParseLib.awk if you can.
---
 cde/.gitignore |   13 +
 cde/admin/IntegTools/dbTools/installCDE.src|   17 +-
 cde/admin/IntegTools/dbTools/udbParseLib.awk   |7 +
 cde/admin/IntegTools/post_install/Imakefile|1 +
 .../IntegTools/post_install/freebsd/Imakefile  |   65 
 .../IntegTools/post_install/freebsd/configMin.src  |  257 +++
 .../IntegTools/post_install/freebsd/configRun.src  |  331 
 .../post_install/freebsd/configShlibs.src  |  109 +++
 .../IntegTools/post_install/freebsd/configTT.src   |  150 +
 cde/config/cf/FreeBSD.cf   |9 +-
 cde/config/cf/bsdLib.rules |4 +-
 cde/databases/CDE-SHLIBS.src   |  127 
 cde/programs/Imakefile |   21 +-
 13 files changed, 1099 insertions(+), 12 deletions(-)
 create mode 100644 cde/admin/IntegTools/post_install/freebsd/Imakefile
 create mode 100755 cde/admin/IntegTools/post_install/freebsd/configMin.src
 create mode 100755 cde/admin/IntegTools/post_install/freebsd/configRun.src
 create mode 100755 cde/admin/IntegTools/post_install/freebsd/configShlibs.src
 create mode 100755 cde/admin/IntegTools/post_install/freebsd/configTT.src

diff --git a/cde/.gitignore b/cde/.gitignore
index 3d34ffa..6db7d00 100644
--- a/cde/.gitignore
+++ b/cde/.gitignore
@@ -25,6 +25,19 @@ admin/IntegTools/post_install/*.list
 admin/IntegTools/post_install/*.lst
 admin/IntegTools/post_install/linux
 
+admin/IntegTools/post_install/freebsd/CDE-MIN.list
+admin/IntegTools/post_install/freebsd/CDE-MIN.lst
+admin/IntegTools/post_install/freebsd/CDE-RUN.list
+admin/IntegTools/post_install/freebsd/CDE-RUN.lst
+admin/IntegTools/post_install/freebsd/CDE-SHLIBS.list
+admin/IntegTools/post_install/freebsd/CDE-SHLIBS.lst
+admin/IntegTools/post_install/freebsd/CDE-TT.list
+admin/IntegTools/post_install/freebsd/CDE-TT.lst
+admin/IntegTools/post_install/freebsd/configMin
+admin/IntegTools/post_install/freebsd/configRun
+admin/IntegTools/post_install/freebsd/configShlibs
+admin/IntegTools/post_install/freebsd/configTT
+
 admin/IntegTools/post_install/configDemos
 admin/IntegTools/post_install/configFonts
 admin/IntegTools/post_install/configHelp
diff --git a/cde/admin/IntegTools/dbTools/installCDE.src 
b/cde/admin/IntegTools/dbTools/installCDE.src
index 8e64bef..9531ee8 100755
--- a/cde/admin/IntegTools/dbTools/installCDE.src
+++ b/cde/admin/IntegTools/dbTools/installCDE.src
@@ -51,7 +51,7 @@ REVISION="$(echo "$Revision: /main/20 $" | awk '{print $2}')"
 
 Log()
 {
-  echo "$1" | tee -a $LOGFILE
+  /bin/echo "$1" | tee -a $LOGFILE
 }
 
 MakeTarball()
@@ -210,6 +210,14 @@ CleanDaemons()
 elif [ "$PLATFORM" = openbsd ]
 then
   true
+elif [ "$PLATFORM" = freebsd ]
+then
+  ps axo pid,comm | grep $i > /tmppsout
+  if [ -s /tmp/tmppsout ]
+  then
+awk '{print "kill " $1}' /tmp/tmppsout | /bin/csh -f
+sleep 2
+  fi
 else
   ps -ef | grep $i | grep -v grep >/tmp/tmppsout
   if [ -s /tmp/tmppsout ]
@@ -240,6 +248,9 @@ RestartInetd()
   elif [ "$PLATFORM" = "openbsd" ]
   then
 true
+  elif [ "$PLATFORM" = "freebsd" ]
+  then
+/etc/rc.d/inetd onestart
   else
 #ifdef hpV4
 /usr/sbin/inetd 
@@ -543,6 +554,10 @@ XCOMM
   then
 PLATFORM="linux"
 PLATFORM_SCRIPT_DIR=""
+  elif [ $BUILDSYSTEM = "FreeBSD" ];
+  then
+PLATFORM="freebsd"
+PLATFORM_SCRIPT_DIR="freebsd"
   elif [ $BUILDSYSTEM = "OpenBSD" ];
   then
 PLATFORM="openbsd"
diff --git a/cde/admin/IntegTools/dbTools/udbParseLib.awk 
b/cde/admin/IntegTools/dbTools/udbParseLib.awk
index 8669196..d1399af 100644
--- a/cde/admin/IntegTools/dbTools/udbParseLib.awk
+++ b/cde/admin/IntegTools/dbTools/udbParseLib.awk
@@ -268,6 +268,13 @@ function tokenize() {
printf(" ") > DeBugFile
print "Entering function tokenize:" > DeBugFile
}
+   # Workaround for a strange awk bug, seen on FreeBSD
+   # and results in .db files generated with
+   #   Syntax ERROR line: 10 of file: CDE-INC.udb
+   #   Missing initial {
+   #
+   DUMMY = $0
+
# Skip blank/comment lines
while ( NF == 0 || $0 ~ /^[ ]*#/  ) {
if ( (getline) <= 0 ) {
diff --git a/cde/admin/IntegTools/post_install/Imakefile 
b/cde/admin/IntegTools/post_install/Imakefile
index 3b6bc43..b0dcbf8 100644
--- a/cde/admin/IntegTools/post_install/Imakefile
+++ b/cde/admin/IntegTools/post_install/Imakefile
@@ -25,6 +25,7 @@ PLATFORM = openbsd
 #endif
 #ifdef FreeBSDArchi

Re: [cdesktopenv-devel] [PATCH] Allow building on FreeBSD

2012-09-07 Thread Marcin Cieslak
On Thu, 6 Sep 2012, Ulrich Wilkens wrote:

> Hi, I have a little remark to programs/Imakefile

> It's not necessary to disable dtlogin on FreeBSD. Yesterday I submitted a
> patch for it (and for dtcm). It compiles now and it runs, tested on 32bit and
> 64bit. And why did you introduce a new variable DTCMDIR if it always has the
> same value?

Yes, I've had DTMCMDIR in my FreeBSD patches for a long time
since it didn't work until you have provided the fix (thanks!).
It was just a last minute change to my copy of the file
to enable dtcm again as I had time to test it (I also
enabled adding rpc.cmsd to /etc/inetd.conf in the installer).

I didn't have time to build and test dtlogin so it wasn't
in my patch yet.

rpc.cmsd behaves strangely - it does not work after installation
(and HUP-ing inetd) but needs to be restarted again to work.

I have switched my unofficial Git repository to point to the
current master. I have updated wiki to tell people to use
the master git repository instead.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] FreeBSD: Fix dtlogin failsafe session

2012-09-07 Thread Marcin Cieslak
We need to have /usr/local as the proper
X11 prefix to start mwm and xterm
---
 cde/programs/dtlogin/config/Xfailsafe.src |4 
 cde/programs/dtlogin/session.c|2 ++
 2 files changed, 6 insertions(+)

diff --git a/cde/programs/dtlogin/config/Xfailsafe.src 
b/cde/programs/dtlogin/config/Xfailsafe.src
index b0c60ca..45f4695 100644
--- a/cde/programs/dtlogin/config/Xfailsafe.src
+++ b/cde/programs/dtlogin/config/Xfailsafe.src
@@ -44,6 +44,7 @@ XCOMM  emulator.
$XDIR/xterm -C -ls
 #else
 
+
 XCOMM
 XCOMM  Global variables
 XCOMM
@@ -56,6 +57,9 @@ XCOMM
 #if defined(linux)
XDIR=/usr/bin
 #endif
+#if defined(__FreeBSD__)
+   XDIR=/usr/local/bin
+#endif
 
 $XDIR/xsetroot -default &
 
diff --git a/cde/programs/dtlogin/session.c b/cde/programs/dtlogin/session.c
index 57e7394..41cf26d 100644
--- a/cde/programs/dtlogin/session.c
+++ b/cde/programs/dtlogin/session.c
@@ -1652,6 +1652,8 @@ StartClient( struct verify_info *verify, struct display 
*d, int *pidp )
 failsafeArgv[i++] = "/usr/X/bin/xterm";
 #elif defined(__hpux)
failsafeArgv[i++] = "/usr/bin/X11/hpterm";
+#elif defined(CSRG_BASED)
+   failsafeArgv[i++] = "/usr/local/bin/xterm";
 #else
failsafeArgv[i++] = "/usr/bin/X11/xterm";
 #endif
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] git am question (was: FreeBSD: Fix dtlogin failsafe session)

2012-09-09 Thread Marcin Cieslak
On Fri, 7 Sep 2012, Jon Trulson wrote:

> On Fri, 7 Sep 2012, Marcin Cieslak wrote:
> 
> > We need to have /usr/local as the proper
> > X11 prefix to start mwm and xterm
> 
> Applied.

Thanks!

I have a git question here:

My patch was 87ce24fc6ae07be01dd3bf9bd1ed569433654803
with "Date: Fri, 7 Sep 2012 23:02:46 +0200"
but was stored in the master (unchanged) as
bd70163b09ff59331bceba9506c7cc51962571f1 with
"Date: Fri Sep 7 23:04:44 2012 +0200"

which is the date of the email. Unfortunate
side effect is that my branch is "behind 1 ahead 1"
of master and the change needs to "merged"
according to git, producing additional 2 commits.

Is this because of the default "git am" behaviour? 
(see --ignore-date --commiter-date-is-author-date 
in git-am(1))?

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] git am question (was: FreeBSD: Fix dtlogin failsafe session)

2012-09-09 Thread Marcin Cieslak
On Sun, 9 Sep 2012, Jon Trulson wrote:

> I wouldn't think so, since this is how it's been working from the
> beginning... 

>From the very beginning merged commits where always different
from my commits, but that didn't matter much since I was working
on a different branch by parent IDs were different. Now, once
I switched to work only on master *and* taking into account
that no other commits slipped in between, my commit *should*
be the same in my master and your master.

> One possibility:
> 
> [apply]
> whitespace = fix

No, since the when doing "git diff" between those the output is empty.
So that means some commit metadata are different - a parent commit,
date, email addresses.

> Is it possible that it's caused by a failure to pull before making the
> change/commit?

Don't think so.

> What two 'new' commits were created?

commit 1e4e442df186df4e5319f7bd31b4e8e217dec49a
Merge: 87ce24f bd70163
Author: Marcin Cieslak 
Date:   Sun Sep 9 10:57:30 2012 +0200

Merge remote-tracking branch 'origin/master'

commit bd70163b09ff59331bceba9506c7cc51962571f1
Author: Marcin Cieslak 
Date:   Fri Sep 7 23:04:44 2012 +0200

FreeBSD: Fix dtlogin failsafe session

We need to have /usr/local as the proper
X11 prefix to start mwm and xterm

and the next one on my master (my original change):

commit 87ce24fc6ae07be01dd3bf9bd1ed569433654803
Author: Marcin Cieslak 
Date:   Fri Sep 7 23:02:46 2012 +0200

FreeBSD: Fix dtlogin failsafe session

We need to have /usr/local as the proper
X11 prefix to start mwm and xterm

The common base is:

commit 1a51479e382c29a4859b16e9e1a060c06130bd2d
Author: Jon Trulson 
Date:   Thu Sep 6 13:33:58 2012 -0600

add HISTORY file



Looking at the internal structure of the commit
objects they look like:

Commit 87ce24fc6ae07be01dd3bf9bd1ed569433654803:

commit 328tree a879e80682ec2d04d7130c7350c5d63b85066e98
parent 1a51479e382c29a4859b16e9e1a060c06130bd2d
author Marcin Cieslak  1347051766 +0200
committer Marcin Cieslak  1347051766 +0200

FreeBSD: Fix dtlogin failsafe session

We need to have /usr/local as the proper
X11 prefix to start mwm and xterm

Commit bd70163b09ff59331bceba9506c7cc51962571f1:

commit 324tree a879e80682ec2d04d7130c7350c5d63b85066e98
parent 1a51479e382c29a4859b16e9e1a060c06130bd2d
author Marcin Cieslak  1347051884 +0200
committer Jon Trulson  1347060772 -0600

FreeBSD: Fix dtlogin failsafe session

We need to have /usr/local as the proper
X11 prefix to start mwm and xterm


So the trees and parents are identifcal, only the date
and the commiter email address is different.

Looks like things need to be this way in the
git email patch workflow.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] git am question (was: FreeBSD: Fix dtlogin failsafe session)

2012-09-09 Thread Marcin Cieslak
On Sun, 9 Sep 2012, Jon Trulson wrote:

> How did you get this output?

On my master, being the same as the upstream
master at 1a51479e382c29a4859b16e9e1a060c06130bd2d
I have added necessary changes and commited them.

This way 87ce24fc6ae07be01dd3bf9bd1ed569433654803 was
created. Then I did:

git format-patch HEAD^ -o  --start mysequencenumber

and then

git send-email 

After it got accepted and merged, I did:

git fetch --all
git merge origin/master

and this way "git log" shows my commit (87ce24fc)
plus two extra, resulting from the merge.

> > commit 328tree a879e80682ec2d04d7130c7350c5d63b85066e98
> 
>  ^^^ ?

Sorry, I should have explained more: this is a raw 
dump of the decopressed contents of the actual git object.

I have obtained those dumps using the commands

zpipe -d < .git/objects/87/ce24fc6ae07be01dd3bf9bd1ed569433654803 
zpipe -d < .git/objects/bd/70163b09ff59331bceba9506c7cc51962571f1

I did this because SHA1 of the output of zpipe (simple
zlib decompressor, attached at the end of this email) 
becomes the official identifier of this object:

zpipe -d < .git/objects/87/ce24fc6ae07be01dd3bf9bd1ed569433654803 | sha1
87ce24fc6ae07be01dd3bf9bd1ed569433654803
zpipe -d < .git/objects/bd/70163b09ff59331bceba9506c7cc51962571f1 | sha1
bd70163b09ff59331bceba9506c7cc51962571f1

Internal format of git object contains of the object type
(here 'commit') written in ASCII followed by space and the length
of the rest of the object (here 328) and a '\0'. Then you have
a word "tree" and SHA-1 of the tree (state of files). It is
the same in case of those two commits, which means those commits
result in the same contents of all files and directories.

> Is it possible that you are seeing two commits - the one I applied to
> master, and the one you applied to your dev branch?

Yes, both ended up in my master (one because I committed it,
the other because I imported what was applied).

> I just do not know what the issue is - I haven't done anything
> different - aside from creating a tag before your commit.  Not sure
> why that would affect anything here.

I try to understand why my commit gets changed after it is included
in master. Most probably my understanding of the email workflow
is inadequate.

> The the need to merge (hence the 'merge' commits) will always happen.
> But I have not heard of this particular problem before.
> 
> To be clear, a 'git log' shows this commit twice?  And this is while
> you are on a checked out master?

"git log" shows two commits with the same description 
- you can see it here:

http://sourceforge.net/u/saperski/cde-freebsd/ci/1e4e442df186df4e5319f7bd31b4e8e217dec49a/log/

What I will do from now on - always work on a different branch
out of master and commit my changes there. This way my master
will stay clean (the exact copy of the official repository).

Below is the source of zpipe, needs to be compiled against zlib
(cc -o zpipe zpipe.c -lz on most systems).

//Marcin

/* zpipe.c: example of proper use of zlib's inflate() and deflate()
   Not copyrighted -- provided to the public domain
   Version 1.2  9 November 2004  Mark Adler */

/* Version history:
   1.0  30 Oct 2004  First version
   1.1   8 Nov 2004  Add void casting for unused return values
 Use switch statement for inflate() return values
   1.2   9 Nov 2004  Add assertions to document zlib guarantees
   1.3   6 Apr 2005  Remove incorrect assertion in inf()
 */

#include 
#include 
#include 
#include "zlib.h"

#define CHUNK 16384

/* Compress from file source to file dest until EOF on source.
   def() returns Z_OK on success, Z_MEM_ERROR if memory could not be
   allocated for processing, Z_STREAM_ERROR if an invalid compression
   level is supplied, Z_VERSION_ERROR if the version of zlib.h and the
   version of the library linked do not match, or Z_ERRNO if there is
   an error reading or writing the files. */
int def(FILE *source, FILE *dest, int level)
{
int ret, flush;
unsigned have;
z_stream strm;
char in[CHUNK];
char out[CHUNK];

/* allocate deflate state */
strm.zalloc = Z_NULL;
strm.zfree = Z_NULL;
strm.opaque = Z_NULL;
ret = deflateInit(&strm, level);
if (ret != Z_OK)
return ret;

/* compress until end of file */
do {
strm.avail_in = fread(in, 1, CHUNK, source);
if (ferror(source)) {
(void)deflateEnd(&strm);
return Z_ERRNO;
}
flush = feof(source) ? Z_FINISH : Z_NO_FLUSH;
strm.next_in = in;

/* run deflate() on input until output buffer not full, finish
   compression if all of source has been read in */
do {
strm.avail_out = CHUNK;
strm.next_out = out;
ret = deflate(&strm, flush);/* no bad return value */
assert(ret != Z_STREAM_ERROR);  /* state not clobbered */
have = CHUNK - strm.avail_out;
if (fwrite(out, 1, have, dest) != have || ferror(dest)) {
  

Re: [cdesktopenv-devel] Fix for dtexec

2012-09-09 Thread Marcin Cieslak
On Sun, 9 Sep 2012, Mike Stroyan wrote:

> The root of the problem is an assumption in dtexec that fstat will report the
> number of readable
> characters in a pipe as the st_size.  Recent linux kernels always return 0 for
> st_size of a pipe.

Can we make it conditional on Linux only?
It seems that BSDs and Solaris return number of bytes in 
the pipe as expected by dtexec.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] FreeBSD: Don't set MANPATH, use OS configuration

2012-09-10 Thread Marcin Cieslak
- make installer to set up man(1) paths using /usr/local/etc/man.d/*
- don't override empty/unset MANPATH with compiled in default
---
 .../IntegTools/post_install/freebsd/configMin.src  |   16 
 cde/programs/dtlogin/config/0060.dtsysenv.src  |2 ++
 cde/programs/dtsearchpath/dtsp/ManSearchPath.C |9 +
 cde/programs/dtsearchpath/libCliSrv/UnixEnv.C  |2 +-
 4 files changed, 28 insertions(+), 1 deletion(-)

diff --git a/cde/admin/IntegTools/post_install/freebsd/configMin.src 
b/cde/admin/IntegTools/post_install/freebsd/configMin.src
index 977ac86..ca848fe 100755
--- a/cde/admin/IntegTools/post_install/freebsd/configMin.src
+++ b/cde/admin/IntegTools/post_install/freebsd/configMin.src
@@ -10,6 +10,7 @@ XCOMM ###
 PRODUCT=CDE
 FILESET=CDE-MIN
 DO_CONFIGURATION=""
+PREFIX=/usr/local
 retval=0
 
 FixEtcServices()
@@ -194,6 +195,17 @@ RemoveMinFiles()
EOF
 }
 
+SetManPath()
+{
+DTMANPATH=CDE_INSTALLATION_TOP/share/man
+echo "MANPATH $DTMANPATH" > ${PREFIX}/etc/man.d/cde.conf
+}
+
+UnSetManPath()
+{
+rm -f ${PREFIX}/etc/man.d/cde.conf
+}
+
 VerifyInstalledFiles()
 {
 echo "Status   modeowner   group   filename"
@@ -227,6 +239,8 @@ XCOMM 
###
 
 : FixEtcInetdDotConf
 
+SetManPath
+
 HASH
 HASH  create the /var/dt/tmp directory for the dtspcd
 HASH
@@ -239,6 +253,8 @@ XCOMM 
###
   elif [ "$OPERATION" = "deconfigure" ]
   then
 
+UnsetManPath
+
 UnfixEtcServices
 
 : UnfixEtcInetdDotConf
diff --git a/cde/programs/dtlogin/config/0060.dtsysenv.src 
b/cde/programs/dtlogin/config/0060.dtsysenv.src
index 1b9a93b..f69919e 100644
--- a/cde/programs/dtlogin/config/0060.dtsysenv.src
+++ b/cde/programs/dtlogin/config/0060.dtsysenv.src
@@ -27,6 +27,7 @@ XCOMM 

 
 #define HASH #
 
+#if !defined(__FreeBSD__)
 HASH
 HASH Source TIMEZONE
 HASH
@@ -55,6 +56,7 @@ if [ -f $MANPATH_FILE -a -r $MANPATH_FILE ]; then
 export MANPATH="$MANPATH:`cat $MANPATH_FILE`"
 fi
 unset MANPATH_FILE
+#endif
 
 XCOMM # eof   #
 
diff --git a/cde/programs/dtsearchpath/dtsp/ManSearchPath.C 
b/cde/programs/dtsearchpath/dtsp/ManSearchPath.C
index b03891d..a1cc948 100644
--- a/cde/programs/dtsearchpath/dtsp/ManSearchPath.C
+++ b/cde/programs/dtsearchpath/dtsp/ManSearchPath.C
@@ -42,6 +42,12 @@ ManSearchPath::ManSearchPath
const char * sep
) : SearchPath(user, envvar, sep)
 {
+#if defined(__FreeBSD__)
+/* Installer on FreeBSD sets up man configuration so that
+ * setting MANPATH is not necessary
+ */
+if (!user->OS()->MANPATH().isNull()) {
+#endif
 if (user->DTMANPATH())
search_path = user->FactoryManPath() + "," + *user->DTMANPATH();
 else
@@ -55,6 +61,9 @@ ManSearchPath::ManSearchPath
 
 NormalizePath();
 TraversePath();
+#if defined(__FreeBSD__)
+}
+#endif
 }
 
 
diff --git a/cde/programs/dtsearchpath/libCliSrv/UnixEnv.C 
b/cde/programs/dtsearchpath/libCliSrv/UnixEnv.C
index e00bb2c..9b34e85 100644
--- a/cde/programs/dtsearchpath/libCliSrv/UnixEnv.C
+++ b/cde/programs/dtsearchpath/libCliSrv/UnixEnv.C
@@ -83,7 +83,7 @@ UnixEnvironment::UnixEnvironment()
 #elif defined(__OpenBSD__)
manpath = 
"/usr/share/man:/usr/X11R6/man:/usr/local/man:/usr/ports/infrastructure/man";
 #elif defined(__FreeBSD__)
-   manpath = "/usr/share/man:/usr/local/man";
+   manpath = temp;
 #endif
 else
manpath = temp;
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] BSD: Add /usr/local/bin to the default PATH on login

2012-09-10 Thread Marcin Cieslak
---
 cde/programs/dtlogin/config/Xconfig.src |4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/cde/programs/dtlogin/config/Xconfig.src 
b/cde/programs/dtlogin/config/Xconfig.src
index 2f2d430..16cbe4b 100644
--- a/cde/programs/dtlogin/config/Xconfig.src
+++ b/cde/programs/dtlogin/config/Xconfig.src
@@ -135,8 +135,10 @@ XCOMM  To specify a default user PATH environment variable.
 XCOMM
 XCOMM  Dtlogin*userPath:  
 
-#if defined(linux) || defined(CSRG_BASED)
+#if defined(linux)
 Dtlogin*userPath:  /bin:/usr/bin:/sbin:/usr/sbin:/usr/dt/bin
+#elif defined(CSRG_BASED)
+Dtlogin*userPath:  
/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/dt/bin
 #endif
 
 
-- 
1.7.9.2


--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] Fix for dtexec

2012-09-10 Thread Marcin Cieslak
On Mon, 10 Sep 2012, Marc Balmer wrote:

> yes, why make it conditional if the new code works on all platforms?

Yes, it works for me as well. Sorry for noise.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] Improve MANPATH control

2012-09-17 Thread Marcin Cieslak
* Revert changes to programs/dtsearchpath/libCliSrv/UnixEnv.C
  introduced by c3cb5b8aa6997138dfa06da39142bf793baeae60
  that could have produced disappearing Application Manager
  icons on FreeBSD
* Introduce SearchPath:useSystemPath() virtual method to tell
  dtsearchpath to leave some environment variables alone.

  It is currently overriden for FreeBSD only if the MANPATH
  is empty (system default). Other operating systems
  might want to override it if they prefer to have distribution
  specific control of a search path in effect.

* Symlink /usr/dt/share/man to /usr/dt/man for FreeBSD
  This allows dtsearchpath to actually include /usr/dt/man
  in the MANPATH when MANPATH override is in effect.
---
 cde/databases/CDE-MAN.udb  |4 +++
 cde/programs/dtsearchpath/dtsp/ManSearchPath.C |   33 +++-
 cde/programs/dtsearchpath/dtsp/SearchPath.C|   19 --
 cde/programs/dtsearchpath/dtsp/SearchPath.h|4 +++
 cde/programs/dtsearchpath/libCliSrv/UnixEnv.C  |2 +-
 5 files changed, 47 insertions(+), 15 deletions(-)

diff --git a/cde/databases/CDE-MAN.udb b/cde/databases/CDE-MAN.udb
index fed33d4..6915999 100644
--- a/cde/databases/CDE-MAN.udb
+++ b/cde/databases/CDE-MAN.udb
@@ -1288,6 +1288,10 @@ doc/C/man/man4/mwmrc.4
install_target = /usr/dt/man
type = sym_link
 }
+{ freebsd
+   install_target = /usr/dt/man
+   type = sym_link
+}
 #
 ./share/catman
 { uxp
diff --git a/cde/programs/dtsearchpath/dtsp/ManSearchPath.C 
b/cde/programs/dtsearchpath/dtsp/ManSearchPath.C
index a1cc948..96abf0d 100644
--- a/cde/programs/dtsearchpath/dtsp/ManSearchPath.C
+++ b/cde/programs/dtsearchpath/dtsp/ManSearchPath.C
@@ -42,12 +42,6 @@ ManSearchPath::ManSearchPath
const char * sep
) : SearchPath(user, envvar, sep)
 {
-#if defined(__FreeBSD__)
-/* Installer on FreeBSD sets up man configuration so that
- * setting MANPATH is not necessary
- */
-if (!user->OS()->MANPATH().isNull()) {
-#endif
 if (user->DTMANPATH())
search_path = user->FactoryManPath() + "," + *user->DTMANPATH();
 else
@@ -61,9 +55,6 @@ ManSearchPath::ManSearchPath
 
 NormalizePath();
 TraversePath();
-#if defined(__FreeBSD__)
-}
-#endif
 }
 
 
@@ -97,6 +88,22 @@ void ManSearchPath::MakePath
 }
 }
 
+#if defined(__FreeBSD__)
+/*
+ *  useSystemPath()
+ *
+ * Check whether to leave MANPATH unmodified (or unset)
+ *
+ */
+int ManSearchPath::useSystemPath()
+{
+ if (user->OS()->getEnvironmentVariable("MANPATH").isNull()) {
+   return 1;
+ } else {
+   return 0;
+ }
+}
+#endif
 
 /*
  *  ExportPath()
@@ -106,9 +113,11 @@ void ManSearchPath::MakePath
  */
 void ManSearchPath::ExportPath()
 {
-CString env(GetEnvVar());
-user->OS()->shell()->putToEnv(env,
+if (!useSystemPath()) {
+  CString env(GetEnvVar());
+  user->OS()->shell()->putToEnv(env,
   final_search_path.data());
+}
 }
 
 
@@ -116,7 +125,7 @@ void ManSearchPath::Print()
 {
 printf("%s:\n", GetEnvVar());
 CString sp(GetSearchPath());
-if (!sp.isNull()) {
+if (!useSystemPath() && !sp.isNull()) {
CTokenizedString path (sp,Separator().data());
CString subpath = path.next();
while (!subpath.isNull()) {
diff --git a/cde/programs/dtsearchpath/dtsp/SearchPath.C 
b/cde/programs/dtsearchpath/dtsp/SearchPath.C
index f0dd4a0..5e9d3f8 100644
--- a/cde/programs/dtsearchpath/dtsp/SearchPath.C
+++ b/cde/programs/dtsearchpath/dtsp/SearchPath.C
@@ -329,6 +329,19 @@ int SearchPath::validSearchPath
 return 0;
 }
 
+/*
+ *  useSystemPath()
+ *
+ *This member function verifies whether system environment variable
+ *should be left unmodified, since some other configuraton mechanism
+ *is in effect.
+ *
+ */
+int SearchPath::useSystemPath()
+{
+return 0;
+}
+
 /*
  *  ExportPath()
  *
@@ -340,7 +353,9 @@ void SearchPath::ExportPath()
 CString env(environment_var);
 env += "SEARCHPATH";
 
-user->OS()->shell()->putToEnv(env, final_search_path.data());
+if (!useSystemPath()) {
+  user->OS()->shell()->putToEnv(env, final_search_path.data());
+}
 }
 
 
@@ -354,7 +369,7 @@ void SearchPath::Print()
 {
 printf("%sSEARCHPATH:\n", GetEnvVar());
 CString sp(GetSearchPath());
-if (!sp.isNull()) {
+if (!useSystemPath() && !sp.isNull()) {
CTokenizedString path (sp,Separator().data());
CString subpath = path.next();
while (!subpath.isNull()) {
diff --git a/cde/programs/dtsearchpath/dtsp/SearchPath.h 
b/cde/programs/dtsearchpath/dtsp/SearchPath.h
index 0902590..ee0750d 100644
--- a/cde/

Re: [cdesktopenv-devel] [PATCH] Improve MANPATH control

2012-09-17 Thread Marcin Cieslak
On Mon, 17 Sep 2012, Marcin Cieslak wrote:

> diff --git a/cde/databases/CDE-MAN.udb b/cde/databases/CDE-MAN.udb
> index fed33d4..6915999 100644
> --- a/cde/databases/CDE-MAN.udb
> +++ b/cde/databases/CDE-MAN.udb
> @@ -1288,6 +1288,10 @@ doc/C/man/man4/mwmrc.4
>   install_target = /usr/dt/man
>   type = sym_link
>  }
> +{ freebsd
> + install_target = /usr/dt/man
> + type = sym_link
> +}
>  #

It might be good to do the same for Linux systems
(otherwse /usr/dt/man won't be added to the MANPATH
by dtsearchpath).

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] [PATCH] BSD > BSD|linux: Add /usr/local/bin to the default PATH on login

2012-09-17 Thread Marcin Cieslak
On Mon, 17 Sep 2012, Isaac Dunham wrote:

> Though it might be better to exploit /etc/profile...

Is dtlogin sourcing /etc/profile at all? 

//Marcin



--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] dtfile: Add missing prototypes

2012-09-17 Thread Marcin Cieslak
Add missing prototypes and header files to the dtfile
code in order to move closer towards 64-bit compatibility.

Extract the following functions from Motif internal headers:

_XmGetWidgetExtData
_XmRecordEvent
_XmStringUngenerate
_XmTextFieldSetDestination
_XmGetActiveTopLevelMenu

Extract manually prototypes of the obsolete Motif interface:
_XmHighlightBorder
_XmUnhighlightBorder

Remove XmPrivate.h if extractprototype.awk fails

Make the following header files available via -I:
codelibs/boolean.h
codelibs/pathutils.h
codelibs/shellutils.h
and remove shellutils.h from dtwm directory.
---
 cde/include/Xm/Imakefile   |2 +-
 cde/include/Xm/XmPrivate.h |   22 +++
 cde/include/Xm/extractprototype.awk|5 +++
 cde/lib/DtSvc/DtUtil2/Connect.h|1 +
 cde/lib/DtSvc/include/Imakefile|2 +-
 cde/lib/DtSvc/include/codelibs/Imakefile   |   11 ++
 cde/programs/dtfile/ChangeDir.c|5 ++-
 cde/programs/dtfile/ChangeDirP.c   |2 +
 cde/programs/dtfile/Command.c  |4 ++
 cde/programs/dtfile/Common.c   |4 ++
 cde/programs/dtfile/Desktop.c  |3 ++
 cde/programs/dtfile/Directory.c|   14 ---
 cde/programs/dtfile/DtSvcInternal.h|2 +
 cde/programs/dtfile/Encaps.c   |   12 ++
 cde/programs/dtfile/Encaps.h   |4 ++
 cde/programs/dtfile/File.c |   14 ++-
 cde/programs/dtfile/FileDialog.c   |3 ++
 cde/programs/dtfile/FileManip.c|1 +
 cde/programs/dtfile/FileMgr.c  |4 ++
 cde/programs/dtfile/FileOp.c   |7 +++-
 cde/programs/dtfile/Filter.c   |4 ++
 cde/programs/dtfile/Find.c |   10 +++--
 cde/programs/dtfile/HelpCB.c   |1 +
 cde/programs/dtfile/IconWindow.c   |3 ++
 cde/programs/dtfile/IconicPath.c   |2 +
 cde/programs/dtfile/Main.c |   28 --
 cde/programs/dtfile/Main.h |   51 -
 cde/programs/dtfile/Menu.c |4 ++
 cde/programs/dtfile/MkDir.c|1 +
 cde/programs/dtfile/ModAttr.c  |6 ++-
 cde/programs/dtfile/ModAttrP.c |1 +
 cde/programs/dtfile/MultiView.c|2 +
 cde/programs/dtfile/OverWrite.c|1 +
 cde/programs/dtfile/SharedProcs.c  |2 +
 cde/programs/dtfile/SharedProcs.h  |   13 ++-
 cde/programs/dtfile/Trash.c|   13 ++-
 cde/programs/dtfile/dtcopy/copydialog.c|6 +++
 cde/programs/dtfile/dtcopy/main_dtcopy.c   |4 +-
 cde/programs/dtfile/dtcopy/overwrtdialog.c |2 +
 cde/programs/dtfile/dtcopy/sharedFuncs.c   |3 +-
 cde/programs/dtfile/dtcopy/sharedFuncs.h   |2 +-
 cde/programs/dtwm/Dt/shellutils.h  |   56 
 cde/programs/dtwm/WmResParse.c |2 +-
 43 files changed, 240 insertions(+), 99 deletions(-)
 create mode 100644 cde/lib/DtSvc/include/codelibs/Imakefile
 create mode 100644 cde/programs/dtfile/DtSvcInternal.h
 delete mode 100644 cde/programs/dtwm/Dt/shellutils.h

diff --git a/cde/include/Xm/Imakefile b/cde/include/Xm/Imakefile
index 9047dda..ecf7657 100644
--- a/cde/include/Xm/Imakefile
+++ b/cde/include/Xm/Imakefile
@@ -13,7 +13,7 @@ ALLHEADERS = *.h
 BuildIncludes($(HEADERS),Xm,..)
 
 XmPrivate.h: extractprototype.awk
-   awk -f extractprototype.awk $(MLIBSRC)/Xm/$(ALLHEADERS) > $@
+   awk -f extractprototype.awk $(MLIBSRC)/Xm/$(ALLHEADERS) > $@ || rm -f $@
 
 depend::
 
diff --git a/cde/include/Xm/XmPrivate.h b/cde/include/Xm/XmPrivate.h
index 65cb9a5..cacf9ab 100644
--- a/cde/include/Xm/XmPrivate.h
+++ b/cde/include/Xm/XmPrivate.h
@@ -26,6 +26,13 @@ extern void _XmPopWidgetExtData(
 #else
 unsigned char extType) ;
 #endif /* NeedWidePrototypes */
+extern XmWidgetExtData _XmGetWidgetExtData( 
+Widget widget,
+#if NeedWidePrototypes
+unsigned int extType) ;
+#else
+unsigned char extType) ;
+#endif /* NeedWidePrototypes */
 /* Extracted from MenuStateI.h */
 extern void _XmSetInDragMode( 
 Widget widget,
@@ -44,6 +51,10 @@ extern int _XmGrabPointer(
 Window confine_to,
 Cursor cursor,
 Time time) ;
+/* Extracted from RCMenuI.h */
+extern void _XmGetActiveTopLevelMenu(
+Widget wid,
+Widget *rwid);
 /* Extracted from SyntheticI.h */
 extern void _XmExtGetValuesHook( 
 Widget w,
@@ -53,6 +64,11 @@ extern void _XmGadgetImportSecondaryArgs(
 Widget w,
 ArgList args,
 Cardinal *num_args) ;
+/* Extracted from 

Re: [cdesktopenv-devel] [PATCH] dtfile: Add missing prototypes

2012-09-18 Thread Marcin Cieslak
On Tue, 18 Sep 2012, Jon Trulson wrote:

> Though I've added a follow on patch that disables building XmPrivate.h
> on Linux systems, where it will always fail since linux does not build
> with motif sources symlinked into imports/

Ok, thank you.

I don't think this is a Linux-specfic problem - 
I did specify MLIBSRC in the command line.

Does symplinking of "openmotif-2.3.3/lib"
in to "imports/motif/lib" work for you?

What normally happens in my tree is this:

$ cd $cde/includes/Xm
$ make includes
+ cd ../../exports/include/Xm
+ rm -f XmPrivate.h
+ ln -s ../../../include/Xm/XmPrivate.h .

Is XmPrivate.h being rebuilt all the time in your tree?

Both gmake and BSD make don't touch XmPrivate.h
for me in the fresh checkout.

//Marcin



--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


Re: [cdesktopenv-devel] Regeneration of with XmPrivate.h

2012-09-19 Thread Marcin Cieslak
On Tue, 18 Sep 2012, Jon Trulson wrote:

> On Tue, 18 Sep 2012, Marcin Cieslak wrote:
> 
> Well, it will be a problem for anyone that does not have a built motif
> src tree symlinked into imports...

This is necessary only to developers needing to update XmPrivate.h only.
The build should work without Motif sources at all (and it works for me).

> > Does symplinking of "openmotif-2.3.3/lib"
> > in to "imports/motif/lib" work for you?
> > 
> 
> I'm not sure how that would help... Perhaps you meant motif/include?

No, one needs openmotif-2.3.3/lib/Xm to be accessible because it contains
the "internal" *.h files. But this in only - again - needed
*only* if you modify extractprototype.awk

> During the last git am of your patch, followed by a make World, the
> file was deleted, causing the build to fail.  Probably due to the fact
> that the awk script was updated, and the Imakefile makes XmPrivate.h
> dependant on the awk script.

I cannot reproduce your results - can you send me a full log
of such a build (checking out older version and "git am" on it)?

> I just disabled this altogether in Linux - though I think it should be
> disabled all of the time on all systems.
> 
> IMO, the awk script that generates XmPrivate.h should always only be
> run manually when it's needed, and never automatically.  The only way
> it can ever work automatically is with an openmotif source tree, built
> and symlinked into imports.

make should never regenerate XmPrivate.h unless:
- it is missing
- extractprototype.awk is *newer* than XmPrivate.h

> That will never be the usual case on Linux, and probably most other
> systems as well.  I think fbsd is special in this regard since it's
> all done via the ports system.

We don't do anything with ports here. I have tried now complete
build with BSD make as well as with GNU make. The last one fails
at the end with the "doc" generation (which I will investigate), but both
builds do not re-generated XmPrivate.h at all.

I did the test using:

git clone git://git.code.sf.net/p/cdesktopenv/code clean_cde
cd clean_cde/cde
git checkout -b testam 5e14a88
mkdir -p imports/x11
ln -s /usr/local/bin /usr/local/include /usr/local/lib imports/x11
mkdir -p imports/motif/include
ln -s /usr/local/include/Xm imports/motif/include
git am 
make World

it results in the following in the "include/Xm" directory:

With BSD make:

including in include/Xm...
+ mkdir -p ../../exports/include/Xm
+ cd ../../exports/include/Xm
+ rm -f XmPrivate.h
+ ln -s ../../../include/Xm/XmPrivate.h .
including in ./lib...

With GNU make:

including in include/Xm...
gmake[3]: Entering directory 
`/.amd_mnt/radziecki/a/icybox/tmp/clean_cde/cde/include/Xm'
+ mkdir -p ../../exports/include/Xm
+ cd ../../exports/include/Xm
+ rm -f XmPrivate.h
+ ln -s ../../../include/Xm/XmPrivate.h .
gmake[3]: Leaving directory 
`/.amd_mnt/radziecki/a/icybox/tmp/clean_cde/cde/include/Xm'
gmake[2]: Leaving directory 
`/.amd_mnt/radziecki/a/icybox/tmp/clean_cde/cde/include'
including in ./lib...

File have the same timestamp:

-rw-rw-r--  1 saper  saper   5174 Sep 18 20:56 XmPrivate.h
-rw-rw-r--  1 saper  saper   1728 Sep 18 20:56 extractprototype.awk

so XmPrivate.h *does not* get re-generated and Motif sources
are *not* needed

It is not very unusual to have files generated in the build
this way so I wonder why it fails for you.

Full logs of mine are available here:

http://saper.info/files/cdesktopenv/build_logs/xmprivate-build-log-bsdmake.gz
http://saper.info/files/cdesktopenv/build_logs/xmprivate-build-log-gnumake.gz

I am pretty sure we will be adding more functions
added to XmPrivate.h so I'd love to have all those
problems solved.

//Marcin

--
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] dttypes should not crash on 64-bit system

2012-09-21 Thread Marcin Cieslak
Casting (int) to (char **) will not
prevent crash on a 64-bit system.

A proper ANSI prototype has been added.
---
 cde/programs/util/dttypes/dttypes.c |3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/cde/programs/util/dttypes/dttypes.c 
b/cde/programs/util/dttypes/dttypes.c
index 63ac35b..00ce791 100644
--- a/cde/programs/util/dttypes/dttypes.c
+++ b/cde/programs/util/dttypes/dttypes.c
@@ -56,6 +56,7 @@ staticint rexp_errno = 0;
 #define NL_CAT_LOCALE  0
 #endif 
 
+extern char ** _DtsMMListDb(void);
 static enumerrors
 {
BAD_DB,
@@ -653,7 +654,7 @@ main(int argc, char **argv)
}
else
{
-   dbs = (char **)_DtsMMListDb();
+   dbs = _DtsMMListDb();
for(i = 0; dbs[i]; i++)
{
printf(catgets(dtcatd, 1, 29, "- %s 
\n"),
-- 
1.7.9.2


--
Got visibility?
Most devs has no idea what their production app looks like.
Find out how fast your code is with AppDynamics Lite.
http://ad.doubleclick.net/clk;262219671;13503038;y?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
___
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel


[cdesktopenv-devel] [PATCH] Fix dtfile crash on 64 bit

2012-09-21 Thread Marcin Cieslak
When asking for data using XtVaGetValue()
make sure that there is enough place for
the return value (which is sometimes XtPointer).
Providing pointer to (int) is not enough.

Introduce unions to cast XtPointer into
the requested data type.
---
 cde/programs/dtfile/File.c |2 +-
 cde/programs/dtfile/FileDialog.c   |   26 +-
 cde/programs/dtfile/OverWrite.c|   10 --
 cde/programs/dtfile/dtcopy/utils.c |   17 ++---
 4 files changed, 40 insertions(+), 15 deletions(-)

diff --git a/cde/programs/dtfile/File.c b/cde/programs/dtfile/File.c
index 3d9fba3..9f88b1c 100644
--- a/cde/programs/dtfile/File.c
+++ b/cde/programs/dtfile/File.c
@@ -7193,7 +7193,7 @@ CommitWorkProcUpdates(
/* If not managed yet, manage the file window again */
if (!XtIsManaged((Widget)file_window))
{
- int incr;
+ XtPointer incr;
  Arg args[2];
 
  XtManageChild ((Widget)file_window);
diff --git a/cde/programs/dtfile/FileDialog.c b/cde/programs/dtfile/FileDialog.c
index 6843c33..6961797 100644
--- a/cde/programs/dtfile/FileDialog.c
+++ b/cde/programs/dtfile/FileDialog.c
@@ -192,7 +192,7 @@ ShowRenameFileDialog(
 
   XmUpdateDisplay (w);
 
-  if((int)client_data != 0)
+  if(client_data != 0)
   {
 file_view_data = (FileViewData *)client_data;
 mbar = XtParent(w);
@@ -224,7 +224,7 @@ ShowRenameFileDialog(
   XtSetArg (args[n], XmNallowShellResize, True);  n++;
 
   /* Ignore accelerators when we're insensitive */
-  if((int)client_data == 0)
+  if(client_data == 0)
   {
 if ((file_mgr_rec->menuStates & RENAME) == 0)
   return;
@@ -270,6 +270,10 @@ ShowCopyFileDialog(
char * directory_name;
char * tmpStr, *tempStr;
 
+   union {
+ XtPointer ptr;
+ Dimension dim;
+   } wide;
Dimension f_width, d_width;
 
Widget shell;
@@ -301,7 +305,7 @@ ShowCopyFileDialog(
 
XmUpdateDisplay (w);
 
-   if((int)client_data != 0)
+   if(client_data != 0)
{
   file_view_data = (FileViewData *)client_data;
   mbar = XtParent(w);
@@ -542,16 +546,20 @@ ShowCopyFileDialog(
/*  Make the two labels the same length - maximum.  */
/*  */
 
-   XtVaGetValues(dir_label, XmNwidth, &d_width, NULL);
-   XtVaGetValues(file_label, XmNwidth, &f_width, NULL);
+   XtVaGetValues(dir_label, XmNwidth, &wide.ptr, NULL);
+   d_width = wide.dim;
+   XtVaGetValues(file_label, XmNwidth, &wide.ptr, NULL);
+   f_width = wide.dim;
 
if (d_width > f_width)
XtVaSetValues(file_label, XmNwidth, d_width, NULL);
else
XtVaSetValues(dir_label, XmNwidth, f_width, NULL);
 
-   XtVaGetValues(dir_text, XmNwidth, &d_width, NULL);
-   XtVaGetValues(file_text, XmNwidth, &f_width, NULL);
+   XtVaGetValues(dir_text, XmNwidth, &wide.ptr, NULL);
+   d_width = wide.dim;
+   XtVaGetValues(file_text, XmNwidth, &wide.ptr, NULL);
+   f_width = wide.dim;
 
if (d_width > f_width)
XtVaSetValues(file_text, XmNwidth, d_width, NULL);
@@ -772,7 +780,7 @@ ShowMoveFileDialog(
 
XmUpdateDisplay (w);
 
-   if((int)client_data != 0)
+   if(client_data != 0)
{
   file_view_data = (FileViewData *)client_data;
   mbar = XtParent(w);
@@ -1097,7 +1105,7 @@ ShowLinkFileDialog(
 
XmUpdateDisplay (w);
 
-   if((int)client_data != 0)
+   if(client_data != 0)
{
   file_view_data = (FileViewData *)client_data;
   mbar = XtParent(w);
diff --git a/cde/programs/dtfile/OverWrite.c b/cde/programs/dtfile/OverWrite.c
index e2f1d0b..159848d 100644
--- a/cde/programs/dtfile/OverWrite.c
+++ b/cde/programs/dtfile/OverWrite.c
@@ -1757,9 +1757,15 @@ Create_Action_Area(
 
if (i == actions.defaultAction)
  {
+union {
+  XtPointer ptr;
+  Dimension dim;
+} wide;
 Dimension height, h;
-XtVaGetValues (action_area, XmNmarginHeight, &h, NULL);
-XtVaGetValues (widget, XmNheight, &height, NULL);
+XtVaGetValues (action_area, XmNmarginHeight, &wide.ptr, NULL);
+height = wide.dim;
+XtVaGetValues (widget, XmNheight, &wide.ptr, NULL);
+h = wide.dim;
 
 height +=2 * h;
 XtVaSetValues (action_area,
diff --git a/cde/programs/dtfile/dtcopy/utils.c 
b/cde/programs/dtfile/dtcopy/utils.c
index 196fa43..21ead35 100644
--- a/cde/programs/dtfile/dtcopy/utils.c
+++ b/cde/programs/dtfile/dtcopy/utils.c
@@ -135,9 +135,14 @@ help_callback(
XtPointer call_data)
 {
   char  *helpVolume, *locationId;
+  union {
+XtPointer ptr;
+int num;
+  } wide;
   int   topic;
 
-  topic = (int) client_data;
+  wide.ptr = client_data;
+  topic = wide.num;
   helpVolume = HELP_VOLUME;
 
   switch (topic)
@@ -418,9 +423,15 @@ Create_Action_Area(
 
if (i == actions.defaultAction)
  {
+union { 
+XtPointer ptr;
+Dimension dim;
+} wide;
 Dimension height, h;
-XtV

  1   2   3   >