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@
50 graphics
/metafiledrv \
71 PROGSUBDIRS
= libtest programs
73 ALLSUBDIRS
= $(COMMONSUBDIRS
) $(EMUSUBDIRS
) $(LIBSUBDIRS
) $(PROGSUBDIRS
)
79 graphics
/metafiledrv
/metafiledrv.o \
80 graphics
/x11drv
/x11drv.o \
85 multimedia
/multimedia.o \
87 resources
/resources.o \
93 graphics
/win16drv
/win16drv.o \
97 LIBOBJS
= library
/library.o
102 install: install_
$(MAIN_TARGET
)
104 wine wine.sym
: $(COMMONSUBDIRS
) $(EMUSUBDIRS
) dummy
105 $(CC
) -o wine
$(COMMONOBJS
) $(EMUOBJS
) $(LDOPTIONS
) $(X_LIBS
) $(XPM_LIB
) $(XLIB
) $(LDLIBS
)
106 nm
-n wine | grep
-v _compiled
>wine.sym
109 $(INSTALL_PROGRAM
) wine
$(bindir)/wine
110 $(INSTALL_DATA
) wine.man
$(mandir)/wine
$(manext)
112 libwine.a
: $(COMMONSUBDIRS
) $(LIBSUBDIRS
) dummy
114 $(AR
) $@
$(COMMONOBJS
) $(LIBOBJS
)
117 install_libwine.a
: dummy
118 $(INSTALL_DATA
) libwine.a
$(libdir)
120 libwine.so
.1.0: $(COMMONSUBDIRS
) $(LIBSUBDIRS
) dummy
121 $(CC
) -shared
-Wl
,-soname
,libwine.so
.1 -o
$@
$(COMMONOBJS
) $(LIBOBJS
) $(LDOPTIONS
) $(X_LIBS
) $(XPM_LIB
) $(XLIB
) $(LDLIBS
)
123 install_libwine.so
.1.0: dummy
124 $(INSTALL_DATA
) libwine.so
.1.0 $(libdir)
129 install_programs
: dummy
130 @cd programs
; $(SUBMAKE
) install
133 for i in
$(COMMONSUBDIRS
) $(LIBSUBDIRS
) $(EMUSUBDIRS
); do \
134 (cd
$$i; $(MAKE
) depend
) || exit
1; \
138 etags
`find . -name '*.[chS]' -print`
141 for i in
$(ALLSUBDIRS
); do
(cd
$$i; $(MAKE
) clean) || exit
1; done
142 $(RM
) *.o \
#*\# *~ *.bak *.orig *.rej *.flc
143 $(RM
) wine wine.sym libwine.a libwine.so
.1.0 TAGS
144 (cd
include; $(RM
) *.o \
#*\# *~ *.bak *.orig *.rej *.flc)
147 $(RM
) config.
* Make.rules
include/config.h
148 $(RM
) `find . \( -name Makefile -o -size 0 \) -print`
150 configure
: configure.in
153 include/config.h.in
: configure.in
include/acconfig.h
154 autoheader
-l
include