| #!/bin/bash | |
| # WINE Installation script | |
| # Mar 31 1999 - Ove Kåven | |
| # First version | |
| # Dec 9 1999 - Ove Kåven | |
| # require Xpm | |
| # Feb 25 2000 - Ove Kåven | |
| # auto-add /usr/local/lib to /etc/ld.so.conf | |
| # Mar 2 2000 - Ove Kåven | |
| # source rather than grep config.cache | |
| # use sourced config.cache to start ldconfig | |
| # reconfigure if config.cache doesn't exist | |
| # defaults | |
| sysconfdir=/usr/local/etc | |
| DOCONF=auto | |
| DOREG=yes | |
| # startup... | |
| echo "WINE Installer v0.2" | |
| echo | |
| if ! [ -f configure ] | |
| then { | |
| echo "You're running this from the wrong directory." | |
| echo "Change to the Wine directory and try again." | |
| exit 1 | |
| } | |
| fi | |
| # run the configure script, if necessary | |
| if [ -f config.cache ] && [ -f Makefile ] && [ Makefile -nt configure ] | |
| then { | |
| echo "I see that WINE has already been configured, so I'll skip that." | |
| # load configure results | |
| . ./config.cache | |
| } | |
| else { | |
| # we'll run with defaults (we need libwine.a later) | |
| echo "Running configure..." | |
| echo | |
| if ! ./configure | |
| then { | |
| echo | |
| echo "Configure failed, aborting install." | |
| rm -f config.cache | |
| exit 1 | |
| } | |
| fi | |
| # load configure results | |
| . ./config.cache | |
| # make sure X was found | |
| eval "$ac_cv_have_x" | |
| if [ "$have_x" != "yes" ] | |
| then { | |
| echo "Install the X development headers and try again." | |
| rm -f config.cache | |
| exit 1 | |
| } | |
| elif [ "$ac_cv_header_X11_xpm_h" != "yes" ] | |
| then { | |
| echo "Install the Xpm development headers and try again." | |
| rm -f config.cache | |
| exit 1 | |
| } | |
| fi | |
| } | |
| fi | |
| # now do the compilation | |
| if [ -f wine ] && [ wine -nt Makefile ] | |
| then { | |
| echo "Hmm, looks like WINE is already compiled. I'll skip that too, I guess." | |
| } | |
| else { | |
| echo "Compiling WINE. Grab a lunch or two, rent a video, or whatever, in the meantime..." | |
| echo | |
| if ! { make depend && make; } | |
| then { | |
| echo | |
| echo "Compilation failed, aborting install." | |
| exit 1 | |
| } | |
| fi | |
| echo | |
| } | |
| fi | |
| # and installation, if root | |
| if [ `whoami` != 'root' ] | |
| then { | |
| echo "You aren't root, so I'll skip the make install." | |
| } | |
| else { | |
| echo "Now installing binaries onto the system..." | |
| echo | |
| if ! make install | |
| then { | |
| echo | |
| echo "Installation failed, aborting." | |
| exit 1 | |
| } | |
| fi | |
| if [ -f /etc/ld.so.conf ] && ! grep -qs "/usr/local/lib" /etc/ld.so.conf | |
| then { | |
| echo | |
| echo "/usr/local/lib didn't exist in your /etc/ld.so.conf, adding it now..." | |
| echo /usr/local/lib >>/etc/ld.so.conf | |
| echo "Re-running ldconfig..." | |
| eval "$ac_cv_path_LDCONFIG" | |
| } | |
| fi | |
| } | |
| fi | |
| echo | |
| # now check whether we should generate wine.conf | |
| if [ -z "$DOCONF" ] | |
| then DOCONF=auto | |
| fi | |
| if [ "$DOCONF" = 'auto' ] | |
| then { | |
| # see if we already have a system wine.conf | |
| if [ -f $sysconfdir/wine.conf ] || [ -f /etc/wine.conf ] | |
| then DOCONF=no | |
| fi | |
| } | |
| fi | |
| if [ "$DOCONF" != 'no' ] | |
| then { | |
| if [ `whoami` != 'root' ] | |
| then { | |
| CONF=~/.winerc | |
| if ! [ -f $CONF ] | |
| then { | |
| if [ "$DOCONF" != 'yes' ] | |
| then { | |
| echo "Since you aren't root, and there's no system wine.conf, I assume" | |
| echo "you want a user-specific .winerc. Am I correct? (yes/no)" | |
| while [ "$DOCONF" != 'yes' ] && [ "$DOCONF" != 'no' ] | |
| do read DOCONF | |
| done | |
| } | |
| fi | |
| if [ "$DOCONF" = 'no' ] | |
| then echo "Skipping generation of .winerc." | |
| fi | |
| } | |
| fi | |
| } | |
| else { | |
| CONF=$sysconfdir/wine.conf | |
| mkdir -p $sysconfdir | |
| DOCONF=yes | |
| } | |
| fi | |
| } | |
| fi | |
| if [ "$DOCONF" = 'yes' ] | |
| then { | |
| echo "Now automatically generating $CONF for you..." | |
| echo | |
| tools/wineconf > $CONF | |
| echo | |
| echo "Done. You probably want to review the file, though." | |
| } | |
| fi | |
| echo | |
| # install default registry entries | |
| if [ "$DOREG" = 'yes' ] | |
| then { | |
| echo "Compiling regapi..." | |
| echo | |
| (cd programs/regapi; make) | |
| echo | |
| echo "Installing default registry entries, please wait..." | |
| echo | |
| if ! programs/regapi/regapi setValue < winedefault.reg | |
| then { | |
| echo | |
| echo "Registry install failed. Perhaps you weren't running X." | |
| exit 1 | |
| } | |
| fi | |
| # FIXME: perhaps install registry to $sysconfdir/winesystem.reg and $sysconfdir/wineuser.reg? | |
| } | |
| fi | |
| echo | |
| echo "Installation complete for now. Good luck (this is still alpha software)." | |
| echo "If you have problems with WINE, please read the documentation first." |