source: trunk/third/openmotif/INSTALL.imake @ 17519

Revision 17519, 14.7 KB checked in by ghudson, 23 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r17518, which included commits to RCS files with non-trunk default branches.
Line 
1
2                             Open Motif 2.2.0
3
4                              Release Notes
5
6                              The Open Group
7
8
9This document provides Release notes for Open Motif 2.2.0.
10Please see the COPYRIGHT.MOTIF file included with this release.
11
12
13Introduction
14
15This document describes Open Motif version 2.1.30. Whenever "Motif"
16is used in these release notes, it means Open Motif 2.1.30.
17
18This document and accompanying text files contain important
19information. Please read them carefully before starting the build and
20installation procedures.
21
22The command line instructions provided here are for csh. They may vary
23depending on the particular shell you are using. 
24
25
26Unloading the Distribution
27
28If you received this distribution on physical media (CD)
29rather than electronically, the distribution  should include appropriate
30instructions in hardcopy form. The hardcopy information pertains to your
31particular distribution format.
32
33The instructions in this document can be used for unloading from
34electronic distribution.
35
36Distribution Format
37
38The distribution consists of a single gzip'd tar file. This file contains
39the source code, test code, and documentation of Motif.
40
41To unpack the distribution, create a directory to hold all of the sources
42and untar everything into that directory:
43
44      % mkdir $MOTIFSOURCEDIR
45      % cd $MOTIFSOURCEDIR
46
47and then either
48
49      % gtar zxf tar-file-name
50
51or
52      % gzip -dc tar-file-name| tar xf -
53
54
55where $MOTIFSOURCEDIR designates the master source directory.  If you
56unpack the distribution, you will have the following subdirectory under
57$MOTIFSOURCEDIR:
58
59      motif
60
61Note that directory permissions stored in the tar file are generally
62set world writable. Make sure your umask is set the way you want before
63unpacking the distribution.
64
65Disk Space Requirements
66
67Approximately 70MB of disk space are required to unpack the Motif distribution.
68Disk usage is as follows (all amounts are in MB):
69
70      motif         19
71      motif/tests   39
72      motif/doc     13
73
74
75Building Motif
76
77This section provides a generic description of the build process for Motif.
78Motif has been built on the following platforms:
79      Digital  AlphaStation 200   Digital UNIX V4.0
80      Fujitsu  DS/90 7000         UXP/DS V20L10
81      HP       HP9000/7xx         HP-UX 10.20
82      IBM      RS/6000            AIX 4.2
83      Novell   Intel 486/Pentium  UnixWare 2.02
84      SGI      Indigo 2           Irix 6.2
85      Sun      SPARCstation       Solaris 2.4
86      Linux    Intel              Redhat6.0->7.2
87
88
89To build Motif, you must have an ANSI C compiler installed on your system
90and available in your $PATH. You should not have /usr/ucb in your $PATH,
91or the build is likely to fail.
92
93If you expect to build the distribution on more than one machine using
94a shared source tree, or you just want to keep the binaries out of
95the source tree, you may want to use the X11 program lndir to create a
96symbolic link tree on each build machine. The links require additional
97disk space but take less disk space than multiple copies of the source
98tree.
99
100Create a build directory that is not a subdirectory of the Motif master
101source directory, for example:
102
103      % mkdir $MOTIFBUILDDIR
104
105Create a symbolic link tree using the following command:
106      % lndir $MOTIFSOURCEDIR $MOTIFBUILDDIR
107     
108
109where $MOTIFSOURCEDIR is the Motif master source directory. Note that
110the directory containing the lndir program must be in your $PATH.
111Note that the builds described below must be done in the order given:
112
113Building Motif
114
1151. Customize $MOTIFBUILDDIR/motif/config/cf/site.def to reflect local
116preferences for install locations, compilers, paths, etc. Note that
117the default install location is /usr/dt, and is probably not the one
118you want. You should change it to where you want Motif to be installed,
119probably /usr.
120
121
1222.  If you are building with imports (the default setup in site.def),
123construct the necessary links as follows:
124
125        % cd $MOTIFBUILDDIR/motif
126        % mkdir -p imports/x11
127        % cd imports/x11
128        % ln -s <X11_bin_directory> bin
129        % ln -s <X11_includes_directory> include
130        % ln -s <X11_libs_directory> lib
131        % cd $MOTIFBUILDDIR/motif/config/cf
132        % mkdir OPENGROUP
133        % mv * OPENGROUP
134        % ln -s <X11_libs_directory>/X11/config/*
135        % rm Motif.tmpl Motif.rules host.def
136        % mv OPENGROUP/{Motif.tmpl,Motif.rules,host.def} .
137       
1383. Set your current directory as follows:
139
140        % cd $MOTIFBUILDDIR/motif
141       
1424. Copy the Master Makefile into place :
143     
144        % cp Makefile.imake-pure Makefile
145     
1465. See if there is a BootstrapCFlags mentioned in the
147comments in the <vendor>.cf file. This file is in the directory
148$MOTIFBUILDDIR/motif/config/cf. If there isn't a definition for
149BootstrapCFlags, type:
150
151        % make World >& world.log
152
153If there is a BootstrapCFlags definition, take its value and type:
154        % make World BOOTSTRAPCFLAGS="value" >& world.log
155
156Installing Motif
157
158Before installing Motif, check to see if you already have an installed
159version of Motif. If so and you want a completely new installation
160(which is recommended), then rename it or back it up and then remove it.
161
162Installing Motif
163To install motif do the following as root:
164
165      % cd $MOTIFBUILDDIR/motif
166      % make install >& install.log
167
168
169Documentation
170The Motif guides have been provided in postscript.
171These are located in the directory $MOTIFBUILDDIR/motif/doc/ps. With this
172release, the Motif and CDE style guides have been combined and reworked
173into three new volumes: Motif and CDE Style Guide, Motif and CDE Style
174Guide Reference, and Motif and CDE Style Guide Certification Checklist.
175
176The documentation consists of:
177
178mot-pg/         Motif Programmer's Guide
179mot-ref/        Motif Programmer's Reference
180mot-mcsg.ps.Z   Motif and CDE Style Guide
181mot-cdesgr.ps.Z Motif and CDE Style Guide Reference
182mot-csgcc.ps.Z  Motif and CDE Style Guide Certification Checklist
183mot-wwg.ps.Z    Motif Widget Writer's Guide
184mot-ug/         Motif User's Guide
185mot-gloss.ps.Z  Motif Glossary
186
187Manual pages in man format are provided.
188These are located in the directory $MOTIFBUILDDIR/motif/doc/man.
189
190
191Building the Motif QATS Tests
192
193Most of the information required to build and run the Motif/QATS can be
194found in the following files:
195
196      $MOTIFBUILDDIR/motif/tests/doc/Output/draft/ps/chap1
197      $MOTIFBUILDDIR/motif/tests/doc/Output/draft/ps/chap2
198      $MOTIFBUILDDIR/motif/tests/doc/Output/draft/ps/chap3
199      $MOTIFBUILDDIR/motif/tests/doc/Output/draft/ps/chap4
200      $MOTIFBUILDDIR/motif/tests/environment/README
201
202
203
204Installing Tests
205
206Test execution is fully functional inside the tests directory
207structure. No installation is required.
208
209
210Running Tests
211
212The QATS must be run on a display controlled by a Motif 2.x version
213of mwm (not dtwm). A suitable version of mwm is built in the
214$MOTIFBUILDDIR/motif/clients/mwm directory.
215
216Test Execution Results
217
218The Motif/QATS automated tests and Motif window manager were built as
219described in an earlier section.  Automated tests were built and run
220on all reference platforms. Sun, HP, and SGI displays were used for
221displaying tests. Motif window managers built on different platforms
222were used to manage the windows while running the tests. The complete
223QATS is executed on Sun, HPUX, and SGI platforms while only the new
224tests or suites were executed on the remaining reference platforms.
225
226Missing Keys WARNINGS
227
228The keys on the keyboards used on the HP and Sun platforms are
229insufficient for the needs of the tests (keys missing from the keyboard
230that were expected to be mapped for the tests), causing "AUTOWARNING"
231errors in every one of the tests. The standard report generation scripts
232detect these benign errors and flag the entire test as an error. Since
233these were not considered to be fatal errors (after inspection of the
234test code), the analysis scripts filtered out AUTOWARNING errors that
235came from missing keys at the very beginning of a test run.
236
237New Test Clients
238Several new test clients were added to the QATS during this release,
239some automated and some manual. Test clients were added to the following
240directories:
241
242      tests/Toolkit/Buttons
243      tests/uil/widgets
244
245Golden data was generated where necessary.
246
247Golden Data Generation
248
249Some new QATS test suites, which do not have any previous recordings,
250were run in record mode to generate golden data. The recordings were
251added to this release. These new automated test suites are:
252
253      tests/Toolkit/ComboBox
254      tests/Toolkit/SpinBox
255      tests/Toolkit/Notebook
256      tests/Toolkit/IconVC
257
258
259Test Results
260
261The results were compared with the recordings made against Motif 2.0. The
262results are mostly consistent with the previous runs carried out at
263OSF. There are failures due to both QATS problems and Motif defects. All
264the errors/failures reported during the run are due to known problems
265in both QATS and Motif code and have defects already opened against
266them. Also, the results were consistent across all the platforms on
267which the tests were executed.
268
269
270Compatibility
271
272Compatibility with CDE/Motif 1.2 was given great emphasis in this release,
273even at the expense of compatibility with OSF/Motif 2.0. Some OSF/Motif
2742.0 applications may experience problems because of the following changes:
275
276*The XmCSText widget has been withdrawn, as have those APIs added to
277OSF/Motif 2.0 solely to support it.
278
279*Mrm support for word-size independent .uid files has been
280removed. Existing .uid files compiled with Motif 2.0 uil may not be
281readable. As in OSF/Motif 1.2, .uid files are portable only between
282machines with the same word size.
283
284*New XmComboBox XmNpositionMode and XmSpinBox XmNpositionType resources
285default to incompatible index values, and should be forced by all
286applications using these widgets. XmONE_BASED is recommended for
287XmComboBox widgets because it lets applications distinguish between new
288values entered in the text field and the first item in the list.
289
290*XmStringCreateLocalized() now handles new lines and tabs.  *The
291_XmStrings array has, on some machines, been split into multiple
292sub-arrays with the same techniques used by libXt. This preserves
293compatibility with Motif 1.2 and permits future expansion.
294
295*Labels for automatically created sub-widgets (like the buttons in a
296File Selection Box) are now unconditionally localized, and may not be
297set or overridden by the user.
298
299*The XmDisplay XmNenableThinThickness resource now has wider effect than
300it did in Motif 2.0.
301
302*The XmDisplay XmNenableToggleVisual resource now changes the way
303XmNindicatorOn and XmNindicatorType values are rendered, instead of
304simply changing their default values.  Motif 2.0 applications that called
305XtSetValues for these resources may notice a change. New constants have
306been added to obtain the old behavior.
307
308*In Motif 2.0 there were two distinct XmREPLACE constants, with different
309values. The XmMergeMode constant has been renamed XmMERGE_REPLACE. This
310is a source compatibility issue; binary compatibility is unaffected.
311
312*XmDisplay XmNdragReceiverProtocolStyle default value has been reverted
313to XmDRAG_PREFER_PREREGISTER. Users may find that XmDRAG_PREFER_DYNAMIC
314is more efficient.
315
316*The XmNenableEtchedInMenu resource causes buttons and toggles in menus
317to be rendered with colors different from those in earlier releases.
318
319*XmScrolledList and XmScrolledText scrollbar colors are computed
320differently. They are now derived from the scrolled window's background
321color, not the color of the XmList or XmText widget.
322
323*To promote convergence with dtwm, mwm's panning and virtual screen
324support has been removed, as has mwm's support for workspaces.
325
326*The XmCxx library of C++ wrappers has been moved to the demos/lib
327directory.
328
329
330New Functionality
331
332The following paragraphs summarize the new functionality of this release
333relative to Motif 2.0.  Please refer to the specific on-line documentation
334for more detailed information.
335
336Printing
337
338Starting with this release, Motif includes support for printing using
339an X protocol based print server. This print server produces output in
340three formats: PCL, Postscript and Raster.
341
342Thread-Safe Libraries
343
344Xm and Mrm are thread-safe enabled. This means that the libraries
345themselves are thread safe and a multithreaded application need not do
346explicit locking when accessing these libraries.  This is supported only
347for platforms that support multithreaded programming.
348
349
350Internationalization
351
352There are several new features that support the internationalization of
353Motif and developing applications for international markets. Motif now
354supports the On-The-Spot input method for Text widget. Vertical Writing
355is also supported.
356
357
358Open/Closed Defect Lists
359
360Two files listing defect reports are provided in the directories
361$MOTIFSOURCEDIR/motif:
362
363
364OPENBUGS
365
366Lists the currently known unresolved defects reported against Motif components.
367
368CLOSEDBUGS
369
370Lists the defects that have been resolved since Motif 2.0.
371
372
373X11R6.4
374This release has been built and tested upon a base of X11R6.4 patchlevel 3.
375
376
377   Changes to X11R6.4:
378
379        CDE and Motif 2.1.30 have been built and tested upon a base of
380        X11R6.4 patchlevel 3.  During the development of 2.1.20, a
381        significant defect in the I18N code of X was discovered; if you have
382        not yet corrected this problem, you are advised to do so prior
383        to making use of 2.1.30.
384
385        The symptom is that when XMODIFIERS is not set, there is a possibility
386        of memory corruption.   It is recommended that the following patch
387        be applied:
388
389        *** imInt.c@@/main/5       Sat May 30 21:04:36 1998
390        --- xc/lib/X11/imInt.c       Mon Aug 24 16:17:25 1998
391        ***************
392        *** 1,4 ****
393        ! /* $TOG: README-2.1.30 /main/1 1999/12/14 14:52:14 devobj $ */
394          /******************************************************************
395         
396                     Copyright 1992, 1993, 1994 by FUJITSU LIMITED
397        --- 1,4 ----
398        ! /* $TOG: README-2.1.30 /main/1 1999/12/14 14:52:14 devobj $ */
399          /******************************************************************
400         
401                     Copyright 1992, 1993, 1994 by FUJITSU LIMITED
402        ***************
403        *** 166,174 ****
404          _XimMakeImName(lcd)
405              XLCd         lcd;
406          {
407        !     char* begin;
408        !     char* end;
409        !     char* ret;
410              int       i = 0;
411              char* ximmodifier = XIMMODIFIER;
412         
413        --- 166,174 ----
414          _XimMakeImName(lcd)
415              XLCd         lcd;
416          {
417        !     char* begin = NULL;
418        !     char* end = NULL;
419        !     char* ret = NULL;
420              int       i = 0;
421              char* ximmodifier = XIMMODIFIER;
422         
423        ***************
424        *** 182,189 ****
425              }
426              ret = Xmalloc(end - begin + 2);
427              if (ret != NULL) {
428        !       (void)strncpy(ret, begin, end - begin + 1);
429        !       ret[end - begin + 1] = '\0';
430              }
431              return ret;
432          }
433        --- 182,192 ----
434              }
435              ret = Xmalloc(end - begin + 2);
436              if (ret != NULL) {
437        !       if (begin != NULL && end != NULL) {
438        !           (void)strncpy(ret, begin, end - begin + 1);
439        !           ret[end - begin + 1] = '\0';
440        !         }
441        !       else *ret = '\0';
442              }
443              return ret;
444          }
445
446
Note: See TracBrowser for help on using the repository browser.