Re: Compilation and VMS
On Thu, Oct 04, 2001 at 05:02:11PM +0200, Fabien VILLARD wrote: Hello all. At last, a guy tried to play with fvwm 2.4.2 on OpenVMS. The compilation stage had been very difficult, because the code changed a lot since my original port. He got it, though, but doesn't feel brave enough to try the executable today :- My point is : he found a couple of things with the DEC CC compiler that I 'd like to tell you : Compiling [.FVWM]VIRTUAL.C... val[2] = 1; ^ %CC-I-SUBSCRBOUNDS, In this statement, an array is being accessed outside the bounds specified for the array type. at line number 408 in file _ROWDIE$DKA100:[SCRATCH.FVWM.FVWM]VIRTUAL.C;1 Fixed. Compiling [.MODULES.FVWMICONBOX]ICONS.C... item-icon_depth = depth; .^ %CC-W-UNINIT1, The scalar variable depth is fetched but not initialized. And there may be other such fetches of this variable that have not been reported in this compilation. at line number 360 in file _ROWDIE$DKA100:[SCRATCH.FVWM.MODULES.FVWMICONBOX]ICONS.C;1 Creating image [.MODULES.BIN]FVWMICONBOX.EXE... Fixed. Another one : it seems that FvwmBanner doesn't use the XPM macro defined by the configure stage, so it complains during compilation when xpm is not present. That's already fixed in CVS. I attach the description of the modifications he had to make in the build HOWTO I wrote 2 years ago. You may find some intresting things in it. Don't hesitate to ask for more information, but note that I can't access a VMS machine anymore, so I'll have to ask John to make the tests you'll need. Perhaps I'll be able to convince him to join your team as I did 2 years ago. Uh, could you ask him to make a patch from these changes (diff -u if possible)? It's very hard for me to make the right adjustments with only free form sentences as a description. Content-Description: Fvwm.VMS.log SUBJECT: Changes made for VMS build Changes made to fvwm V2.4.2 for successful VMS compile -- - Unpacked kit. - Copied .mms, .opt and config.h to root. Copied vms.% to [.libs] - Modified MAKE_FVWM.MMS: - Defined BaseDirFix, BaseDir. - Removed XpmInclude, XpmLib and all references thereto. - Added blank line after all comment lines ending in -. (MMS seems to take the next line as a contunuation with weird results.) - Edited config.h: - #undef XPM - Added the following, found in acconfig.h /* Define if stroke library is used. */ #undef HAVE_STROKE #ifdef HAVE_STROKE #define STROKE_ARG(x) x, #define STROKE_CODE(x) x #else #define STROKE_ARG(x) #define STROKE_CODE(x) #endif - Edit MAKE_FVWM.MMS: Re-sync with current state of the source (removing stale modules, adding new ones). - Wondering if the typedef for fvwm_msg_type includes reserved words. Added an 'X' to the front of each. - Added #define fd_set_size_t int to config.h. (From successful Unix build; shot in the dark.) - Added #define FVWM_CONFDIR /Sys$Login to config.h. - Ignoring the pointer mismatch and conversion warnings for now. - Closed comment on line previous to #define USEDECOR 1 in config.h that prevented the definition being made. (Took some time to find this one.) - Changing ECHO to XECHO, as done previously in the typedef. - Included: #include builtins.h #define alloca __ALLOCA (There is also a version of alloca included in [.libs]. Not sure yet whether to use or not.) - Added #define SELECT_FD_SET_CAST to config.h. - Removed local version of strcasecmp; Appears to be part of C RTL. - Removed local version of strerror; Appears to be part of C RTL. - Removed local version of strncasecmp; Appears to be part of C RTL. - Removed local version of usleep; Appears to be part of C RTL. - in [.libs]FVWMLIB.H, changed #include Parse.h to libs/Parse.h. Was getting confused with the parse.h in the fvwmbuttons module. - Removed FvwmBanner module; appears too tied into XPM, which I don't have. (Does not use the HAVE_XPM flag.) - Removed #include sys/param.h in FVWMCPP.C; Could not find. Needed? - In FvwmCpp: Replaced: char *cpp_prog = FVWM_CPP; with char *cpp_prog = FVWM_CPP; FVWM_CPP is not defined anywhere. - Removed FvwmGTK module. Includes headers not available. Don't understand what this is. - Removed #include sys/param.h from FVWMM4.C. - Removed #include syslog.h form
Compilation and VMS
Hello all. At last, a guy tried to play with fvwm 2.4.2 on OpenVMS. The compilation stage had been very difficult, because the code changed a lot since my original port. He got it, though, but doesn't feel brave enough to try the executable today :- My point is : he found a couple of things with the DEC CC compiler that I 'd like to tell you : Compiling [.FVWM]VIRTUAL.C... val[2] = 1; ^ %CC-I-SUBSCRBOUNDS, In this statement, an array is being accessed outside the bounds specified for the array type. at line number 408 in file _ROWDIE$DKA100:[SCRATCH.FVWM.FVWM]VIRTUAL.C;1 Compiling [.MODULES.FVWMICONBOX]ICONS.C... item-icon_depth = depth; .^ %CC-W-UNINIT1, The scalar variable depth is fetched but not initialized. And there may be other such fetches of this variable that have not been reported in this compilation. at line number 360 in file _ROWDIE$DKA100:[SCRATCH.FVWM.MODULES.FVWMICONBOX]ICONS.C;1 Creating image [.MODULES.BIN]FVWMICONBOX.EXE... Another one : it seems that FvwmBanner doesn't use the XPM macro defined by the configure stage, so it complains during compilation when xpm is not present. I attach the description of the modifications he had to make in the build HOWTO I wrote 2 years ago. You may find some intresting things in it. Don't hesitate to ask for more information, but note that I can't access a VMS machine anymore, so I'll have to ask John to make the tests you'll need. Perhaps I'll be able to convince him to join your team as I did 2 years ago. Fab. * Ce message et toutes les pieces jointes (ci-apres le message) sont confidentiels et etablis a l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisee est interdite. Tout message electronique est susceptible d'alteration. La SOCIETE GENERALE et ses filiales declinent toute responsabilite au titre de ce message s'il a ete altere, deforme ou falsifie. This message and any attachments (the message) are confidential and intended solely for the addressees. Any unauthorised use or dissemination is prohibited. E-mails are susceptible to alteration. Neither SOCIETE GENERALE nor any of its subsidiaries or affiliates shall be liable for the message if altered, changed or falsified. *SUBJECT:Changes made for VMS build Changes made to fvwm V2.4.2 for successful VMS compile -- - Unpacked kit. - Copied .mms, .opt and config.h to root. Copied vms.% to [.libs] - Modified MAKE_FVWM.MMS: - Defined BaseDirFix, BaseDir. - Removed XpmInclude, XpmLib and all references thereto. - Added blank line after all comment lines ending in -. (MMS seems to take the next line as a contunuation with weird results.) - Edited config.h: - #undef XPM - Added the following, found in acconfig.h /* Define if stroke library is used. */ #undef HAVE_STROKE #ifdef HAVE_STROKE #define STROKE_ARG(x) x, #define STROKE_CODE(x) x #else #define STROKE_ARG(x) #define STROKE_CODE(x) #endif - Edit MAKE_FVWM.MMS: Re-sync with current state of the source (removing stale modules, adding new ones). - Wondering if the typedef for fvwm_msg_type includes reserved words. Added an 'X' to the front of each. - Added #define fd_set_size_t int to config.h. (From successful Unix build; shot in the dark.) - Added #define FVWM_CONFDIR /Sys$Login to config.h. - Ignoring the pointer mismatch and conversion warnings for now. - Closed comment on line previous to #define USEDECOR 1 in config.h that prevented the definition being made. (Took some time to find this one.) - Changing ECHO to XECHO, as done previously in the typedef. - Included: #include builtins.h #define alloca __ALLOCA (There is also a version of alloca included in [.libs]. Not sure yet whether to use or not.) - Added #define SELECT_FD_SET_CAST to config.h. - Removed local version of strcasecmp; Appears to be part of C RTL. - Removed local version of strerror; Appears to be part of C RTL. - Removed local version of strncasecmp; Appears to be part of C RTL. - Removed local version of usleep; Appears to be part of C RTL. - in [.libs]FVWMLIB.H, changed #include Parse.h to libs/Parse.h. Was getting confused with the parse.h in the fvwmbuttons module. - Removed FvwmBanner module; appears too