Loading ...
Sorry, an error occurred while loading the content.

RE: configure.in script patch for IBM z/OS <<< gvim motif build procedure << motif 1.2 vs motif 2.1 <

Expand Messages
  • Bovy, Stephen
    Patch for configure.in Please see below email Is this ok ?? 2384,2390c2381,2382
    Message 1 of 1 , May 4, 2012
    • 0 Attachment
      Patch for configure.in >> Please see below email >>>

      Is this ok ?? >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

      2384,2390c2381,2382
      < if test "$zOSUnix" = "yes"; then
      < xmheader="Xm/Xm.h"
      < else
      < xmheader="Xm/Xm.h Xm/XpmP.h Xm/JoinSideT.h Xm/TraitP.h Xm/Manager.h
      < Xm/UnhighlightT.h Xm/Notebook.h"
      < fi
      < AC_CHECK_HEADERS($xmheader)

      >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>


      332c332
      < echo " _CC_${ccn}MODE must be set to \"1\"!"
      ---
      > echo " __CC_${ccn}MODE must be set to \"1\"!"
      339,342c339
      < # set CFLAGS for configure process
      < # this will be reset later for config.mk
      < # use haltonmsg to force error for missing H files
      < CFLAGS="$CFLAGS -D_ALL_SOURCE -Wc,float(ieee),haltonmsg(3296)";
      ---
      > CFLAGS="$CFLAGS -D_ALL_SOURCE -Wc,float\\(IEEE\\)";
      2384,2390c2381,2382
      < if test "$zOSUnix" = "yes"; then
      < xmheader="Xm/Xm.h"
      < else
      < xmheader="Xm/Xm.h Xm/XpmP.h Xm/JoinSideT.h Xm/TraitP.h Xm/Manager.h
      < Xm/UnhighlightT.h Xm/Notebook.h"
      < fi
      < AC_CHECK_HEADERS($xmheader)
      ---
      > AC_CHECK_HEADERS(Xm/Xm.h Xm/XpmP.h Xm/JoinSideT.h Xm/TraitP.h Xm/Manager.h \
      > Xm/UnhighlightT.h Xm/Notebook.h)
      2392c2384
      < if test "x$ac_cv_header_Xm_XpmP_h" = x""yes; then
      ---
      > if test $ac_cv_header_Xm_XpmP_h = yes; then
      3652,3656d3643
      <
      < # IBM z/OS reset CFLAGS for config.mk
      < if test "$zOSUnix" = "yes"; then
      < CFLAGS="-D_ALL_SOURCE -Wc,float\(ieee\),dll"
      < fi

      -----Original Message-----
      From: vim_dev@... [mailto:vim_dev@...] On Behalf Of Bovy, Stephen
      Sent: Friday, May 04, 2012 9:04 PM
      To: vim_dev@...
      Cc: MVS OpenEdition (MVS-OE@...)
      Subject: VIM: Configure script patch for IBM z/OS <<< gvim motif build procedure << motif 1.2 vs motif 2.1 <<

      Author : Stephen Bovy

      Background >>

      Problems

      1) The CFLAGS setting had syntax errors during the configure process ( need to remove "escapes" {\\} )
      2) The configure process did not correctly detect missing header files {need to add option to force error on missing .h files haltonmsg(3296) }
      3) New default Motif 2.1 support does not compile (need to externally change lib search paths ) (no change needed ) (see notes below )
      4) New Default Motif 2.1 header detection creates compile and link errors ( need to remove most {Xm} headers )
      5) configure CFLAGS value can-not be used for final config.mk

      Here is the diff >>

      4414c4414
      < if test "$CC" = "cc"; then
      ---
      > if test "$CC" = "cc"; then
      4429c4429
      < echo " __CC_${ccn}MODE must be set to \"1\"!"
      ---
      > echo " _CC_${ccn}MODE must be set to \"1\"!"
      4436c4436
      < CFLAGS="$CFLAGS -D_ALL_SOURCE -Wc,float\\(IEEE\\)";
      ---
      > CFLAGS="$CFLAGS -D_ALL_SOURCE -Wc,float(IEEE),haltonmsg(3296)";
      7400c7400
      < if test "$zOSUnix" = "yes"; then
      ---
      > if test "$zOSUnix" = "yes"; then
      8700,8701c8700,8706
      < for ac_header in Xm/Xm.h Xm/XpmP.h Xm/JoinSideT.h Xm/TraitP.h Xm/Manager.h \
      < Xm/UnhighlightT.h Xm/Notebook.h
      ---
      > if test "$zOSUnix" = "yes"; then
      > xmheader="Xm/Xm.h"
      > else
      > xmheader="Xm/Xm.h Xm/XpmP.h Xm/JoinSideT.h Xm/TraitP.h Xm/Manager.h
      > Xm/UnhighlightT.h Xm/Notebook.h"
      > fi
      > for ac_header in $xmheader
      8716c8721
      < if test $ac_cv_header_Xm_XpmP_h = yes; then
      ---
      > if test "x$ac_cv_header_Xm_XpmP_h" = x""yes; then
      12591a12597,12600
      > if test "$zOSUnix" = "yes"; then
      > # CFLAGS=`$as_echo "$CFLAGS" | sed 's/(/\\\\(/g;s/)/\\\\)/g'`
      > CFLAGS="-D_ALL_SOURCE -Wc,float\(IEEE\),dll"
      > fi

      After the above fixes vim can be built on z/OS using configure / make with (cc) (although the lib paths need to be changed )
      I probably need to update the os-390 read-me and I also need to update config.in

      Here are my .profile changes to the lib path ( to use old motif 1.2 files ) (with cc ) >>

      tcpip=/usr/lpp/tcpip
      xpath=$tcpip/X11R6
      xsamp=$xpath/Xamples

      export _CC_LIBDIRS="$xpath/lib $_CC_LIBDIRS"
      export _CC_INCDIRS="$xpath/include $_CC_INCDIRS"

      >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

      The following header files are for motif 2.1 and cause compile errors and link errors >>

      > xmheader="Xm/XpmP.h Xm/JoinSideT.h Xm/TraitP.h Xm/Manager.h
      > Xm/UnhighlightT.h Xm/Notebook.h"

      >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

      The final config.h output should look like this >>

      #define HAVE_XM_XM_H 1
      /* #undef HAVE_XM_XPMP_H */
      /* #undef HAVE_XM_TRAITP_H */
      /* #undef HAVE_XM_MANAGER_H */
      /* #undef HAVE_XM_UNHIGHLIGHTT_H */
      /* #undef HAVE_XM_JOINSIDET_H */
      /* #undef HAVE_XM_NOTEBOOK_H */
      /* #undef HAVE_X11_XPM_H */
      #define HAVE_X11_XMU_EDITRES_H 1
      #define HAVE_X11_SM_SMLIB_H 1

      >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

      If we can figure out how to get things working for motif 2.1 it would be really great, because then we We could add the following >>

      /* #undef HAVE_XM_XPMP_H */
      /* #undef HAVE_XM_TRAITP_H */
      /* #undef HAVE_XM_MANAGER_H */
      /* #undef HAVE_XM_UNHIGHLIGHTT_H */
      /* #undef HAVE_XM_JOINSIDET_H */
      /* #undef HAVE_XM_NOTEBOOK_H */

      >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (and we would also get feature_toolbar ) with xpmp <<<<<

      IBM supporting documentation >>

      The X Window System toolkit includes files that define two macros for obtaining the offset of fields in an X Window System Toolkit structure, XtOffset, and XtOffsetOf. Programs written for, or ported to, z/OS UNIX MVS(tm) must use the XtOffsetOf macro for this purpose.

      Porting Motif applications to z/OS UNIX MVS

      Some Motif widget and gadget resources have the type KeySym. In an ASCII-based system the KeySym is the same as the ASCII character value. For example, the character 'F' has the ASCII hexadecimal value 46 and the KeySym hexadecimal value 46.

      However, on z/OS UNIX MVS, the character value of 'F' is hexadecimal C6, while the KeySym hexadecimal value is still 46. Remember to use true KeySym values when specifying resources of type KeySym, whether in a defaults file or in a function call.

      In some cases, an X Window System server may have clients that are not running on z/OS UNIX MVS. If a z/OS UNIX MVS X Window System application sends nonstandard properties that contain text strings to the X Window System server, and these properties might be accessed by clients that are not running on z/OS UNIX MVS, the strings should be translated. The translation should be to the server default character set before transmission to the server and to the appropriate host character set when retrieved from the server. This translation is an application responsibility.

      Compiling and linking Motif and X Window System applications

      The z/OS UNIX c89 or make commands should be used to compile and link X Window System and Motif programs. The following example shows how to use the c89 command to compile an X Window System program, xxx, which uses the Athena widget set, and create the executable file xxx. All code that uses the X Window System and Motif libraries must be compiled with the DLL option even if static linking is used.

      X Window System and Motif files locations

      z/OS V1R11.0 Communications Server IP Programmer's Guide and Reference z/OS V1R10.0-V1R11.0
      SC31-8787-11

      The following topics provide X Window System and Motif locations.

      Previous function X11R6.1 and Motif 1.2

      Previous function X11R6.1 and Motif 1.2 static libraries for 31-bit applications. Applications that want to link with these libraries must use the -L flag on the cc or c89 command to specify the library directory.
      /usr/lpp/tcpip/X11R6/lib/libX11.a
      /usr/lpp/tcpip/X11R6/lib/libXext.a
      /usr/lpp/tcpip/X11R6/lib/liboldX.a
      /usr/lpp/tcpip/X11R6/lib/libICE.a
      /usr/lpp/tcpip/X11R6/lib/libSM.a
      /usr/lpp/tcpip/X11R6/lib/libXt.a
      /usr/lpp/tcpip/X11R6/lib/libXmu.a
      /usr/lpp/tcpip/X11R6/lib/libXaw.a
      /usr/lpp/tcpip/X11R6/lib/libXau.a
      /usr/lpp/tcpip/X11R6/lib/libPEX5.a
      /usr/lpp/tcpip/X11R6/lib/libXm.a
      /usr/lpp/tcpip/X11R6/lib/libMrm.a
      /usr/lpp/tcpip/X11R6/lib/libUil.a Previous function X11R6.1 and Motif 1.2 dynamic link libraries (DLLs); 31-bit, non-XPLINK:
      /usr/lib/X11.dll -> symlink to /usr/lpp/tcpip/X11R6/lib/X11.dll /usr/lib/ICE.dll -> symlink to /usr/lpp/tcpip/X11R6/lib/ICE.dll /usr/lib/SM.dll -> symlink to /usr/lpp/tcpip/X11R6/lib/SM.dll /usr/lib/Xaw.dll -> symlink to /usr/lpp/tcpip/X11R6/lib/Xaw.dll Header files for previous function X11R6.1 and Motif 1.2:
      /usr/lpp/tcpip/X11R6/include/X11
      /usr/lpp/tcpip/X11R6/include/X11/ICE
      /usr/lpp/tcpip/X11R6/include/X11/PEX5
      /usr/lpp/tcpip/X11R6/include/X11/SM
      /usr/lpp/tcpip/X11R6/include/X11/Xaw
      /usr/lpp/tcpip/X11R6/include/X11/Xmu
      /usr/lpp/tcpip/X11R6/include/X11/bitmaps
      /usr/lpp/tcpip/X11R6/include/X11/extensions

      /usr/lpp/tcpip/X11R6/include/Mrm (motif header files)
      /usr/lpp/tcpip/X11R6/include/Xm (motif header files)
      /usr/lpp/tcpip/X11R6/include/Uil (Uil header files) Other utilities and data files for the previous function X11R6.1 and Motif 1.2:
      /usr/lpp/tcpip/bin/X11/uil (uil compiler)

      /usr/lpp/tcpip/X11R6/lib/X11/locale (locale data files)
      /usr/lpp/tcpip/X11R6/lib/X11/XErrorDB (X Error message database)
      /usr/lpp/tcpip/X11R6/lib/X11/XKeysymDB (X keysym Database)
      /usr/lpp/tcpip/X11R6/lib/X11/app-defaults/ (application default files) Examples included for X11R6.1 and Motif 1.2:
      /usr/lpp/tcpip/X11R6/Xamples/man/cat1/ (man pages for Xamples programs)
      /usr/lpp/tcpip/X11R6/Xamples/demos/ (demonstration programs)
      /usr/lpp/tcpip/X11R6/Xamples/clients/ (selected standard clients) New function X11R6.6 and Motif 2.1.30

      New function X11R6.6 and Motif 2.1 static libraries for 31-bit and 64-bit applications (these libraries are all XPLINK):
      Notes:
      PEX is no longer supported in these libraries.
      Xp is a new library.
      /usr/lib/libX11.a -> /usr/lpp/tcpip/X11R66/lib/libX11.a
      /usr/lib/libXext.a -> /usr/lpp/tcpip/X11R66/lib/libXext.a
      /usr/lib/liboldX.a -> /usr/lpp/tcpip/X11R66/lib/liboldX.a
      /usr/lib/libICE.a -> /usr/lpp/tcpip/X11R66/lib/libICE.a
      /usr/lib/libSM.a -> /usr/lpp/tcpip/X11R66/lib/libSM.a
      /usr/lib/libXt.a -> /usr/lpp/tcpip/X11R66/lib/libXt.a
      /usr/lib/libXmu.a -> /usr/lpp/tcpip/X11R66/lib/libXmu.a
      /usr/lib/libXaw.a -> /usr/lpp/tcpip/X11R66/lib/libXaw.a
      /usr/lib/libXp.a -> /usr/lpp/tcpip/X11R66/lib/libXp.a
      /usr/lib/libXau.a -> /usr/lpp/tcpip/X11R66/lib/libXau.a
      /usr/lib/libXm.a -> /usr/lpp/tcpip/X11R66/lib/libXm.a
      /usr/lib/libMrm.a -> /usr/lpp/tcpip/X11R66/lib/libMrm.a
      /usr/lib/libUil.a -> /usr/lpp/tcpip/X11R66/lib/libUil.a New function X11R6.6 and Motif 2.1 31-bit dynamic link libraries (DLLs):
      /usr/lib/X11_31.dll -> /usr/lpp/tcpip/X11R66/lib/X11_31.dll
      /usr/lib/ICE_31.dll -> /usr/lpp/tcpip/X11R66/lib/ICE_31.dll
      /usr/lib/SM_31.dll -> /usr/lpp/tcpip/X11R66/lib/SM_31.dll
      /usr/lib/Xaw_31.dll -> /usr/lpp/tcpip/X11R66/lib/Xaw_31.dll
      /usr/lib/Mrm_31.dll -> /usr/lpp/tcpip/X11R66/lib/Mrm_31.dll
      /usr/lib/Uil_31.dll -> /usr/lpp/tcpip/X11R66/lib/Uil_31.dll
      /usr/lib/Xm_31.dll -> /usr/lpp/tcpip/X11R66/lib/Xm_31.dll New function X11R6.6 and Motif 2.1 64-bit dynamic link libraries (DLLs):
      /usr/lib/X11_64.dll -> /usr/lpp/tcpip/X11R66/lib/X11_64.dll
      /usr/lib/ICE_64.dll -> /usr/lpp/tcpip/X11R66/lib/ICE_64.dll
      /usr/lib/SM_64.dll -> /usr/lpp/tcpip/X11R66/lib/SM_64.dll
      /usr/lib/Xaw_64.dll -> /usr/lpp/tcpip/X11R66/lib/Xaw_64.dll
      /usr/lib/Mrm_64.dll -> /usr/lpp/tcpip/X11R66/lib/Mrm_64.dll
      /usr/lib/Uil_64.dll -> /usr/lpp/tcpip/X11R66/lib/Uil_64.dll
      /usr/lib/Xm_64.dll -> /usr/lpp/tcpip/X11R66/lib/Xm_64.dll Header files for X11R6.6 and Motif 2.1: /usr/include/X11/ -> /usr/lpp/tcpip/X11R66/include/X11 (header files)
      /usr/include/X11/ICE -> /usr/lpp/tcpip/X11R66/include/X11/ICE (ICE specific header files)
      /usr/include/X11/SM -> /usr/lpp/tcpip/X11R66/include/X11/SM (SM specific header files)
      /usr/include/X11/Xaw -> /usr/lpp/tcpip/X11R66/include/X11/Xaw (Xaw specific header files)
      /usr/include/X11/Xmu -> /usr/lpp/tcpip/X11R66/include/X11/Xmu (Xmu specific header files)
      /usr/include/X11/extensions -> /usr/lpp/tcpip/X11R66/include/X11/extensions (extensions specific header files)
      /usr/include/X11/bitmaps -> /usr/lpp/tcpip/X11R66/include/X11/bitmaps (bitmaps for samples)
      /usr/include/Mrm -> /usr/lpp/tcpip/X11R66/include/Mrm (motif header files)
      /usr/include/Xm -> /usr/lpp/tcpip/X11R66/include/Xm (motif header files)
      /usr/include/X11/uil -> /usr/lpp/tcpip/X11R66/include/uil (Uil header files)

      Other utilities and Data files for the new function X11R6.6 and Motif 2.1: /bin/X11/uil -> /usr/lpp/tcpip/bin/X1166/uil (31-bit uil compiler)
      /bin/X11/uil64 -> /usr/lpp/tcpip/bin/X1166/uil64 (64-bit uil compiler)
      /usr/lib/X11 -> /usr/lpp/tcpip/X11R66/lib/X11
      /usr/lib/X11/locale -> /usr/lpp/tcpip/X11R66/lib/X11/locale (locale data files)
      /usr/lib/X11/XErrorDB -> /usr/lpp/tcpip/X11R66/lib/X11/XErrorDB (X Error message database)
      /usr/lib/X11/XKeysymDB -> /usr/lpp/tcpip/X11R66/lib/X11/XKeysymDB (X keysym Database)
      /usr/lib/X11/app-defaults -> /usr/lpp/tcpip/X11R66/lib/X11/app-defaults/ (application default files)

      Examples included for X11R6.6 and Motif 2.1:
      /usr/lpp/tcpip/X11R66/Xamples/man/cat1/ (man pages for Xamples programs)
      /usr/lpp/tcpip/X11R66/Xamples/demos/ (demonstration programs)
      /usr/lpp/tcpip/X11R66/Xamples/clients/ (selected standard clients)
      /usr/lpp/tcpip/X11R66/Xamples/motif (selected Motif examples)




      --
      You received this message from the "vim_dev" maillist.
      Do not top-post! Type your reply below the text you are replying to.
      For more information, visit http://www.vim.org/maillist.php

      --
      You received this message from the "vim_dev" maillist.
      Do not top-post! Type your reply below the text you are replying to.
      For more information, visit http://www.vim.org/maillist.php
    Your message has been successfully submitted and would be delivered to recipients shortly.