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)