sdl-config.in
author Sam Lantinga <slouken@libsdl.org>
Thu, 11 May 2006 03:45:55 +0000
changeset 1812 9c882e94b545
parent 1647 2af911d41a08
child 1856 21f13c787b46
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 #!/bin/sh
     2 
     3 prefix=@prefix@
     4 exec_prefix=@exec_prefix@
     5 exec_prefix_set=no
     6 
     7 @ENABLE_STATIC_FALSE@usage="\
     8 @ENABLE_STATIC_FALSE@Usage: sdl-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version] [--cflags] [--libs]"
     9 @ENABLE_STATIC_TRUE@usage="\
    10 @ENABLE_STATIC_TRUE@Usage: sdl-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version] [--cflags] [--libs] [--static-libs]"
    11 
    12 if test $# -eq 0; then
    13       echo "${usage}" 1>&2
    14       exit 1
    15 fi
    16 
    17 while test $# -gt 0; do
    18   case "$1" in
    19   -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
    20   *) optarg= ;;
    21   esac
    22 
    23   case $1 in
    24     --prefix=*)
    25       prefix=$optarg
    26       if test $exec_prefix_set = no ; then
    27         exec_prefix=$optarg
    28       fi
    29       ;;
    30     --prefix)
    31       echo $prefix
    32       ;;
    33     --exec-prefix=*)
    34       exec_prefix=$optarg
    35       exec_prefix_set=yes
    36       ;;
    37     --exec-prefix)
    38       echo $exec_prefix
    39       ;;
    40     --version)
    41       echo @SDL_VERSION@
    42       ;;
    43     --cflags)
    44       echo -I@includedir@/SDL @SDL_CFLAGS@
    45       ;;
    46 @ENABLE_SHARED_TRUE@    --libs)
    47 @ENABLE_SHARED_TRUE@      echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_LIBS@
    48 @ENABLE_SHARED_TRUE@      ;;
    49 @ENABLE_STATIC_TRUE@@ENABLE_SHARED_TRUE@    --static-libs)
    50 @ENABLE_STATIC_TRUE@@ENABLE_SHARED_FALSE@    --libs|--static-libs)
    51 @ENABLE_STATIC_TRUE@      echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_STATIC_LIBS@
    52 @ENABLE_STATIC_TRUE@      ;;
    53     *)
    54       echo "${usage}" 1>&2
    55       exit 1
    56       ;;
    57   esac
    58   shift
    59 done