Try to guess the target device automatically
authoretrunko <eblima@gmail.com>
Thu, 17 Jul 2008 14:43:59 +0000 (14:43 +0000)
committeretrunko <eblima@gmail.com>
Thu, 17 Jul 2008 14:43:59 +0000 (14:43 +0000)
packages/lightmediascanner/debian/changelog
packages/lightmediascanner/debian/rules

index 3399805..e916e42 100644 (file)
@@ -1,3 +1,9 @@
+lightmediascanner (0.1.10-maemo3) unstable; urgency=low
+
+  * debian/rules: Try to guess target system automatically.
+
+ -- Eduardo Lima (Etrunko) <eduardo.lima@indt.org.br>  Sat, 12 Jul 2008 16:11:35 -0300
+
 lightmediascanner (0.1.10-maemo2) unstable; urgency=low
 
   * New release:
index ab90216..7c79469 100755 (executable)
@@ -3,15 +3,43 @@
 include /usr/share/cdbs/1/rules/debhelper.mk
 include /usr/share/cdbs/1/class/autotools.mk
 
-DEB_BUILD_ARCH  ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH)
+DEB_BUILD_ARCH?=$(shell dpkg-architecture -qDEB_BUILD_ARCH)
 
-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
+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)
+