It works on other platforms
because it's open source? Isn't that a bit of an overstatement? For the fun of it, I just downloaded this and tried to compile on my Linux box:
~/tmp/tmp# uname -a
Linux susie 2.6.27.39-0.2-default #1 SMP 2009-11-23 12:57:38 +0100 x86_64 x86_64 x86_64 GNU/Linux
~/tmp/tmp# cat /etc/SuSE-release
openSUSE 11.1 (x86_64)
VERSION = 11.1
~/tmp/tmp# wget http://launchpad.net/redshift/trunk/1.4.1/+download/redshift-1.4.1.tar.bz2
~/tmp/tmp# tar xf redshift-1.4.1.tar.bz2
~/tmp/tmp# cd redshift-1.4.1/
~/tmp/tmp/redshift-1.4.1# ./configure
[...]
redshift 1.4.1
prefix: /usr/local
compiler: gcc -std=gnu99
cflags: -g -O2
ldflags:
Adjustment methods:
RANDR: yes
VidMode: yes
WinGDI: no
Location providers:
GNOME Clock: no
GUI: statusicon
~/tmp/tmp/redshift-1.4.1# make
~/tmp/tmp/redshift-1.4.1# make
make all-recursive
make[1]: Entering directory `/root/tmp/tmp/redshift-1.4.1'
Making all in src
make[2]: Entering directory `/root/tmp/tmp/redshift-1.4.1/src'
Making all in gtk-redshift
make[3]: Entering directory `/root/tmp/tmp/redshift-1.4.1/src/gtk-redshift'
sed -e "s|\@gui_module\@|statusicon|g" gtk-redshift.in > gtk-redshift
make[3]: Leaving directory `/root/tmp/tmp/redshift-1.4.1/src/gtk-redshift'
make[3]: Entering directory `/root/tmp/tmp/redshift-1.4.1/src'
CC redshift.o
In file included from redshift.c:60:
gamma-randr.h:33: error: expected specifier-qualifier-list before xcb_randr_crtc_t
make[3]: *** [redshift.o] Error 1
make[3]: Leaving directory `/root/tmp/tmp/redshift-1.4.1/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/root/tmp/tmp/redshift-1.4.1/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/tmp/tmp/redshift-1.4.1'
make: *** [all] Error 2
This is Linux mind you, not some AIX box on which it will never compile, even though it has X11 installed. (And yes, I know I can disable RANDR in the above case and it will compile, that's beside the point)