Try to guess the target system automatically
[maemo-efl] / trunk / imlib2 / debian / rules
index 6230be9..495c7c5 100755 (executable)
@@ -9,17 +9,44 @@ DEB_CONFIGURE_EXTRA_FLAGS := --disable-mmx            \
                                                         --without-gif          \
                                                         --without-id3
 
-DEB_BUILD_ARCH  ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH)
-
 CFLAGS += -I/usr/X11R6/include
 
-ifneq (,$(findstring armel,$(DEB_BUILD_ARCH)))
-       CFLAGS += -DNDEBUG=1 -fomit-frame-pointer -O2 -ffast-math -funsafe-math-optimizations -fno-math-errno -fsingle-precision-constant
-       ifneq (,$(findstring n8x0,$(DEB_BUILD_OPTIONS)))
-               CFLAGS += -mfpu=vfp -mfloat-abi=softfp -mcpu=arm1136jf-s
-       endif
-       ifneq (,$(findstring n770,$(DEB_BUILD_OPTIONS)))
-               CFLAGS += -mcpu=arm926ej-s
+DEB_BUILD_ARCH?=$(shell dpkg-architecture -qDEB_BUILD_ARCH)
+
+ifeq ($(DEB_BUILD_ARCH),armel)
+       COMMON_CFLAGS=-DNDEBUG=1 -fomit-frame-pointer -O2 -ffast-math -funsafe-math-optimizations -fno-math-errno -fsingle-precision-constant
+       N770_CFLAGS=-mcpu=arm926ej-s
+       N8x0_CFLAGS=-mfpu=vfp -mfloat-abi=softfp -mcpu=arm1136jf-s
+       ifneq ($(DEB_BUILD_OPTIONS),)
+               ifneq (,$(findstring n8x0,$(DEB_BUILD_OPTIONS)))
+                       SPECIFIC_CFLAGS=$(N8x0_CFLAGS)
+               else
+                       ifneq (,$(findstring n770,$(DEB_BUILD_OPTIONS)))
+                               SPECIFIC_CFLAGS=$(N770_CFLAGS)
+                       endif
+               endif
        endif
+    ifeq ($(SPECIFIC_CFLAGS),)
+        ifeq (0,$(shell test -e /etc/osso_software_version; echo $$?))
+            SW_VERSION?=$(shell cat /etc/osso_software_version|cut -d_ -f2)
+                       ifneq (,$(findstring $(SW_VERSION),OSSO1.1 2008SE DIABLO))
+                               SPECIFIC_CFLAGS=$(N8x0_CFLAGS)
+            endif
+               endif
+       ifeq ($(SPECIFIC_CFLAGS),)
+            # Our last hope is to look at the value returned by `sb-conf current`
+            SB_CURRENT?=$(shell sb-conf current|cut -d_ -f1)
+                       ifneq (,$(findstring $(SB_CURRENT),GREGALE BORA CHINOOK DIABLO))
+                               ifeq ($(SB_CURRENT),GREGALE)
+                                       SPECIFIC_CFLAGS=$(N770_CFLAGS)
+                               else
+                                       SPECIFIC_CFLAGS=$(N8x0_CFLAGS)
+                               endif
+                       else
+                               COMMON_CFLAGS=
+                       endif
+        endif
+    endif
 endif
 
+CFLAGS+=$(COMMON_CFLAGS) $(SPECIFIC_CFLAGS)