Mercurial > sdl-ios-xcode
view Makefile.ds @ 4137:be12463f31ea SDL-1.2
Date: Sat, 2 Feb 2008 22:08:05 +0100
From: Marcus von Appen
To: sdl@lists.libsdl.org
Subject: [SDL] [Patch] SDL-1.2 SDL_revcpy() asm patch for the cld flag
Hi,
as reported through the FreeBSD bug tracking system in SDL 1.2.13 (and
in the 1.2 branch, if I see that correctly) the SDL_revcpy() macro sets
the direction flag (std), but does not clear it afterwards (cld), which
is wrong according to the GCC and SYS V specs. This can cause some
weird side effects, which in turn can lead to memory corruption.
You can read the full report with a detailed description and test
program at http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/120052
Attached is the submitted patch, which fixes the issue.
Regards
Marcus
author | Ryan C. Gordon <icculus@icculus.org> |
---|---|
date | Mon, 04 Feb 2008 17:22:56 +0000 |
parents | 8582c6a5ca16 |
children |
line wrap: on
line source
#LibSDL 1.2.12 #DS porting by Troy Davis(GPF) ifeq ($(strip $(DEVKITPRO)),) $(error "Please set DEVKITPRO in your environment. export DEVKITPRO=<path to>devkitPro) endif ifeq ($(strip $(DEVKITARM)),) DEVKITARM := $(DEVKITPRO)/devkitARM endif SRCS = $(shell echo ./src/*.c ./src/audio/*.c ./src/cdrom/*.c ./src/cpuinfo/*.c ./src/events/*.c ./src/file/*.c ./src/stdlib/*.c ./src/thread/*.c ./src/timer/*.c ./src/video/*.c ./src/joystick/*.c ./src/joystick/nds/*.c ./src/cdrom/dummy/*.c ./src/thread/generic/*.c ./src/timer/nds/*.c ./src/loadso/dummy/*.c ./src/audio/dummy/*.c ./src/audio/nds/*.c ./src/video/dummy/*.c ./src/video/nds/*.c) OBJS = $(SRCS:.c=.o) SUBDIRS= CC=arm-eabi-gcc CXX=arm-eabi-g++ LDSHARED=$(CXX) AR=arm-eabi-ar rc RANLIB=arm-eabi-ranlib CFLAGS = -mthumb -mthumb-interwork \ -march=armv5te -mtune=arm946e-s \ -O2 -Wall -Wwrite-strings -Wpointer-arith \ -DARM9 -D__NDS__ -I$(DEVKITPRO)/libnds/include -Iinclude CXXFLAGS += $(CFLAGS) all: $(DEVKITPRO)/libnds/lib/libSDL.a $(DEVKITPRO)/libnds/lib/libSDL.a: $(OBJS) $(AR) $@ $(OBJS) -@ ($(RANLIB) $@ || true) >/dev/null 2>&1 clean: find . -name "*.o" |xargs rm -f find . -name "*.d" |xargs rm -f -rm -f *.elf -rm -f *.nds -rm -f *.gba -rm -f *.arm9 -rm -f *.map -rm -f *.img -rm -Rf *.d subdirs: $(patsubst %, _dir_%, $(SUBDIRS)) $(patsubst %, _dir_%, $(SUBDIRS)): $(MAKE) -C $(patsubst _dir_%, %, $@) clean_subdirs: $(patsubst %, _clean_dir_%, $(SUBDIRS)) $(patsubst %, _clean_dir_%, $(SUBDIRS)): $(MAKE) -C $(patsubst _clean_dir_%, %, $@) clean #include $(DEVKITARM)/ds_rules