[cdesktopenv-devel] [PATCH} Adjust cpp location for FreeBSD
>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
--- 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
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
--- 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
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
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
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
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
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
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
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
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
>> 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
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
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
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
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
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
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
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
>> 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
>> 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[]
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
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
* 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)
>> 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[]
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
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
--- 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?
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
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
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
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
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
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)
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
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?
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
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?
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
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
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?
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
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
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
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
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
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
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
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
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
--- 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
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
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
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
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
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?
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
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
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]
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
>> 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
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
--- 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?
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
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
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
--- 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
--- 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?
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
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)
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
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
--- 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
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
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
--- 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
--- 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
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
- 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
- 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
>> 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
- 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
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
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)
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)
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)
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
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
- 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
--- 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
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
* 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
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
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
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
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
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
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
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