Makefile.pandora
author Sam Lantinga
Sun, 05 Apr 2020 08:58:47 -0700
changeset 13689 c3055b205671
parent 12131 9601849b3079
permissions -rw-r--r--
Fixed bug 5015 - SDL_RenderReadPixels on DirectX 11.1 backend seems to be broken

Konrad

It appears that I cannot use SDL_RenderReadPixels on a bound framebuffer (SDL_Texture set as render target) as it simply results in gibberish data. However, drawing that framebuffer into the default target (window surface) does render it correctly. Other backends (OpenGL, software, Direct3D) do work fine.

It looks to me like D3D11_RenderReadPixels just gets the general backbuffer and not the current render target and its backbuffer.

Here is the patch which actually fetches the current render target and its underlying ID3D11Resource which is ID3D11Texture2D.
slouken@3161
     1
# Makefile to build the pandora SDL library
slouken@3161
     2
slouken@3161
     3
AR	= arm-none-linux-gnueabi-ar
slouken@3161
     4
RANLIB	= arm-none-linux-gnueabi-ranlib
slouken@3161
     5
CC = arm-none-linux-gnueabi-gcc
slouken@3161
     6
CXX = arm-none-linux-gnueabi-g++
slouken@3161
     7
STRIP = arm-none-linux-gnueabi-strip
slouken@3161
     8
slouken@3161
     9
CFLAGS  = -O3 -march=armv7-a -mcpu=cortex-a8 -mtune=cortex-a8 -mfloat-abi=softfp \
slouken@3161
    10
	-mfpu=neon -ftree-vectorize -ffast-math -fomit-frame-pointer -fno-strict-aliasing -fsingle-precision-constant \
philipp@11108
    11
	-I./include -I$(PNDSDK)/usr/include
slouken@3161
    12
slouken@3161
    13
TARGET  = libSDL.a
slouken@3161
    14
slouken@12131
    15
SOURCES = 
slouken@12131
    16
	./src/*.c \
slouken@12131
    17
	./src/atomic/*.c \
slouken@12131
    18
	./src/audio/*.c \
slouken@12131
    19
	./src/audio/disk/*.c \
slouken@12131
    20
	./src/audio/dsp/*.c \
slouken@12131
    21
	./src/audio/dummy/*.c \
slouken@12131
    22
	./src/cpuinfo/*.c \
slouken@12131
    23
	./src/events/*.c \
slouken@12131
    24
	./src/file/*.c \
slouken@12131
    25
	./src/filesystem/unix/*.c \
slouken@12131
    26
	./src/haptic/*.c \
slouken@12131
    27
	./src/haptic/linux/*.c \
slouken@12131
    28
	./src/joystick/*.c \
slouken@12131
    29
	./src/joystick/linux/*.c \
slouken@12131
    30
	./src/loadso/dlopen/*.c \
slouken@12131
    31
	./src/power/*.c \
slouken@12131
    32
	./src/sensor/*.c \
slouken@12131
    33
	./src/sensor/dummy/*.c \
slouken@12131
    34
	./src/stdlib/*.c \
slouken@12131
    35
	./src/thread/*.c \
slouken@12131
    36
	./src/thread/pthread/SDL_syscond.c \
slouken@12131
    37
	./src/thread/pthread/SDL_sysmutex.c \
slouken@12131
    38
	./src/thread/pthread/SDL_syssem.c \
slouken@12131
    39
	./src/thread/pthread/SDL_systhread.c \
slouken@12131
    40
	./src/timer/*.c \
slouken@12131
    41
	./src/timer/unix/*.c \
slouken@12131
    42
	./src/video/*.c \
slouken@12131
    43
	./src/video/dummy/*.c \
slouken@12131
    44
	./src/video/pandora/SDL_pandora.o \
slouken@12131
    45
	./src/video/pandora/SDL_pandora_events.o \
slouken@12131
    46
	./src/video/x11/*.c \
slouken@3161
    47
	
slouken@3161
    48
slouken@3161
    49
OBJECTS = $(shell echo $(SOURCES) | sed -e 's,\.c,\.o,g')
slouken@3161
    50
philipp@11108
    51
CONFIG_H = $(shell cp include/SDL_config_pandora.h include/SDL_config.h)
slouken@3218
    52
slouken@3161
    53
all: $(TARGET)
slouken@3161
    54
slouken@3161
    55
$(TARGET): $(CONFIG_H) $(OBJECTS)
slouken@3161
    56
	$(AR) crv $@ $^
slouken@3161
    57
	$(RANLIB) $@
slouken@3161
    58
slouken@3161
    59
clean:
slouken@3161
    60
	rm -f $(TARGET) $(OBJECTS)