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
21 XLIB
= @X_PRE_LIBS@
-lXext
-lX11 @X_EXTRA_LIBS@
26 SUBMAKE
= $(MAKE
) 'CC=$(CC)' 'CFLAGS=$(CFLAGS)' 'OPTIONS=$(OPTIONS)'
32 INSTALL_PROGRAM
= @INSTALL_PROGRAM@
33 INSTALL_DATA
= @INSTALL_DATA@
35 exec_prefix = @
exec_prefix@
38 mandir = @
mandir@
/man1
41 # Main target to build
43 MAIN_TARGET
= @MAIN_TARGET@
70 PROGSUBDIRS
= libtest programs
72 ALLSUBDIRS
= $(COMMONSUBDIRS
) $(EMUSUBDIRS
) $(LIBSUBDIRS
) $(PROGSUBDIRS
)
78 graphics
/x11drv
/x11drv.o \
83 multimedia
/multimedia.o \
85 resources
/resources.o \
91 graphics
/win16drv
/win16drv.o \
95 LIBOBJS
= library
/library.o
100 install: install_
$(MAIN_TARGET
)
102 wine wine.sym
: $(COMMONSUBDIRS
) $(EMUSUBDIRS
) dummy
103 $(CC
) -o wine
$(COMMONOBJS
) $(EMUOBJS
) $(LDOPTIONS
) $(X_LIBS
) $(XPM_LIB
) $(XLIB
) $(LDLIBS
)
104 nm
-n wine | grep
-v _compiled
>wine.sym
107 $(INSTALL_PROGRAM
) wine
$(bindir)/wine
108 $(INSTALL_DATA
) wine.man
$(mandir)/wine
$(manext)
110 libwine.a
: $(COMMONSUBDIRS
) $(LIBSUBDIRS
) dummy
112 $(AR
) $@
$(COMMONOBJS
) $(LIBOBJS
)
115 install_libwine.a
: dummy
116 $(INSTALL_DATA
) libwine.a
$(libdir)
118 libwine.so
.1.0: $(COMMONSUBDIRS
) $(LIBSUBDIRS
) dummy
119 $(CC
) -shared
-Wl
,-soname
,libwine.so
.1 -o
$@
$(COMMONOBJS
) $(LIBOBJS
) $(LDOPTIONS
) $(X_LIBS
) $(XPM_LIB
) $(XLIB
) $(LDLIBS
)
121 install_libwine.so
.1.0: dummy
122 $(INSTALL_DATA
) libwine.so
.1.0 $(libdir)
127 install_programs
: dummy
128 @cd programs
; $(SUBMAKE
) install
130 depend
: libdepend emudepend
133 for i in
$(COMMONSUBDIRS
) $(LIBSUBDIRS
); do
(cd
$$i; $(MAKE
) depend
); done
136 for i in
$(EMUSUBDIRS
); do
(cd
$$i; $(MAKE
) depend
); done
139 etags
`find . -name '*.[chS]' -print`
142 for i in
$(ALLSUBDIRS
); do
(cd
$$i; $(MAKE
) clean); done
143 $(RM
) *.o \
#*\# *~ *.bak *.orig *.rej *.flc
144 $(RM
) wine wine.sym libwine.a libwine.so
.1.0 TAGS
145 (cd
include; $(RM
) *.o \
#*\# *~ *.bak *.orig *.rej *.flc)
148 $(RM
) config.
* Make.rules
include/config.h
149 $(RM
) `find . \( -name Makefile -o -size 0 \) -print`
151 configure
: configure.in
154 include/config.h.in
: configure.in
include/acconfig.h
155 autoheader
-l
include