Safer handling of Booleans.
[AROS.git] / workbench / libs / muimaster / makefile.aos4
blobd9400b4ff11c456ceb9124ecf594f7a7eb2397a7
2 # Makefile for zunemaster.library
5 # If Kickstart isn't defined, we don't run on AmigaOS
6 ifndef Kickstart
8 CROSS_COMPILE = ppc-amigaos-
9 RM     = rm -R
10 MKDIR  = mkdir -p
12 else
14 RM = delete all
15 MKDIR = makedir
16 endif
18 # Uncomment the next line if you are cross compiling
20 CC     = $(CROSS_COMPILE)gcc
21 CXX    = $(CROSS_COMPILE)c++
22 AS     = $(CROSS_COMPILE)as
23 LD     = $(CROSS_COMPILE)ld
24 RANLIB = $(CROSS_COMPILE)ranlib
25 STRIP  = $(CROSS_COMPILE)strip
27 # Change these as required
28 OPTIMIZE = -O0 # -O3
29 DEBUG = #-g #-DMYDEBUG #-ggdb # -g -DDEBUG
30 INC = -I include -I .
31 CFLAGS = -D__AMIGAOS4__ -D__USE_OLD_TIMEVAL__ -DNDEBUG -D__USE_INLINE__ -Wall -fno-strict-aliasing  -mcrt=clib2 -c $(OPTIMIZE) $(DEBUG) $(INC)
33 # Flags passed to gcc during linking
34 LINK = -nostartfiles -mcrt=clib2
36 # Name of the "thing" to build
37 TARGET = zunemaster.library
39 # Additional linker libraries
40 LIBS = -ldebug -lm
42 # Version of the binary to build
43 VERSION = 0
45 # Source code files used in this project
47 ASRCS= #amiga-mui/hookentry.S amiga-mui/muidispatcherentry.S
49 CLASSSRCS=aboutmui.c\
50         application.c \
51         area.c \
52         balance.c \
53         bitmap.c \
54         bodychunk.c \
55         boopsi.c \
56         chunkyimage.c \
57         coloradjust.c \
58         colorfield.c \
59         configdata.c \
60         crawling.c \
61         cycle.c \
62         dataspace.c \
63         dirlist.c \
64         family.c \
65         frameadjust.c \
66         framedisplay.c \
67         gauge.c \
68         group.c \
69         image.c \
70         imageadjust.c \
71         imagedisplay.c \
72         knob.c \
73         levelmeter.c \
74         list.c \
75         listview.c \
76         mccprefs.c \
77         menuitem.c \
78         notify.c \
79         numeric.c \
80         numericbutton.c \
81         penadjust.c \
82         pendisplay.c \
83         popasl.c \
84         popframe.c \
85         popimage.c \
86         poplist.c \
87         popobject.c \
88         poppen.c \
89         popscreen.c \
90         popstring.c \
91         prop.c \
92         radio.c \
93         rectangle.c \
94         register.c \
95         scale.c \
96         scrollbar.c \
97         scrollbutton.c \
98         scrollgroup.c \
99         semaphore.c \
100         settings.c \
101         settingsgroup.c \
102         slider.c \
103         string.c \
104         text.c \
105         virtgroup.c \
106         volumelist.c \
107         window.c
108 #       iconlist.c \
109 #       iconlistview.c \
111 BASEARCHSRCS=\
112         bubbleengine.c \
113         clipboard.c \
114         datatypescache.c \
115         dragndrop.c \
116         font.c \
117         frame.c \
118         imspec_gradient.c \
119         imspec_vector.c \
120         imspec.c \
121         menu.c \
122         mui_addclipping.c \
123         mui_addclipregion.c \
124         mui_allocaslrequest.c \
125         mui_aslrequest.c \
126         mui_beginrefresh.c \
127         mui_createcustomclass.c \
128         mui_deletecustomclass.c \
129         mui_disposeobject.c \
130         mui_endrefresh.c \
131         mui_error.c \
132         mui_freeaslrequest.c \
133         mui_freeclass.c \
134         mui_getclass.c \
135         mui_layout.c \
136         mui_makeobject.c \
137         mui_newobject.c \
138         mui_obtainpen.c \
139         mui_rejectidcmp.c \
140         mui_releasepen.c \
141         mui_redraw.c \
142         mui_removeclipping.c \
143         mui_removeclipregion.c \
144         mui_request.c \
145         mui_requestidcmp.c \
146         mui_seterror.c \
147         penspec.c \
148         support_amigaos.c \
149         support_classes.c \
150         support.c \
151         textengine.c \
152         zunemaster_68k.c \
153         zunemaster_init-aos4.c
155 SRCS = $(BASEARCHSRCS) $(addprefix classes/,$(CLASSSRCS))
157 # -------------------------------------------------------------
159 OBJS = $(SRCS:%.c=ppc-amigaos-objs/%.o)
160 AOBJS = $(ASRCS:%.S=ppc-amigaos-objs/%.o)
162 all: envs dirs $(TARGET)
164 .PHONY: envs
165 envs:
167 .PHONY: dirs
168 dirs:
169         -$(MKDIR) ppc-amigaos-objs ppc-amigaos-objs/classes
171 buildincludes: buildincludes.c
172         gcc $< -o $@
174 .PHONY: includes
175 includes: dirs buildincludes
176         -$(RM) include-generated
177         -$(MKDIR) include-generated include-generated/libraries include-generated/proto include-generated/inline4 include-generated/interfaces
178         ./buildincludes >include-generated/libraries/mui.h
179         cp include/proto/zunemaster.h include-generated/proto
180         cp include/proto/muimaster.h include-generated/proto
181         cp include/inline4/zunemaster.h include-generated/inline4
182         cp include/interfaces/zunemaster.h include-generated/interfaces
184 # Rules for building
185 $(TARGET): $(OBJS) $(AOBJS)
186         $(CC) $(LINK) -o $@.debug $(OBJS) $(AOBJS) $(LIBS) -Wl,--cref,-M,-Map=$@.map
187         $(STRIP) --strip-all -o $@ $@.debug
188         cp zunemaster.library.debug "/cygdrive/c/Dokumente und Einstellungen/sba/Eigene Dateien/AmigaOne/zunemaster.library"
190 ppc-amigaos-objs/%.o: %.c
191         $(CC) $(CFLAGS) -c $< -o $@
193 .PHONY: clean
194 clean:
195         $(RM) $(TARGET) $(OBJS) ppc-amigaos-objs
197 .PHONY: revision
198 revision:
199         bumprev $(VERSION) $(TARGET)