1 # Copyright © 2009-2019, The AROS Development Team. All rights reserved.
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/
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
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 \
122 #MM SDL-aros-staticlib : SDL-aros-includes
126 %build_linklib mmake=SDL-aros-staticlib libname=SDL_static \
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
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
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) \
176 %build_progs mmake=SDL-aros-gltests \
177 files=$(TESTGLFILES) targetdir=$(TESTEXEDIR) \
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)
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' $< > $@
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
252 %copy_files_q mmake=SDL-aros-tests-copyfiles files="$(DATAFILES)" src=$(ARCHSRCDIR)/test dst=$(TESTEXEDIR)