LOCAL_PATH:= $(call my-dir) CONFIG_DIRS := \ $(LOCAL_PATH)/objs \ $(LOCAL_PATH)/include \ $(LOCAL_PATH) \ CONFIG_INCLUDES := $(CONFIG_DIRS:%=-I%) MY_CC := $(CC) MY_LD := $(LD) MY_CFLAGS := $(CFLAGS) $(CONFIG_INCLUDES) MY_LDFLAGS := $(LDFLAGS) include $(CLEAR_VARS) LOCAL_NO_DEFAULT_COMPILER_FLAGS := true LOCAL_CC := $(MY_CC) LOCAL_CFLAGS := $(MY_CFLAGS) $(LOCAL_CFLAGS) LOCAL_LDFLAGS := $(MY_LDFLAGS) $(LOCAL_LDFLAGS) LOCAL_MODULE := libSDL LOCAL_SRC_FILES := # the main src/ sources # SRCS := SDL.c \ SDL_error.c \ SDL_fatal.c \ SRCS += events/SDL_active.c \ events/SDL_events.c \ events/SDL_expose.c \ events/SDL_keyboard.c \ events/SDL_mouse.c \ events/SDL_quit.c \ events/SDL_resize.c \ SRCS += file/SDL_rwops.c ifeq ($(CONFIG_LIBC),yes) SRCS += stdlib/SDL_getenv.c \ stdlib/SDL_iconv.c \ stdlib/SDL_malloc.c \ stdlib/SDL_qsort.c \ stdlib/SDL_stdlib.c \ stdlib/SDL_string.c endif ifeq ($(CONFIG_CPUINFO),yes) SRCS += cpuinfo/SDL_cpuinfo.c endif LOCAL_SRC_FILES += $(SRCS:%=src/%) # the Audio sources # SRCS := SDL_audio.c \ SDL_audiocvt.c \ SDL_audiodev.c \ SDL_mixer.c \ SDL_mixer_MMX.c \ dummy/SDL_dummyaudio.c \ ifeq ($(CONFIG_AUDIO_ALSA),yes) SRCS += alsa/SDL_alsa_audio.c endif ifeq ($(CONFIG_AUDIO_ESD),yes) SRCS += esd/SDL_esdaudio.c endif ifeq ($(CONFIG_AUDIO_OSS),yes) SRCS += dsp/SDL_dspaudio.c \ dma/SDL_dmaaudio.c endif ifeq ($(CONFIG_AUDIO_COREAUDIO),yes) SRCS += macosx/SDL_coreaudio.c endif ifeq ($(CONFIG_AUDIO_WAVEOUT),yes) SRCS += windib/SDL_dibaudio.c endif LOCAL_SRC_FILES += $(SRCS:%=src/audio/%) # the LoadSO sources # SRCS := ifeq ($(CONFIG_LOADSO_DLOPEN),yes) SRCS += dlopen/SDL_sysloadso.c endif ifeq ($(CONFIG_LOADSO_DLCOMPAT),yes) SRCS += macosx/SDL_dlcompat.c endif ifeq ($(CONFIG_LOADSO_WIN32),yes) SRCS += win32/SDL_sysloadso.c endif LOCAL_SRC_FILES += $(SRCS:%=src/loadso/%) # the Thread sources # SRCS := SDL_thread.c ifeq ($(CONFIG_THREAD_PTHREAD),yes) SRCS += pthread/SDL_syscond.c \ pthread/SDL_sysmutex.c \ pthread/SDL_syssem.c \ pthread/SDL_systhread.c endif ifeq ($(CONFIG_THREAD_WIN32),yes) SRCS += win32/SDL_sysmutex.c \ win32/SDL_syssem.c \ win32/SDL_systhread.c endif LOCAL_SRC_FILES += $(SRCS:%=src/thread/%) # the Timer sources # SRCS := SDL_timer.c ifeq ($(CONFIG_TIMER_UNIX),yes) SRCS += unix/SDL_systimer.c endif ifeq ($(CONFIG_TIMER_WIN32),yes) SRCS += win32/SDL_systimer.c endif LOCAL_SRC_FILES += $(SRCS:%=src/timer/%) # the Video sources # SRCS := SDL_RLEaccel.c \ SDL_blit.c \ SDL_blit_0.c \ SDL_blit_1.c \ SDL_blit_A.c \ SDL_blit_N.c \ SDL_bmp.c \ SDL_cursor.c \ SDL_gamma.c \ SDL_pixels.c \ SDL_stretch.c \ SDL_surface.c \ SDL_video.c \ SDL_yuv.c \ SDL_yuv_mmx.c \ SDL_yuv_sw.c \ SRCS += dummy/SDL_nullevents.c \ dummy/SDL_nullmouse.c \ dummy/SDL_nullvideo.c ifeq ($(CONFIG_VIDEO_WINDIB),yes) SRCS += windib/SDL_dibevents.c \ windib/SDL_dibvideo.c \ wincommon/SDL_sysevents.c \ wincommon/SDL_sysmouse.c \ wincommon/SDL_syswm.c \ wincommon/SDL_wingl.c endif ifeq ($(CONFIG_VIDEO_QUARTZ),yes) SRCS += quartz/SDL_QuartzGL.m \ quartz/SDL_QuartzVideo.m \ quartz/SDL_QuartzWM.m \ quartz/SDL_QuartzWindow.m \ quartz/SDL_QuartzYUV.m \ quartz/SDL_QuartzEvents.m \ maccommon/SDL_macevents.c \ maccommon/SDL_macgl.c \ maccommon/SDL_macmouse.c \ maccommon/SDL_macwm.c endif ifeq ($(CONFIG_VIDEO_X11),yes) SRCS += x11/SDL_x11dyn.c \ x11/SDL_x11dga.c \ x11/SDL_x11events.c \ x11/SDL_x11gamma.c \ x11/SDL_x11gl.c \ x11/SDL_x11image.c \ x11/SDL_x11modes.c \ x11/SDL_x11mouse.c \ x11/SDL_x11video.c \ x11/SDL_x11wm.c \ x11/SDL_x11yuv.c endif ifeq ($(CONFIG_VIDEO_X11_DGAMOUSE),yes) SRCS += x11/SDL_x11dga.c endif ifeq ($(CONFIG_VIDEO_X11_XME),yes) SRCS += Xext/XME/xme.c endif ifeq ($(CONFIG_VIDEO_X11_XINERAMA),yes) SRCS += Xext/Xinerama/Xinerama.c endif ifeq ($(CONFIG_VIDEO_X11_XV),yes) SRCS += Xext/Xv/Xv.c endif LOCAL_SRC_FILES += $(SRCS:%=src/video/%) include $(BUILD_HOST_STATIC_LIBRARY) ## Build libSDLmain ## include $(CLEAR_VARS) LOCAL_NO_DEFAULT_COMPILER_FLAGS := true LOCAL_CC := $(MY_CC) LOCAL_CFLAGS := $(MY_CFLAGS) $(LOCAL_CFLAGS) LOCAL_LDFLAGS := $(MY_LDFLAGS) $(LOCAL_LDFLAGS) LOCAL_MODULE := libSDLmain SRCS := ifeq ($(CONFIG_MAIN_DUMMY),yes) SRCS += dummy/SDL_dummy_main.c endif ifeq ($(CONFIG_MAIN_MACOSX),yes) SRCS += macosx/SDLMain.m endif ifeq ($(HOST_OS),windows) SRCS += win32/SDL_win32_main.c endif LOCAL_SRC_FILES := $(SRCS:%=src/main/%) include $(BUILD_HOST_STATIC_LIBRARY) # handle installation of generated files # SDL_HEADERS := \ SDL.h \ SDL_active.h \ SDL_audio.h \ SDL_byteorder.h \ SDL_cdrom.h \ SDL_copying.h \ SDL_cpuinfo.h \ SDL_endian.h \ SDL_error.h \ SDL_events.h \ SDL_getenv.h \ SDL_joystick.h \ SDL_keyboard.h \ SDL_keysym.h \ SDL_loadso.h \ SDL_main.h \ SDL_mouse.h \ SDL_mutex.h \ SDL_name.h \ SDL_opengl.h \ SDL_platform.h \ SDL_quit.h \ SDL_rwops.h \ SDL_stdinc.h \ SDL_syswm.h \ SDL_thread.h \ SDL_timer.h \ SDL_types.h \ SDL_version.h \ SDL_video.h \ begin_code.h \ close_code.h \ $(foreach target,$(INSTALL_TARGETS),\ $(eval $(call install-target,objs/sdl-config,$(target)/bin/sdl-config)) \ $(eval $(call install-target,objs/SDL_config.h,$(target)/include/SDL/SDL_config.h)) \ $(eval $(call install-target,objs/libSDL.a,$(target)/lib/libSDL.a)) \ $(eval $(call install-target,objs/libSDLmain.a,$(target)/lib/libSDLmain.a)) \ $(foreach header,$(SDL_HEADERS), \ $(eval $(call install-target,include/$(header),$(target)/include/SDL/$(header))) \ ) \ )