1 ### Generated by Winemaker
4 ### Generic autoconf variables
20 INCLUDE_PATH = -Iinclude
26 ### gc.dll sources and settings
28 gc_wine_dll_MODULE = gc.dll
29 gc_wine_dll_BASEMODULE= gc
31 gc_wine_dll_C_SRCS = allchblk.c \
54 gc_wine_dll_CXX_SRCS = gc_cpp.cpp
56 gc_wine_dll_SPEC_SRCS = gc.dll.spec
57 gc_wine_dll_DLL_PATH = -L$(WINE_DLL_ROOT)
58 gc_wine_dll_DLLS = advapi32 \
68 gc_wine_dll_LIBRARY_PATH=
69 gc_wine_dll_LIBRARIES =
72 gc_wine_dll_OBJS = $(gc_wine_dll_C_SRCS:.c=.o) \
73 $(gc_wine_dll_CXX_SRCS:.cpp=.o) \
78 ### Global source lists
80 C_SRCS = $(gc_wine_dll_C_SRCS)
81 CXX_SRCS = $(gc_wine_dll_CXX_SRCS)
82 RC_SRCS = $(gc_wine_dll_RC_SRCS)
83 SPEC_SRCS = $(gc_wine_dll_SPEC_SRCS)
87 ### Generic autoconf targets
89 all: wineapploader $(SUBDIRS) $(DLLS:%=%.so) $(EXES:%=%.so)
91 wineapploader: wineapploader.in
92 sed -e 's,@bindir\@,$(bindir),g' -e 's,@winelibdir\@,.,g' $(SRCDIR)/wineapploader.in >$@ || $(RM) $@
95 # Copyright 2000 Francois Gouget for CodeWeavers
96 # fgouget@codeweavers.com
98 # Global rules shared by all makefiles -*-Makefile-*-
100 # Each individual makefile must define the following variables:
101 # TOPOBJDIR : top-level object directory
102 # SRCDIR : source directory for this module
104 # Each individual makefile may define the following additional variables:
106 # SUBDIRS : subdirectories that contain a Makefile
107 # DLLS : WineLib libraries to be built
108 # EXES : WineLib executables to be built
110 # CEXTRA : extra c flags (e.g. '-Wall')
111 # CXXEXTRA : extra c++ flags (e.g. '-Wall')
112 # WRCEXTRA : extra wrc flags (e.g. '-p _SysRes')
113 # DEFINES : defines (e.g. -DSTRICT)
114 # INCLUDE_PATH : additional include path
115 # LIBRARY_PATH : additional library path
116 # LIBRARIES : additional Unix libraries to link with
118 # C_SRCS : C sources for the module
119 # CXX_SRCS : C++ sources for the module
120 # RC_SRCS : resource source files
121 # SPEC_SRCS : interface definition files
126 WINE_INCLUDE_ROOT = /usr/include/wine
127 WINE_INCLUDE_PATH = -I/usr/include/wine
130 WINE_DLL_ROOT = /usr/local/lib
131 WINE_DLL_PATH = -L/usr/local/lib/wine
133 LDPATH = LD_LIBRARY_PATH=":$$LD_LIBRARY_PATH"
144 # Global definitions and options
146 GLOBAL_DEFINES = -DSILENT -DGC_BUILD -DALL_INTERIOR_POINTERS -DGC_WIN32_THREADS -D_WIN32
147 GLOBAL_INCLUDE_PATH =
150 GLOBAL_LIBRARY_PATH =
153 # First some useful definitions
159 WRC = /usr/local/bin/wrc
160 CFLAGS = -g -O2 -fPIC $(CEXTRA)
161 CXXFLAGS = -g -O2 -fpermissive -fno-for-scope $(CXXEXTRA)
162 WRCFLAGS = -J -m $(WRCEXTRA)
163 OPTIONS = -D_REENTRANT
164 LIBS = -lm $(LIBRARY_PATH)
165 DIVINCL = $(GLOBAL_INCLUDE_PATH) -I$(SRCDIR) $(INCLUDE_PATH) $(WINE_INCLUDE_PATH)
166 ALLCFLAGS = $(DIVINCL) $(CFLAGS) $(GLOBAL_DEFINES) $(DEFINES) $(OPTIONS)
167 ALLCXXFLAGS=$(DIVINCL) $(CXXFLAGS) $(GLOBAL_DEFINES) $(DEFINES) $(OPTIONS)
168 ALL_DLL_PATH = $(DLL_PATH) $(GLOBAL_DLL_PATH) $(WINE_DLL_PATH)
169 ALL_LIBRARY_PATH = $(LIBRARY_PATH) $(GLOBAL_LIBRARY_PATH) $(WINE_LIBRARY_PATH)
170 WINE_LIBRARIES = -lwine -lwine_unicode -lwine_uuid
171 ALL_LIBRARIES = $(LIBRARIES:%=-l%) $(GLOBAL_LIBRARIES:%=-l%) $(WINE_LIBRARIES)
172 LDSHARED = $(CC) -shared
173 LDXXSHARED= $(CXX) -shared
174 LDDLLFLAGS= -Wl,-Bsymbolic
176 STRIPFLAGS= --strip-unneeded
181 WINE = /usr/local/bin/wine
182 WINEBUILD = /usr/local/bin/winebuild
188 INSTALL_PROGRAM = $(INSTALL)
189 INSTALL_SCRIPT = $(INSTALL)
190 INSTALL_DATA = $(INSTALL) -m 644
192 exec_prefix = ${prefix}
193 bindir = ${exec_prefix}/bin
194 libdir = ${exec_prefix}/lib
195 infodir = ${prefix}/info
196 mandir = ${prefix}/man
197 dlldir = ${exec_prefix}/lib/wine
202 OBJS = $(C_SRCS:.c=.o) $(CXX_SRCS:.cpp=.o) \
203 $(SPEC_SRCS:.spec=.spec.o)
204 CLEAN_FILES = *.spec.c y.tab.c y.tab.h lex.yy.c \
206 \\\#*\\\# *~ *% .\\\#*
207 DISTCLEAN_FILES = config.* Makefile Make.rules
211 .SUFFIXES: .cpp .rc .res .spec .spec.c .spec.o
214 $(CC) -c $(ALLCFLAGS) -o $@ $<
217 $(CXX) -c $(ALLCXXFLAGS) -o $@ $<
220 $(CXX) -c $(ALLCXXFLAGS) -o $@ $<
223 $(CXX) -c $(ALLCXXFLAGS) -o $@ $<
226 $(LDPATH) $(WRC) $(WRCFLAGS) $(DIVINCL) -o $@ $<
228 .PHONY: all install uninstall clean distclean depend dummy
230 # 'all' target first in case the enclosing Makefile didn't define any target
240 $(SUBDIRS:%=%/__clean__): dummy
241 cd `dirname $@` && $(MAKE) clean
243 $(EXTRASUBDIRS:%=%/__clean__): dummy
244 -cd `dirname $@` && $(RM) $(CLEAN_FILES)
246 clean:: $(SUBDIRS:%=%/__clean__) $(EXTRASUBDIRS:%=%/__clean__)
247 $(RM) $(CLEAN_FILES) $(RC_SRCS:.rc=.res) $(OBJS) $(EXES:%.exe=%) $(EXES:%=%.so) $(EXES:%=%.spec.o) $(DLLS:%=%.so) $(DLLS:%=%.spec.o)
249 # Rule for distcleaning
252 $(RM) $(DISTCLEAN_FILES)
254 # Rules for installing
256 $(SUBDIRS:%=%/__install__): dummy
257 cd `dirname $@` && $(MAKE) install
259 $(SUBDIRS:%=%/__uninstall__): dummy
260 cd `dirname $@` && $(MAKE) uninstall
269 # End of global rules
272 _list="$(SUBDIRS)"; for i in $$_list; do (cd $$i; $(MAKE) install) || exit 1; done
273 _list="$(EXES:%.exe=%)"; for i in $$_list; do $(INSTALL_SCRIPT) $$i $(bindir); done
274 _list="$(EXES:%=%.so) $(DLLS:%=%.so)"; for i in $$_list; do $(INSTALL_PROGRAM) $$i $(dlldir); done
277 _list="$(SUBDIRS)"; for i in $$_list; do (cd $$i; $(MAKE) uninstall) || exit 1; done
278 _list="$(EXES:%.exe=%)"; for i in $$_list; do $(RM) $(bindir)/$$i;done
279 _list="$(EXES:%=%.so) $(DLLS:%=%.so)"; for i in $$_list; do $(RM) $(dlldir)/$$i;done
282 $(RM) wineapploader $(EXES:%.exe=%)
284 ### Target specific build rules
286 $(gc_wine_dll_MODULE).spec.c: $(gc_wine_dll_SPEC_SRCS) $(gc_wine_dll_RC_SRCS:.rc=.res) $(gc_wine_dll_OBJS)
287 $(LDPATH) $(WINEBUILD) -fPIC -o $@ $(gc_wine_dll_SPEC_SRCS:%=--spec %) $(gc_wine_dll_RC_SRCS:%.rc=%.res) $(gc_wine_dll_OBJS) $(gc_wine_dll_DLL_PATH) $(WINE_DLL_PATH) $(GLOBAL_DLL_PATH) $(gc_wine_dll_DLLS:%=-l%) $(GLOBAL_DLLS:%=-l%)
289 $(gc_wine_dll_MODULE).so: $(gc_wine_dll_MODULE).spec.o $(gc_wine_dll_OBJS) $(gc_wine_dll_DEPENDS)
290 $(LDXXSHARED) $(LDDLLFLAGS) -o $@ $(gc_wine_dll_OBJS) $(gc_wine_dll_MODULE).spec.o $(gc_wine_dll_LIBRARY_PATH) $(ALL_LIBRARY_PATH) $(gc_wine_dll_LIBRARIES:%=-l%) $(ALL_LIBRARIES) $(LIBS)