This should solve an error which made the nightly build fail with:
[AROS-Contrib.git] / bgui / mmakefile
blob37d2cab7c1594c6a066f44d145ec5ba25b825904
1 include $(TOP)/config/make.cfg
2 include make.cfg
4 o=+$(BUILD_TYPE).o
5 DEBUG_OPTIONS=
6 STANDARD_OPTIONS=
7 ENHANCED_OPTIONS=-DENHANCED
9 LD = $(AROS_LD)
10 LDINCR_FLAG = -r
12 #DEFINES should really not define ENHANCED but for AROS it's fine.
13 DEFINES := -DENHANCED
15 OS_INCLUDES_DIR := $(AROS_INCLUDES)
16 INCLUDES_DIR    := $(AROS_INCLUDES)
18 OS_INCLUDES     := -I$(AROS_INCLUDES)
20 USER_INCLUDES   := -I. -I$(INCLUDES_DIR)
22 INCLUDES        := $(USER_INCLUDES) $(OS_INCLUDES)
23 CFLAGS          := $(INCLUDES)
25 INCLUDE_FILES = \
26         o/bgui.library_rev.h \
27         $(INCLUDES_DIR)/libraries/bgui.h \
28         $(INCLUDES_DIR)/libraries/bgui_macros.h \
29         $(INCLUDES_DIR)/bgui/bgui_compilerspecific.h \
30         $(INCLUDES_DIR)/bgui/bgui.h \
31         $(INCLUDES_DIR)/bgui/bgui_image.h \
32         $(INCLUDES_DIR)/bgui/bgui_locale.h \
33         $(INCLUDES_DIR)/bgui/bgui_asl.h \
34         $(INCLUDES_DIR)/bgui/bgui_arexx.h \
35         $(INCLUDES_DIR)/bgui/bgui_cx.h \
36         $(INCLUDES_DIR)/bgui/bgui_obsolete.h \
37         $(INCLUDES_DIR)/bgui/bgui_macros.h \
38         $(INCLUDES_DIR)/bgui/bgui_proto.h \
39         $(INCLUDES_DIR)/bgui/bgui_pragmas.h \
40         $(INCLUDES_DIR)/pragma/bgui_lib.h \
41         $(INCLUDES_DIR)/bgui/bgui_lib.fd \
42         $(INCLUDES_DIR)/clib/bgui_protos.h \
43         $(INCLUDES_DIR)/defines/bgui.h \
44         $(INCLUDES_DIR)/proto/bgui.h \
45         $(INCLUDES_DIR)/bgui/bgui_bar.h \
46         $(INCLUDES_DIR)/libraries/bgui_bar.h \
47         $(INCLUDES_DIR)/bgui/bgui_treeview.h \
48         $(INCLUDES_DIR)/libraries/bgui_treeview.h \
49         $(INCLUDES_DIR)/bgui/bgui_layoutgroup.h \
50         $(INCLUDES_DIR)/libraries/bgui_layoutgroup.h \
51         $(INCLUDES_DIR)/bgui/bgui_prefs.h
53 #MM contrib-bgui : contrib-bgui-setup linklib-bgui bgui-prefs bgui-gadgets-common bgui-test bgui-examples
54 contrib-bgui : bgui-library bgui-gadgets
56 #MM contrib-bgui-setup : includes linklibs bgui-setup bgui-includes-copy
57 contrib-bgui-setup : bgui-setup bgui-includes-copy
59 #MM bgui-gadgets : bgui-gadgets-common
60 bgui-gadgets : gadgets
62 #MM clean
64 #MM contrib-bgui-clean : bgui-test-clean bgui-examples-clean
65 contrib-bgui-clean : clean
67 standard_build :
68         @$(ECHO) "Making BGUI standard version..."
69         @$(MAKE) -f mmakefile BUILD_TYPE=S build
71 enhanced_build :
72         @$(ECHO) "Making BGUI enhanced version..."
73         @$(MAKE) -f mmakefile BUILD_TYPE=E build
75 build : bin/bgui.library.$(BUILD_TYPE)
76 # tools
78 gadget_directories = \
79 gadgets/PopButton \
80 gadgets/Palette \
81 gadgets/TreeView \
82 gadgets/Bar \
83 gadgets/LayoutGroup
85 gadgets: $(INCLUDE_FILES) $(gadget_directories)
86         $(foreach f,$(gadget_directories), $(MAKE) TOP=$(TOP) -f Makefile.aros -C $(f) all;)
89 OBJECTS =  \
90         o/plmain$(o) \
91         o/plboopsi$(o) \
92         o/plgfx$(o) \
93         o/plgroupclasses$(o) \
94         o/plimageclasses$(o) \
95         o/plgadgetclasses$(o) \
96         o/plaslclasses$(o) \
97         o/endtag.o
99 #MM bgui-setup
100 bgui-setup : makedirs
101         @$(CP) s/Package-Startup $(BGUISDIR)
102         @$(CP) s/Package-Shutdown $(BGUISDIR)
103         $(MKDIR) $(AROS_PACKAGES)
104         $(ECHO) "Extras:BGUI" >$(AROS_PACKAGES)/BGUI
105         
106 #MM bgui-includes-copy
107 bgui-includes-copy : $(INCLUDE_FILES)
109 #MM bgui-library : bgui-test bgui-examples
110 bgui-library : enhanced_build
112 all: makedirs \
113         $(INCLUDE_FILES) \
114         $(OBJECTS)
117 clean:
118         $(RM) -rf $(INCLUDE_FILES) o/*.o o/*.err
119         $(MAKE) TOP=$(TOP) -C gadgets/PopButton -f Makefile.aros clean
120         $(MAKE) TOP=$(TOP) -C gadgets/Palette -f Makefile.aros clean
121         $(MAKE) TOP=$(TOP) -C gadgets/TreeView -f Makefile.aros clean
122         $(MAKE) TOP=$(TOP) -C gadgets/Bar -f Makefile.aros clean
123         $(MAKE) TOP=$(TOP) -C gadgets/LayoutGroup -f Makefile.aros clean
125 makedirs : 
126         @$(MKDIR) $(INCLUDES_DIR)
127         @$(MKDIR) $(INCLUDES_DIR)/libraries
128         @$(MKDIR) $(INCLUDES_DIR)/bgui
129         @$(MKDIR) $(INCLUDES_DIR)/pragma
130         @$(MKDIR) $(BGUIDIR)
131         @$(MKDIR) $(BGUILIBSDIR)
132         @$(MKDIR) $(BGUIEXAMPLESDIR)
133         @$(MKDIR) $(BGUITESTSDIR)
134         @$(MKDIR) $(BGUISDIR)
135         @$(MKDIR) $(BGUIPREFSDIR)
136         @$(MKDIR) $(BGUICLASSESDIR)
137         @$(MKDIR) $(BGUIGADGETSDIR)
139         
140 o/bgui.library_rev.h: bgui.library_rev.rev
141         @$(CP) bgui.library_rev.rev o/bgui.library_rev.h
143 $(INCLUDES_DIR)/libraries/bgui.h : include/libraries_bgui.h
144         @$(CP) include/libraries_bgui.h $@
146 $(INCLUDES_DIR)/libraries/bgui_macros.h : include/libraries_bgui_macros.h
147         @$(CP) include/libraries_bgui_macros.h $@
149 $(INCLUDES_DIR)/bgui/bgui_compilerspecific.h : include/bgui_compilerspecific.h
150         @$(CP) include/bgui_compilerspecific.h $@
152 $(INCLUDES_DIR)/bgui/bgui.h : include/bgui.h
153         @$(CP) include/bgui.h $@
155 $(INCLUDES_DIR)/bgui/bgui_image.h : include/bgui_image.h
156         @$(CP) include/bgui_image.h $@
158 $(INCLUDES_DIR)/bgui/bgui_locale.h : include/bgui_locale.h
159         @$(CP) include/bgui_locale.h $@
161 $(INCLUDES_DIR)/bgui/bgui_asl.h : include/bgui_asl.h
162         @$(CP) include/bgui_asl.h $@
164 $(INCLUDES_DIR)/bgui/bgui_arexx.h : include/bgui_arexx.h
165         @$(CP) include/bgui_arexx.h $@
167 $(INCLUDES_DIR)/bgui/bgui_cx.h : include/bgui_cx.h
168         @$(CP) include/bgui_cx.h $@
170 $(INCLUDES_DIR)/bgui/bgui_obsolete.h : include/bgui_obsolete.h
171         @$(CP) include/bgui_obsolete.h $@
173 $(INCLUDES_DIR)/bgui/bgui_macros.h : include/bgui_macros.h
174         @$(CP) include/bgui_macros.h $@
176 $(INCLUDES_DIR)/bgui/bgui_proto.h : include/bgui_proto.h
177         @$(CP) include/bgui_proto.h $@
179 $(INCLUDES_DIR)/bgui/bgui_pragmas.h : include/bgui_pragmas.h
180         @$(CP) include/bgui_pragmas.h $@
182 $(INCLUDES_DIR)/pragma/bgui_lib.h : include/pragma/bgui_lib.h
183         @$(CP) include/pragma/bgui_lib.h $@
185 $(INCLUDES_DIR)/bgui/bgui_lib.fd : include/bgui_lib.fd
186         @$(CP) include/bgui_lib.fd $@
188 $(INCLUDES_DIR)/clib/bgui_protos.h : include/aros/bgui_protos_clib.h
189         @$(CP) include/aros/bgui_protos_clib.h $@
191 $(INCLUDES_DIR)/defines/bgui.h : include/aros/bgui_defines.h
192         @$(CP) include/aros/bgui_defines.h $@
194 $(INCLUDES_DIR)/proto/bgui.h : include/bgui_proto_aros.h
195         @$(CP) $^ $@
197 #Gadgets includes
199 $(INCLUDES_DIR)/bgui/bgui_bar.h : gadgets/Bar/include/BarClass.h
200         @$(CP) $^ $@
202 $(INCLUDES_DIR)/libraries/bgui_bar.h : include/libraries_bgui_bar.h
203         @$(CP) $^ $@
205 $(INCLUDES_DIR)/bgui/bgui_treeview.h : gadgets/TreeView/include/TreeViewClass.h
206         @$(CP) $^ $@
208 $(INCLUDES_DIR)/libraries/bgui_treeview.h : include/libraries_bgui_treeview.h
209         @$(CP) $^ $@
211 $(INCLUDES_DIR)/bgui/bgui_layoutgroup.h : gadgets/LayoutGroup/include/LayoutGroupClass.h
212         @$(CP) $^ $@
214 $(INCLUDES_DIR)/libraries/bgui_layoutgroup.h : include/libraries_bgui_layoutgroup.h
215         @$(CP) $^ $@
217 $(INCLUDES_DIR)/bgui/bgui_prefs.h : include/bgui_prefs.h
218         @$(CP) $^ $@
220 bin/bgui.library.$(BUILD_TYPE) : o/libtag.o \
221                 o/plmain$(o) \
222                 o/plgfx$(o) \
223                 o/plboopsi$(o) \
224                 o/plimageclasses$(o) \
225                 o/plgadgetclasses$(o) \
226                 o/plgroupclasses$(o) \
227                 o/plaslclasses$(o) \
228                 o/endtag.o
229 #       if ($(BUILD_TYPE) eq D)
230         @$(CC) $(DEBUG_OPTIONS) $(DEFINES) -c ver.c -o o/ver.o
231 #       endif
232 #       ifeq ($(BUILD_TYPE),S)
233 #       @$(CC) $(STANDARD_OPTIONS) $(DEFINES) -c ver.c -o o/ver.o
234 #       endif
235 #       ifeq ($(BUILD_TYPE),E)
236 #       @$(CC) $(ENHANCED_OPTIONS) $(DEFINES) -c ver.c -o o/ver.o
237 #       endif
238         @$(ECHO) Linking $@...
239         @$(AROS_CC) $(NOSTARTUP_LDFLAGS) $(LDFLAGS) \
240               o/libtag.o o/ver.o o/plmain$(o) o/plgfx$(o) o/plboopsi$(o) \
241               o/plimageclasses$(o) o/plgadgetclasses$(o) o/plaslclasses$(o) \
242               o/plgroupclasses$(o) o/endtag.o \
243               -L$(AROS_LIB) -lrom -o $@
244         @$(ECHO) Installing bgui.library...
245         @$(CP) $@ $(BGUIDIR)/Libs/bgui.library
247 main_o=o/lib$(o) o/libfunc$(o) o/task$(o) o/request$(o) \
248         o/misc$(o) o/bgui_locale$(o) o/miscc$(o)
249 #o/stkext$(o)
251 boopsi_o=o/classes$(o) o/dgm$(o) o/rootclass$(o)
252 #o/arexxclass$(o)
254 gfx_o=o/gfx$(o) o/blitter$(o) o/textclass$(o) o/strformat$(o)
256 group_o=o/windowclass$(o) o/groupclass$(o) o/spacingclass$(o) o/pageclass$(o) \
257    o/viewclass$(o) o/externalclass$(o)
259 image_o=o/frameclass$(o) o/labelclass$(o) o/separatorclass$(o) o/vectorclass$(o) o/systemiclass$(o)
261 gadget_o=o/baseclass$(o) o/areaclass$(o) o/buttonclass$(o) \
262    o/checkboxclass$(o) o/commodityclass$(o) o/cycleclass$(o) o/indicatorclass$(o) \
263    o/infoclass$(o) o/listclass$(o) o/mxclass$(o) o/progressclass$(o) o/propclass$(o) \
264    o/sliderclass$(o) o/stringclass$(o) o/radiobuttonclass$(o)
266 asl_o=o/aslreqclass$(o) o/filereqclass$(o) o/fontreqclass$(o) o/screenreqclass$(o)
268 o/plmain$(o): $(main_o)
269         @echo "Linking $@..."
270         @$(RM) -f $@
271         $(LD) $(LDINCR_FLAG) $(main_o) -o $@ 
273 o/plboopsi$(o): $(boopsi_o)
274         @echo "Linking $@..."
275         @$(RM) -f $@
276         @$(LD) $(LDINCR_FLAG) $(boopsi_o) -o $@
278 o/plgfx$(o): $(gfx_o)
279         @echo "Linking $@..."
280         @$(RM) -f $@
281         @$(LD) $(LDINCR_FLAG) $(gfx_o) -o $@
283 o/plgroupclasses$(o): $(group_o)
284         @echo "Linking $@..."
285         @$(RM) -f $@
286         @$(LD) $(LDINCR_FLAG) $(group_o) -o $@
288 o/plimageclasses$(o) : $(image_o)
289         @echo "Linking $@..."
290         @$(RM) -f $@
291         @$(LD) $(LDINCR_FLAG) $(image_o) -o $@
293 o/plgadgetclasses$(o) : $(gadget_o)
294         @echo "Linking $@..."
295         @$(RM) -f $@
296         @$(LD) $(LDINCR_FLAG) $(gadget_o) -o $@
298 o/plaslclasses$(o) : $(asl_o)
299         @echo "Linking $@..."
300         @$(RM) -f $@
301         @$(LD) $(LDINCR_FLAG) $(asl_o) -o $@
303 o/libtag.o: libtag.c
304         @$(CC) $(INCLUDES) -c $^ -o $@
306 o/endtag.o: endtag.c
307         @$(CC) $(INCLUDES) -c $^ -o $@
309 o/%$(o): %.c
310         @$(CC) $(CFLAGS) $(DEFINES) -c $< -o $@ 2>&1|tee $@.err