Release 970329
[wine/multimedia.git] / Makefile.in
blobf861a0a4f6950953bddfed09ac15e2bc0bbce05a
1 # This Makefile understands the following targets:
3 # all (default): build wine
4 # clean: remove all intermediate files
5 # distclean: also remove all files created by configure
6 # depend: create the dependencies
7 # etags: Create a TAGS file for Emacs.
9 # Author: Michael Patra <micky@marie.physik.tu-berlin.de>
10 # <patra@itp1.physik.tu-berlin.de>
12 # First some useful definitions
14 SHELL = /bin/sh
15 CC = @CC@
16 CFLAGS = @CFLAGS@
17 OPTIONS = @OPTIONS@
18 X_LIBS = @X_LIBS@
19 TOPSRC = @top_srcdir@
20 XPM_LIB = -lXpm
21 XLIB = @X_PRE_LIBS@ -lXext -lX11 @X_EXTRA_LIBS@
22 LDLIBS = @LDLIBS@
23 AR = ar rc
24 RANLIB = @RANLIB@
25 RM = rm -f
26 SUBMAKE = $(MAKE) 'CC=$(CC)' 'CFLAGS=$(CFLAGS)' 'OPTIONS=$(OPTIONS)'
27 @SET_MAKE@
29 # Installation infos
31 INSTALL = @INSTALL@
32 INSTALL_PROGRAM = @INSTALL_PROGRAM@
33 INSTALL_DATA = @INSTALL_DATA@
34 prefix = @prefix@
35 exec_prefix = @exec_prefix@
36 bindir = @bindir@
37 libdir = @libdir@
38 mandir = @mandir@/man1
39 manext = .1
41 # Main target to build
43 MAIN_TARGET = @MAIN_TARGET@
45 COMMONSUBDIRS = \
46 rc \
47 controls \
48 files \
49 graphics \
50 graphics/metafiledrv \
51 graphics/x11drv \
52 ipc \
53 loader \
54 memory \
55 misc \
56 msdos \
57 multimedia \
58 objects \
59 resources \
60 scheduler \
61 win32 \
62 windows
64 EMUSUBDIRS = \
65 tools \
66 debugger \
67 graphics/win16drv \
68 if1632 \
69 miscemu
71 LIBSUBDIRS = library
73 PROGSUBDIRS = libtest programs
75 ALLSUBDIRS = $(COMMONSUBDIRS) $(EMUSUBDIRS) $(LIBSUBDIRS) $(PROGSUBDIRS)
77 COMMONOBJS = \
78 controls/controls.o \
79 files/files.o \
80 graphics/graphics.o \
81 graphics/metafiledrv/metafiledrv.o \
82 graphics/x11drv/x11drv.o \
83 ipc/ipc.o \
84 loader/loader.o \
85 memory/memory.o \
86 misc/misc.o \
87 msdos/msdos.o \
88 multimedia/multimedia.o \
89 objects/objects.o \
90 resources/resources.o \
91 scheduler/scheduler.o \
92 win32/win32.o \
93 windows/windows.o
95 EMUOBJS = \
96 debugger/debugger.o \
97 graphics/win16drv/win16drv.o \
98 if1632/if1632.o \
99 miscemu/miscemu.o
101 LIBOBJS = library/library.o
104 all: $(MAIN_TARGET)
106 install: install_$(MAIN_TARGET)
108 wine wine.sym: $(COMMONSUBDIRS) $(EMUSUBDIRS) dummy
109 $(CC) -o wine $(COMMONOBJS) $(EMUOBJS) $(LDOPTIONS) $(X_LIBS) $(XPM_LIB) $(XLIB) $(LDLIBS)
110 nm -n wine | grep -v _compiled >wine.sym
112 install_wine: dummy
113 $(INSTALL_PROGRAM) wine $(bindir)/wine
114 $(INSTALL_DATA) wine.man $(mandir)/wine$(manext)
116 libwine.a: $(COMMONSUBDIRS) $(LIBSUBDIRS) dummy
117 $(RM) $@
118 $(AR) $@ $(COMMONOBJS) $(LIBOBJS)
119 $(RANLIB) $@
121 install_libwine.a: dummy
122 $(INSTALL_DATA) libwine.a $(libdir)
124 libwine.so.1.0: $(COMMONSUBDIRS) $(LIBSUBDIRS) dummy
125 $(CC) -shared -Wl,-soname,libwine.so.1 -o$@ $(COMMONOBJS) $(LIBOBJS) $(LDOPTIONS) $(X_LIBS) $(XPM_LIB) $(XLIB) $(LDLIBS)
127 install_libwine.so.1.0: dummy
128 $(INSTALL_DATA) libwine.so.1.0 $(libdir)
130 $(ALLSUBDIRS): dummy
131 @cd $@; $(SUBMAKE)
133 install_programs: dummy
134 @cd programs; $(SUBMAKE) install
136 depend: dummy
137 for i in $(COMMONSUBDIRS) $(LIBSUBDIRS) $(EMUSUBDIRS); do \
138 (cd $$i; $(MAKE) depend) || exit 1; \
139 done
141 etags:
142 etags `find . -name '*.[chS]' -print`
144 clean:
145 for i in $(ALLSUBDIRS); do (cd $$i; $(MAKE) clean) || exit 1; done
146 $(RM) *.o \#*\# *~ *.bak *.orig *.rej *.flc
147 $(RM) wine wine.sym libwine.a libwine.so.1.0 TAGS
148 (cd include; $(RM) *.o \#*\# *~ *.bak *.orig *.rej *.flc)
150 distclean: clean
151 $(RM) config.* Make.rules include/config.h
152 $(RM) `find . \( -name Makefile -o -size 0 \) -print`
154 configure: configure.in
155 autoconf
157 include/config.h.in: configure.in include/acconfig.h
158 autoheader -l include
160 dummy: