libxml2: copy the xml2-config to the crosstoolsdir and patch the paths in the native...
[AROS-Contrib.git] / SDL / SDL_main / mmakefile.src
blobeebd32b8f4682405e7e28016b159d05a7ec3da5d
1 # Copyright © 2009-2019, The AROS Development Team. All rights reserved.
2 # $Id$
4 include $(SRCDIR)/config/aros-contrib.cfg
6 #MM- contrib-sdl : SDL-aros
7 #MM- SDL-aros-lib : contrib-sdl-sdl-main-fetch SDL-aros-sharedlib
8 ##MM- SDL-aros-lib : contrib-sdl-sdl-main-fetch SDL-aros-staticlib
9 #MM- SDL-aros : SDL-aros-lib SDL-aros-tests
10 ##MM- SDL-aros-tests : SDL-aros-standardtests SDL-aros-gltests
12 #MM SDL-aros-sharedlib : SDL-aros-includes workbench-devs-AHI workbench-libs-mesa-linklib \
13 #MM  development-libiconv SDL-aros-config
15 REPOSITORIES := http://www.libsdl.org/release/
16 ARCHVER      := 1.2.15
17 ARCHBASE     := SDL-$(ARCHVER)
19 %fetch mmake=contrib-sdl-sdl-main-fetch archive=$(ARCHBASE) suffixes="tar.gz" \
20     location=$(PORTSSOURCEDIR) destination=$(PORTSDIR)/SDL \
21     archive_origins=". $(REPOSITORIES)" \
22     patches_specs=$(ARCHBASE)-aros.diff:$(ARCHBASE):-p1
24 ARCHSRCDIR := $(PORTSDIR)/SDL/$(ARCHBASE)
26 %create_patch mmake=contrib-sdl-sdl-main-create-patch archive=$(ARCHBASE) suffixes="tar.gz" destination=$(PORTSDIR)/SDL
28 TESTEXEDIR := $(AROS_TESTS)/SDL
30 FILES := \
31     $(ARCHSRCDIR)/src/SDL \
32     $(ARCHSRCDIR)/src/SDL_error \
33     $(ARCHSRCDIR)/src/SDL_fatal \
34     $(ARCHSRCDIR)/src/audio/SDL_audio \
35     $(ARCHSRCDIR)/src/audio/SDL_audiocvt \
36     $(ARCHSRCDIR)/src/audio/SDL_audiodev \
37     $(ARCHSRCDIR)/src/audio/SDL_mixer \
38     $(ARCHSRCDIR)/src/audio/SDL_mixer_MMX \
39     $(ARCHSRCDIR)/src/audio/SDL_mixer_MMX_VC \
40     $(ARCHSRCDIR)/src/audio/SDL_mixer_m68k \
41     $(ARCHSRCDIR)/src/audio/SDL_wave \
42     $(ARCHSRCDIR)/src/audio/dummy/SDL_dummyaudio \
43     $(ARCHSRCDIR)/src/audio/ahi/SDL_ahiaudio \
44     $(ARCHSRCDIR)/src/audio/disk/SDL_diskaudio \
45     $(ARCHSRCDIR)/src/cdrom/SDL_cdrom \
46     $(ARCHSRCDIR)/src/cdrom/aros/SDL_syscdrom \
47     $(ARCHSRCDIR)/src/cpuinfo/SDL_cpuinfo \
48     $(ARCHSRCDIR)/src/events/SDL_active \
49     $(ARCHSRCDIR)/src/events/SDL_events \
50     $(ARCHSRCDIR)/src/events/SDL_expose \
51     $(ARCHSRCDIR)/src/events/SDL_keyboard \
52     $(ARCHSRCDIR)/src/events/SDL_mouse \
53     $(ARCHSRCDIR)/src/events/SDL_quit \
54     $(ARCHSRCDIR)/src/events/SDL_resize \
55     $(ARCHSRCDIR)/src/file/SDL_rwops \
56     $(ARCHSRCDIR)/src/joystick/SDL_joystick \
57     $(ARCHSRCDIR)/src/joystick/aros/SDL_sysjoystick \
58     $(ARCHSRCDIR)/src/loadso/dummy/SDL_sysloadso \
59     $(ARCHSRCDIR)/src/stdlib/SDL_getenv \
60     $(ARCHSRCDIR)/src/stdlib/SDL_iconv \
61     $(ARCHSRCDIR)/src/stdlib/SDL_malloc \
62     $(ARCHSRCDIR)/src/stdlib/SDL_qsort \
63     $(ARCHSRCDIR)/src/stdlib/SDL_stdlib \
64     $(ARCHSRCDIR)/src/stdlib/SDL_string \
65     $(ARCHSRCDIR)/src/thread/aros/SDL_syscond \
66     $(ARCHSRCDIR)/src/thread/aros/SDL_sysmutex \
67     $(ARCHSRCDIR)/src/thread/aros/SDL_syssem \
68     $(ARCHSRCDIR)/src/thread/aros/SDL_systhread \
69     $(ARCHSRCDIR)/src/thread/aros/SDL_thread \
70     $(ARCHSRCDIR)/src/timer/SDL_timer \
71     $(ARCHSRCDIR)/src/timer/aros/SDL_systimer \
72     $(ARCHSRCDIR)/src/video/SDL_RLEaccel \
73     $(ARCHSRCDIR)/src/video/SDL_blit \
74     $(ARCHSRCDIR)/src/video/SDL_blit_0 \
75     $(ARCHSRCDIR)/src/video/SDL_blit_1 \
76     $(ARCHSRCDIR)/src/video/SDL_blit_A \
77     $(ARCHSRCDIR)/src/video/SDL_blit_N \
78     $(ARCHSRCDIR)/src/video/SDL_bmp \
79     $(ARCHSRCDIR)/src/video/SDL_cursor \
80     $(ARCHSRCDIR)/src/video/SDL_gamma \
81     $(ARCHSRCDIR)/src/video/SDL_pixels \
82     $(ARCHSRCDIR)/src/video/SDL_stretch \
83     $(ARCHSRCDIR)/src/video/SDL_surface \
84     $(ARCHSRCDIR)/src/video/SDL_video \
85     $(ARCHSRCDIR)/src/video/SDL_yuv \
86     $(ARCHSRCDIR)/src/video/SDL_yuv_mmx \
87     $(ARCHSRCDIR)/src/video/SDL_yuv_sw \
88     $(ARCHSRCDIR)/src/video/dummy/SDL_nullevents \
89     $(ARCHSRCDIR)/src/video/dummy/SDL_nullmouse \
90     $(ARCHSRCDIR)/src/video/dummy/SDL_nullvideo \
91     $(ARCHSRCDIR)/src/video/cgx/SDL_cgxevents \
92     $(ARCHSRCDIR)/src/video/cgx/SDL_cgxmouse \
93     $(ARCHSRCDIR)/src/video/cgx/SDL_cgxaccel \
94     $(ARCHSRCDIR)/src/video/cgx/SDL_cgxgl_LoadLibrary \
95     $(ARCHSRCDIR)/src/video/cgx/SDL_cgxgl_Quit \
96     $(ARCHSRCDIR)/src/video/cgx/SDL_cgxgl_CreateContext \
97     $(ARCHSRCDIR)/src/video/cgx/SDL_cgxgl_DestroyContext \
98     $(ARCHSRCDIR)/src/video/cgx/SDL_cgxgl_UpdateContext \
99     $(ARCHSRCDIR)/src/video/cgx/SDL_cgxgl_MakeCurrent \
100     $(ARCHSRCDIR)/src/video/cgx/SDL_cgxgl_SwapBuffers \
101     $(ARCHSRCDIR)/src/video/cgx/SDL_cgxgl_GetProcAddress \
102     $(ARCHSRCDIR)/src/video/cgx/SDL_cgxgl_GetAttribute \
103     $(ARCHSRCDIR)/src/video/cgx/SDL_cgximage \
104     $(ARCHSRCDIR)/src/video/cgx/SDL_cgxmodes \
105     $(ARCHSRCDIR)/src/video/cgx/SDL_cgxvideo \
106     $(ARCHSRCDIR)/src/video/cgx/SDL_cgxwm
108 SDLINCDIR := $(AROS_INCLUDES)/SDL
110 NOWARN_FLAGS := $(NOWARN_STRINGOP_TRUNCATION)
111 USER_CFLAGS := $(NOWARN_FLAGS) -std=gnu99
113 USER_INCLUDES := -I$(SDLINCDIR) -I$(ARCHSRCDIR) -I$(ARCHSRCDIR)/src -I$(AROS_CONTRIB_INCLUDES)
114 USER_CPPFLAGS := -DSDL_AROS_SHARED
115 USER_LDFLAGS := -L$(AROS_CONTRIB_LIB)
117 %build_module mmake=SDL-aros-sharedlib \
118     modname=SDL modtype=library \
119     files="$(ARCHSRCDIR)/aros_init $(FILES)" conffile=$(ARCHSRCDIR)/SDL.conf \
120     uselibs="GL iconv"
122 #MM SDL-aros-staticlib : SDL-aros-includes
124 USER_CPPFLAGS :=
126 %build_linklib mmake=SDL-aros-staticlib libname=SDL_static \
127     files="$(FILES)"
129 #MM SDL-aros-standardtests : includes linklibs SDL-aros-lib SDL-aros-tests-copyfiles
130 #MM SDL-aros-gltests : includes linklibs SDL-aros-lib SDL-aros-tests-copyfiles
132 TESTFILES := \
133     $(ARCHSRCDIR)/test/checkkeys \
134     $(ARCHSRCDIR)/test/graywin \
135     $(ARCHSRCDIR)/test/loopwave \
136     $(ARCHSRCDIR)/test/testalpha \
137     $(ARCHSRCDIR)/test/testbitmap \
138     $(ARCHSRCDIR)/test/testblitspeed \
139     $(ARCHSRCDIR)/test/testcdrom \
140     $(ARCHSRCDIR)/test/testcursor \
141     $(ARCHSRCDIR)/test/testerror \
142     $(ARCHSRCDIR)/test/testfile \
143     $(ARCHSRCDIR)/test/testgamma \
144     $(ARCHSRCDIR)/test/testiconv \
145     $(ARCHSRCDIR)/test/testjoystick \
146     $(ARCHSRCDIR)/test/testkeys \
147     $(ARCHSRCDIR)/test/testlock \
148     $(ARCHSRCDIR)/test/testoverlay2 \
149     $(ARCHSRCDIR)/test/testoverlay \
150     $(ARCHSRCDIR)/test/testpalette \
151     $(ARCHSRCDIR)/test/testplatform \
152     $(ARCHSRCDIR)/test/testsem \
153     $(ARCHSRCDIR)/test/testsprite \
154     $(ARCHSRCDIR)/test/testhread \
155     $(ARCHSRCDIR)/test/testtimer \
156     $(ARCHSRCDIR)/test/testver \
157     $(ARCHSRCDIR)/test/testvidinfo \
158     $(ARCHSRCDIR)/test/testwin \
159     $(ARCHSRCDIR)/test/testwm \
160     $(ARCHSRCDIR)/test/threadwin \
161     $(ARCHSRCDIR)/test/torturethread
163 TESTGLFILES := \
164     $(ARCHSRCDIR)/test/testdyngl \
165     $(ARCHSRCDIR)/test/testgl
167 DISABLEDTESTFILES := \
168     $(ARCHSRCDIR)/test/testloadso
170 USER_INCLUDES := -I$(SDLINCDIR) -I$(ARCHSRCDIR)/test
172 %build_progs mmake=SDL-aros-standardtests \
173     files=$(TESTFILES) targetdir=$(TESTEXEDIR) \
174     uselibs="SDL"
176 %build_progs mmake=SDL-aros-gltests \
177     files=$(TESTGLFILES) targetdir=$(TESTEXEDIR) \
178     uselibs="SDL GL"
180 INCLUDEFILES := \
181     SDL.h  \
182     begin_code.h  \
183     close_code.h  \
184     SDL_active.h  \
185     SDL_audio.h  \
186     SDL_byteorder.h  \
187     SDL_cdrom.h  \
188     SDL_config.h  \
189     SDL_config_aros.h  \
190     SDL_copying.h  \
191     SDL_cpuinfo.h  \
192     SDL_endian.h  \
193     SDL_error.h  \
194     SDL_events.h  \
195     SDL_getenv.h  \
196     SDL_joystick.h  \
197     SDL_keyboard.h  \
198     SDL_keysym.h  \
199     SDL_loadso.h  \
200     SDL_main.h  \
201     SDL_mouse.h  \
202     SDL_mutex.h  \
203     SDL_name.h  \
204     SDL_opengl.h  \
205     SDL_platform.h  \
206     SDL_quit.h  \
207     SDL_rwops.h  \
208     SDL_stdinc.h  \
209     SDL_syswm.h  \
210     SDL_thread.h  \
211     SDL_timer.h  \
212     SDL_types.h  \
213     SDL_version.h  \
214     SDL_video.h
216 #MM- SDL-aros-includes : contrib-sdl-sdl-main-fetch SDL_main-aros-includes
217 #MM SDL_main-aros-includes : libiconv-includes
219 STAMPFILE := $(GENDIR)/$(CURDIR)/.copy_stamp
222 SDL_main-aros-includes : setup-gendir $(STAMPFILE)
224 %rule_makedirs dirs=$(GENDIR)/$(CURDIR) setuptarget=setup-gendir
226 %rule_copy_diff_multi files=$(INCLUDEFILES) srcdir=$(ARCHSRCDIR)/include targetdir=$(SDLINCDIR) stampfile=$(STAMPFILE)
229 SDL-aros-config : \
230     $(TOOLDIR)/$(AROS_TARGET_CPU)-$(AROS_TARGET_ARCH)$(AROS_TARGET_SUFFIX)-aros-sdl-config \
231     $(AROS_DEVELOPER)/bin/sdl-config
233 $(TOOLDIR)/$(AROS_TARGET_CPU)-$(AROS_TARGET_ARCH)$(AROS_TARGET_SUFFIX)-aros-sdl-config: $(ARCHSRCDIR)/aros/sdl-config
234         @$(SED) 's,prefix=/$(AROS_DIR_DEVELOPER),prefix=$(AROS_DEVELOPER),g' $< > $@
235         @$(CHMOD) a+x $@
236         ln -sf $@ $(TOOLDIR)/$(AROS_TARGET_CPU)-$(AROS_TARGET_ARCH)$(AROS_TARGET_SUFFIX)/sdl-config
238 $(AROS_DEVELOPER)/bin/sdl-config: $(ARCHSRCDIR)/aros/sdl-config
239         %mkdir_q dir=$(AROS_DEVELOPER)/bin
240         @$(CP) $< $@
241         @$(CHMOD) a+x $@
243 DATAFILES := \
244     icon.bmp \
245     moose.dat \
246     picture.xbm \
247     sail.bmp \
248     sample.bmp \
249     sample.wav \
250     utf8.txt
252 %copy_files_q mmake=SDL-aros-tests-copyfiles files="$(DATAFILES)" src=$(ARCHSRCDIR)/test dst=$(TESTEXEDIR)
254 %common