Makefile.minimal
author Sam Lantinga <slouken@libsdl.org>
Thu, 11 May 2006 03:45:55 +0000
changeset 1812 9c882e94b545
parent 1603 64710b9f3eeb
child 2494 a72a5f62d6b7
permissions -rw-r--r--
Fixed bug #208

So, here's a patch with a reimplementation of QZ_SetIcon() that does what I
described above. I apologize for the delay, I've been quite busy in the last
few days.

It appears to work here on 10.4.5 PPC in the limited testing that I've done;
I'll try to test it on 10.3.9 and 10.2.8 as well, but that might take another
week or so. Please test on i386.

Regarding alpha channels, per-surface alpha, and color keys, the same semantics
as for regular blits to an RGB surface should apply (for the final icon
composited onto the dock), unless I made a mistake - except in one pathological
case: if the icon surface has an alpha channel, its SDL_SRCALPHA flag is not
set (i.e. it has been explicitly cleared, since it's on by default for RGBA
surfaces), and it has a color key, plus an explicit mask was specified (instead
of the one autogenerated from the colorkey), then the color-keyed areas appear
black instead of transparent. I found no elegant way of fixing this, was too
lazy to implement the inelegant one, and decided that it isn't worth the effort
(but if someone disagrees, I can do it).
     1 # Makefile to build the SDL library
     2 
     3 INCLUDE = -I./include
     4 CFLAGS  = -g -O2 $(INCLUDE)
     5 AR	= ar
     6 RANLIB	= ranlib
     7 
     8 CONFIG_H = include/SDL_config.h
     9 TARGET  = libSDL.a
    10 SOURCES = \
    11 	src/*.c \
    12 	src/audio/*.c \
    13 	src/cdrom/*.c \
    14 	src/cpuinfo/*.c \
    15 	src/events/*.c \
    16 	src/file/*.c \
    17 	src/joystick/*.c \
    18 	src/stdlib/*.c \
    19 	src/thread/*.c \
    20 	src/timer/*.c \
    21 	src/video/*.c \
    22 	src/audio/dummy/*.c \
    23 	src/video/dummy/*.c \
    24 	src/joystick/dummy/*.c \
    25 	src/cdrom/dummy/*.c \
    26 	src/thread/generic/*.c \
    27 	src/timer/dummy/*.c \
    28 	src/loadso/dummy/*.c \
    29 
    30 OBJECTS = $(shell echo $(SOURCES) | sed -e 's,\.c,\.o,g')
    31 
    32 all: $(TARGET)
    33 
    34 $(TARGET): $(CONFIG_H) $(OBJECTS)
    35 	$(AR) crv $@ $^
    36 	$(RANLIB) $@
    37 
    38 $(CONFIG_H):
    39 	cp $(CONFIG_H).default $(CONFIG_H)
    40 
    41 clean:
    42 	rm -f $(TARGET) $(OBJECTS)