xenogenesi::blog
memento
3d adt android apache2 app apt aria2 build bullet cflags chromium codeigniter debian demoscene dependencies dpkg driver emulator freeglut gcc gfx git glut htaccess javascript json kernel linux make metalink minimal mysql opengl php python raspbian realtime rpi specs template toolchain update-alternatives video wifi wordpress

compile C for Android/arm from adt prebuilt

ADB=$(HOME)/dev/a/android/adt-bundle-linux-x86-20130729/sdk/platform-tools/adb

AND_PREBUILT=$(HOME)/dev/a/android/src/prebuilt
AND_PLATFORM=android-8

CC=$(AND_PREBUILT)/linux-x86/toolchain/arm-linux-androideabi-4.4.x/bin/arm-linux-androideabi-gcc
#CC=$(AND_PREBUILT)/linux-x86/toolchain/arm-eabi-4.2.1/bin/arm-eabi-gcc
#CC=$(AND_PREBUILT)/linux-x86/toolchain/arm-eabi-4.3.1/bin/arm-eabi-gcc
#CC=$(AND_PREBUILT)/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-gcc

CFLAGS += -Wall -O0 -fno-stack-protector
CFLAGS += -mno-thumb
CFLAGS += --sysroot=$(AND_PREBUILT)/ndk/android-ndk-r5/platforms/$(AND_PLATFORM)/arch-arm
CFLAGS += -I$(HOME)/dev/a/android/src/system/core/include
#LDFLAGS += -nostdlib -lc -ldl
#LIBS += $(AND_PREBUILT)/ndk/android-ndk-r5/platforms/$(AND_PLATFORM)/arch-arm/usr/lib/crtbegin_dynamic.o

zergrush_LDFLAGS += -L.
zergrush_LIBS += -ldiskconfig -lcutils

all: zergrush 

%.o: %.c
    $(CC) $(CFLAGS) -c -o $@ $^

libcutils.so libdiskconfig.so:
    $(ADB) pull /system/lib/$@

zergrush: zergRush.o libcutils.so libdiskconfig.so
    $(CC) $(CFLAGS) -o $@ $^ $(zergrush_LDFLAGS) $(zergrush_LIBS)

.PHONY: install
install: zergrush
    $(ADB) push zergrush /data/local/tmp/zergrush
    $(ADB) shell chmod 0755 /data/local/tmp/$(TARGET)

.PHONY: clean
clean: $(wildcard zergrush *.o)
    -[ "$<" = "" ] || rm -fr $<

.PHONY: adb
adb:
    @echo $(ADB)