trivial amd64 implementation of memcpy32
[drnoksnes] / debian / rules
index 71b8b4a..2239c4f 100755 (executable)
@@ -22,11 +22,16 @@ MAEMO_VERSION := $(shell cut -d"." -f1 /etc/maemo_version)
 GAME_VERSION := $(shell head -n 1 debian/changelog | sed 's/[^0-9.-]//g')
 
 # Default CFLAGS
-CFLAGS = -Wall -g -DMAEMO -DMAEMO_VERSION=$(MAEMO_VERSION)
+CFLAGS := -Wall -g -DMAEMO -DMAEMO_VERSION=$(MAEMO_VERSION)
+CXXFLAGS := -Wall -g -DMAEMO -DMAEMO_VERSION=$(MAEMO_VERSION)
 GUI_CFLAGS := -std=c99 -fPIC -shared $(CFLAGS)
-LDFLAGS = -Wl,-z,defs
+LDFLAGS := -Wl,-z,defs -Wl,-O1
 GUI_LDFLAGS := -export-dynamic -avoid-version -module -shared $(LDFLAGS)
-ASFLAGS = -g
+ASFLAGS := -g
+
+# Compiler optimization settings
+OPT_CFLAGS := -O2 -fomit-frame-pointer -ffast-math
+OPT_CXXFLAGS := $(OPT_CFLAGS) -fno-exceptions -fno-rtti
 
 M4=m4
 M4DEFS=-DMAEMO_MAJOR=$(MAEMO_VERSION)
@@ -34,20 +39,26 @@ M4DEFS=-DMAEMO_MAJOR=$(MAEMO_VERSION)
 # Architecture specific CFLAGS
 ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
        CFLAGS += -O0
+       CXXFLAGS += -O0
+       GUI_CFLAGS += -O0
 else ifneq (,$(findstring armel,$(ARCH)))
-       CFLAGS += -O2
+       CFLAGS += $(OPT_CFLAGS)
+       CXXFLAGS += $(OPT_CXXFLAGS)
        GUI_CFLAGS += -Os
        ifneq (,$(findstring vfp,$(DEB_BUILD_OPTIONS)))
                CFLAGS += -march=armv6j -mtune=arm1136jf-s -mfpu=vfp -mfloat-abi=softfp
                ASFLAGS += -march=armv6j -mfpu=vfp -mfloat-abi=softfp
        endif
-       # Fixes hang while exiting in Diablo.
-       CFLAGS += -static-libgcc
+       ifeq ($(shell expr "$(MAEMO_VERSION)" "<" 5), 1)
+               # Fixes hang while exiting in Diablo.
+               CFLAGS += -static-libgcc
+       endif
 else ifneq (,$(findstring i386,$(ARCH)))
-       CFLAGS += -O2
+       CFLAGS += $(OPT_CFLAGS)
+       CXXFLAGS += $(OPT_CXXFLAGS)
        GUI_CFLAGS += -O2
 else
-       # Don't support anything else yet
+       # Don't support anything else
        crash
 endif
 
@@ -61,16 +72,21 @@ configure-stamp:
        $(M4) $(M4DEFS) debian/drnoksnes.postinst.m4 > debian/drnoksnes.postinst
        
        echo ARCH="$(ARCH)" > config.mk
+       echo CONF_GUI=1 >> config.mk
 ifeq ($(shell expr "$(MAEMO_VERSION)" ">" 4), 1)
        # Maemo 5 devices do not support Xsp
-       echo CONF_XSP=0 >> config.mk
+       # But they support hildon compositing stuff
+       echo CONF_HD=1 >> config.mk
+else
+       echo CONF_XSP=1 >> config.mk
 endif
        echo ASFLAGS="$(ASFLAGS)" >> config.mk
        echo CFLAGS="$(CFLAGS)" >> config.mk
-       echo CXXFLAGS="$(CFLAGS)" >> config.mk
+       echo CXXFLAGS="$(CXXFLAGS)" >> config.mk
        echo LDFLAGS="$(LDFLAGS)" >> config.mk
        
-       echo CFLAGS="$(GUI_CFLAGS)" > gui/config.mk
+       echo CONF_NLS=1 > gui/config.mk
+       echo CFLAGS="$(GUI_CFLAGS)" >> gui/config.mk
        echo LDFLAGS="$(GUI_LDFLAGS)" >> gui/config.mk
        echo MAEMO_VERSION="$(MAEMO_VERSION)" >> gui/config.mk
        echo GAME_VERSION="$(GAME_VERSION)" >> gui/config.mk