
		Installation Instructions for WSoundServer


SUPPORTED PLATFORMS
===================
(ie: I've heard someone has compiled it on...)

- Intel FreeBSD-3.2-STABLE (primary platform)
- Intel FreeBSD-4.0-CURRENT (primary platform)
- Intel Linux/Mandrake 6.0
- Intel Linux/Redhat 6.0
- Intel Linux/Debian 2.1

Patches to make it work on other platforms are welcome.

There is "support" already for HPUX, Solaris and ESD though this has not been
(thoroughly) tested, so if you think you could improve the support for an
already supported platform, Please feel free to do so.

REQUIREMENTS:
=============

The following software is required to use WSoundServer:

- Anything that can properly run the Window Maker Window Manager.

- Window Maker version 0.62.0 or later


The following is required to build WSoundServer:

- Basic obvious stuff
	If you will build WSoundServer, make sure you have gcc (or some
	other ANSI C compiler) and the X header files installed. Specially
	for newbie Linux users: you must install all X development packages
	and the gcc suite. Otherwise you won't be able to build any X
	program, including WSoundServer.

- libPropList-0.9.1
	This library can be found in ftp://ftp.windowmaker.org/pub/libs
	Install it before building WSoundServer.
	(Should already be installed if you have Window Maker installed)
	
- libdockapp
	This library is normally included in your Window Maker source tree
	by default.
	Install it before building WSoundServer.

- libaudiofile-0.1.9
	This library can be found in ftp://ftp.68k.org/pub/michael/ as well as
	on my own system ftp://shadowmere.student.utwente.nl/pub/WindowMaker
	For more information about libaudiofile check out
	http://www.68k.org/~michael/audiofile/

- autoconf, automake and libtool
	These tools are NOT needed, but IF you have one or
	more of them installed, make sure you have ALL of the following;
	autoconf 2.13
	automake 1.4
	libtool 1.3.3
	If you have a different version, they might work but are not
	guaranteed, disable them by temporarily renaming them to something else
	or uninstalling them from your system. If you don't develop software
	you don't need them, so you can safely uninstall.

	
OPTIONAL:
=========

These libraries are not required to make WSoundServer work, but they
are supported in case you want to use them. Version numbers are those
that I have (and therefore, guraranteed to work), but other versions
might work too.

- ESound 2.8 or newer
	To have WSoundServer use ESD to play the sounds instead of
	locking the audiodevice itself.
	ESD support is very basic (i think) and might be broken
	if you can fix /improve it ... please do so.

	
CONFIGURE OPTIONS:
==================

These options can be passed to the configure script to enable/disable
some WSoundServer features. Example:

./configure --enable-esd

will configure WSoundServer with support for the ESound Daemon.


To get a list of other options, run ./configure --help

--with-libs-from
	specify additional paths for libraries to be searched.
       	The -L flag must precede each path, like:
	--with-libs-from="-L/opt/libs -L/usr/local/lib"
	
--with-incs-from
	specify additional paths for header files to be searched.
       	The -I flag must precede each paths, like:
	--with-incs-from="-I/opt/headers -I/usr/local/include"

--enable-esd
	configure the soundserver to use the esound daemon

--enable-debug
        Do not use it unless you know what you're doing.

	
INSTALLATION:
=============

Build WSoundServer
------------------
        For a quick start, type the following in your shell prompt:
	
	./configure
	make
	
	then, login as root and type:
	
	make install
	
	or if you want to strip the debugging symbols from the binaries and make them
	smaller, you can instead type:
	
	make install-strip
	
	This will build and install WSoundServer with default parameters.
	
	(on some platforms you may need to run ldconfig with proper paramters
	 check man ldconfig in those cases. On FreeBSD this is not necesarry
	 as libtool already takes care of this for you during install phase)
	
	If you want to customize some compile-time options, you can do the
	following.

        1. (optional) Look at the CONFIGURE OPTIONS section above for the
	options available. Also run:
	
	./configure --help
	to get a complete listing of other options that are available. 
	
	2. Run configure with the options you want. For example, if you
	want to use the --enable-esd option, type:
	
	./configure --enable-esd
				
	3. Compile. Just type:
	
	make
	
	4. Become root (if you can't do that, read the "I don't have the
	root password :-(" section) and install WSoundServer in your system:
		su root
		make install
		
I don't have the root password :(
---------------------------------

If you can't get superuser privileges (can't be root) you can install
wsoundserver in your own home directory. For that, supply the --prefix option
when running configure in step 2 of building WSoundServer.
	
./configure --prefix=/home/jshmoe


Then make /home/jshmoe/bin be included in your search PATH, add
/home/jshmoe/lib to your LD_LIBRARY_PATH environment variable and run
bin/wmaker.inst

Of course, /home/jshmoe is supposed to be replaced with your actual home
directory path.


TROUBLESHOOTING
===============

When you have some trouble during configuration (while running configure),
look at the config.log file for clues of the problem.

== Error when configuring

ltconfig: unrecognized option `--no-reexec'
Try `ltconfig --help' for more information.
configure: error: libtool configure failed

remove the --no-reexec option from aclocal.m4 and libPropList/aclocal.m4
and reconfigure
Also make sure the autoconf and automake versions you have installed are:
autoconf 2.13
automake 1.4
libtool 1.3.3

Note that it must not be libtool 1.2b, it must be libtool 1.3.3,
from the GNU sites. (libtool 1.3 might also work)

== Cant find proplist.h or libPropList.something

Download and install libPropList from the places pointed to
somewhere else in this file.

== Cant find dockapp.h or libdockapp.something

Download and install libdockapp from the places pointed to
somewhere else in this file.

