Motif-2.3.8

Introduction to Motif

The Motif package contains a user interface component toolkit and multiple accompanying tools.

Additional Downloads

Motif Dependencies

Required

byacc-20241231, libjpeg-turbo, libpng, libXp-1.0.4, xbitmaps, and Xorg Libraries

Installation of Motif

At first, unpack the patch tarball:

tar xvf ../motif-2.3.8-patches-5.tar.xz

Now, apply the various patches from the tarball:

patch -Np1 -i patch/01_all_solaris.patch &&
patch -Np1 -i patch/02_all_sanitise-paths.patch &&
patch -Np1 -i patch/03_all_solaris-11.patch &&
patch -Np1 -i patch/04_all_parallel-make.patch &&
patch -Np1 -i patch/05_all_install-dirs.patch &&
patch -Np1 -i patch/06_all_cflags.patch &&
patch -Np1 -i patch/07_all_no-demos.patch &&
patch -Np1 -i patch/08_all_xmbind-xorg.patch &&
patch -Np1 -i patch/09_all_slibtool.patch &&
patch -Np1 -i patch/10_all_string_h.patch &&
patch -Np1 -i patch/11_all_acinclude.patch &&
patch -Np1 -i patch/12_all_noreturn.patch &&
patch -Np1 -i patch/13_all_xpm-comments.patch &&
patch -Np1 -i patch/14_all_xpm-width-0.patch

Then, remove stray autogenerated files to ensure a successful build:

rm -rvf tools/wml/{wmllex,wmluiltok}.c

Now, regenerate the configure scripts:

touch AUTHORS NEWS &&
autoreconf -fiv -I.

Set multiple environment variables to ensure a working build:

export OLDLANG=$LANG &&
export LANG=C &&
export LEX=flex &&
export YACC=byacc

Now, install Motif by running the following commands:

sed -i '1 i\%option main' tools/wml/wmluiltok.l &&
./configure --prefix=/usr \
            --with-x      \
            --enable-motif22-compatibility \
            --disable-static \
            --enable-utf8 \
            --enable-xft \
            --enable-jpeg \
            --enable-png &&
make

Now as the root user:

make install &&
make -C demos install-data &&
rm -rvf /usr/share/doc/motif-2.3.8/demos &&
install -v -m755 -d /usr/share/doc/motif-2.3.8/demos &&
mv -v /usr/share/Xm/* /usr/share/doc/motif-2.3.8/demos &&
rmdir -v /usr/share/Xm

Still as the root user, install some auxillary files:

install -v -m755 -d /usr/share/X11/app-defaults &&
cat > /usr/share/X11/app-defaults/Mwm << "EOF"
Mwm*fontList:                   variable
Mwm*iconClick:                  False
Mwm*iconPlacement:              top left
Mwm*moveOpaque:                 True
Mwm*rootButtonClick:            True
Mwm*foreground:                 #000000
Mwm*background:                 #B8B8C0
Mwm*enableThinThickness:        True
Mwm*enableEtchedInMenu:         True
Mwm*menu*fontList:              -adobe-helvetica-medium-r-*--*-120-*-*-*-*-*-*
Mwm*client*title*fontList:      -adobe-helvetica-bold-r-*--*-100-*-*-*-*-*-*
Mwm*icon*fontList:              -adobe-helvetica-bold-r-*--*-80-*-*-*-*-*-*
Mwm*feedback*fontList:          -adobe-helvetica-bold-r-*--*-100-*-*-*-*-*-*
Mwm*multiClickTime:             300
Mwm*useIconBox:                 True
EOF

install -v -m755 -d /usr/share/xsessions &&
cat > /usr/share/xsessions/mwm.desktop << "EOF"
[Desktop Entry]
Name=MWM
Comment=The Motif Window Manager
Exec=/usr/bin/mwm
TryExec=/usr/bin/mwm
Type=Application
EOF

Finally, unset the environment variables previously set:

export LANG=$OLDLANG &&
unset OLDLANG &&
unset LEX &&
unset YACC

Contents

Installed Programs: mwm, uil, and xmbind
Installed Libraries: libMrm.so, libUil.so, and libXm.so
Installed Directories: /usr/include/Mrm, /usr/include/uil, /usr/include/Xm, /usr/etc/X11/mwm, and /usr/share/X11/bindings

Short Descriptions

mwm

is the Motif Window Manager

uil

is the User Interface Language compiler

xmbind

is a tool to configure virtual keybindings for Motif applications

libMrm.so

is the Motif Resource Manager library

libUil.so

is the Motif User Interface Language library

libXm.so

is the main Motif library