#include "autoconf.h"
#include "Wine.tmpl"

#if defined(i386FreeBsd) || defined(FreeBSDArchitecture)
MAKE = gmake
CC = gcc -D__FreeBSD__
#endif

DEFINES = AutoDefines -DUSE_READLINE -DWINESTAT

/*
 * This is the second try at using Imakefiles. There are probably many
 * problems and things I haven't even considered. I do not have a fixed
 * Linux system to test them on, but thanks to Thomas Michlmayr
 * <tmichl@cosy.sbg.ac.at> for use of one of his boxes. 
 *
 * SEE BELOW ABOUT DEBUGGING AND LINUX
 *
 * Peter Galbavy, 31st Jan 1994: peter@wonderland.org
 */

#define IHaveSubdirs
#define	PassCDebugFlags 'CDEBUGFLAGS=$(CDEBUGFLAGS)' 'CC=$(CC)' 'MAKE=$(MAKE)'\
			'DEFINES=$(DEFINES)'

COMMONSUBDIRS = \
	controls \
	etc \
	include \
	loader \
	misc \
	objects \
	test \
	windows

EMUSUBDIRS = \
	tools \
	debugger \
	if1632 \
	memory \
	miscemu

LIBSUBDIRS = \
	toolkit

WINEDIR = $(LIBDIR)/wine

COMMONOBJS = \
	controls.o \
	loader.o \
	misc.o \
	objects.o \
	windows.o

/*
 * WARNING: if1632.o must be the first object file because its code must be
 *          linked at the lowest possible addresses.
 */
EMUOBJS = \
	if1632.o \
	debugger.o \
	memory.o \
	miscemu.o \
	opcodes.o \
	readline.o

LIBOBJS = \
	toolkit.o

#ifndef WINELIB
SUBDIRS = $(COMMONSUBDIRS) $(EMUSUBDIRS)
OBJS = $(COMMONOBJS) $(EMUOBJS)
#else
SUBDIRS = $(COMMONSUBDIRS) $(LIBSUBDIRS)
OBJS = $(COMMONOBJS) $(LIBOBJS)
#endif

#ifdef i386BsdArchitecture
SYSLIBS = -ll -lm -li386 -lgnumalloc
#endif
#if defined(i386FreeBsd) || defined(FreeBSDArchitecture)
SYSLIBS = -ll -lm -lgnumalloc
#endif
#ifdef LinuxArchitecture
SYSLIBS = -lm -lg
#endif

MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))
AllTarget(wine)

#ifndef WINELIB
NormalProgramTarget(wine,$(EMUOBJS) $(COMMONOBJS),$(DEPXLIB),$(XLIB),$(SYSLIBS))
#else
NormalLibraryTarget(wine,$(LIBOBJS) $(COMMONOBJS))
#endif

depend::

install::

etags::
	etags `find . -name '*.[chS]'`