forked from len0rd/rockbox
android: Get the port up and running again
The build system needed fixes because the tools paths changed and one tool that we used (apkbuilder) was removed entirely. Recent NDKs don't ship gcc 4.4.3 anymore, therefore switch to 4.6. The code itself needed a fix for a jni reference bug that was uncovered by KitKat. The port now builds with latest sdk (r22) and ndk (r9d). Change-Id: Id74fa54ba93bbb0ee30373fbe79e92c5ff03201d
This commit is contained in:
parent
2a71c08533
commit
6499ce3e44
7 changed files with 60 additions and 52 deletions
|
@ -4,5 +4,6 @@
|
|||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="src" path="gen"/>
|
||||
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
|
||||
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
|
||||
<classpathentry kind="output" path="bin/classes"/>
|
||||
</classpath>
|
||||
|
|
|
@ -28,16 +28,17 @@ $(CPUFEAT_BUILD)/cpu-features.o: $(CPUFEAT)/cpu-features.c
|
|||
.PHONY: apk classes clean dex dirs libs jar
|
||||
|
||||
# API version
|
||||
ANDROID_PLATFORM_VERSION=16
|
||||
ANDROID_PLATFORM_VERSION=19
|
||||
ANDROID_PLATFORM=$(ANDROID_SDK_PATH)/platforms/android-$(ANDROID_PLATFORM_VERSION)
|
||||
|
||||
# android tools
|
||||
AAPT=$(ANDROID_SDK_PATH)/platform-tools/aapt
|
||||
DX=$(ANDROID_SDK_PATH)/platform-tools/dx
|
||||
APKBUILDER=$(ANDROID_SDK_PATH)/tools/apkbuilder
|
||||
BUILD_TOOLS_VERSION=19.0.3
|
||||
AAPT=$(ANDROID_SDK_PATH)/build-tools/$(BUILD_TOOLS_VERSION)/aapt
|
||||
DX=$(ANDROID_SDK_PATH)/build-tools/$(BUILD_TOOLS_VERSION)/dx
|
||||
ZIPALIGN=$(ANDROID_SDK_PATH)/tools/zipalign
|
||||
KEYSTORE=$(HOME)/.android/debug.keystore
|
||||
ADB=$(ANDROID_SDK_PATH)/platform-tools/adb
|
||||
BUILDAPK=$(ANDROID_DIR)/buildapk.sh
|
||||
|
||||
CLASSPATH := $(BUILDDIR)/bin/classes
|
||||
|
||||
|
@ -130,8 +131,7 @@ $(BINLIB_DIR)/lib%.so: $(RBCODEC_BLD)/codecs/%.codec
|
|||
libs: $(DIRS) $(LIBS)
|
||||
|
||||
$(TEMP_APK): $(AP_) $(LIBS) $(DEX) | $(DIRS)
|
||||
$(call PRINTS,APK $(subst $(BUILDDIR)/,,$@))$(APKBUILDER) $@ \
|
||||
-u -z $(AP_) -f $(DEX) -nf $(BUILDDIR)/libs
|
||||
$(call PRINTS,APK $(subst $(BUILDDIR)/,,$@))$(BUILDAPK) $(BUILDDIR) $(notdir $@) $(BUILD_TOOLS_VERSION)
|
||||
|
||||
$(KEYSTORE):
|
||||
$(SILENT)mkdir -p $(HOME)/.android
|
||||
|
|
19
android/buildapk.sh
Executable file
19
android/buildapk.sh
Executable file
|
@ -0,0 +1,19 @@
|
|||
#!/bin/sh
|
||||
|
||||
BUILDDIR=$1
|
||||
APK=$2
|
||||
SDKV=$3
|
||||
|
||||
[ -z $ANDROID_SDK_PATH ] && exit 1
|
||||
[ -z $BUILDDIR ] && exit 1
|
||||
[ -d $BUILDDIR ] || exit 1
|
||||
|
||||
# need to cd into the bin dir and create a symlink to the libraries
|
||||
# so that aapt puts the libraries with the correct prefix into the apk
|
||||
cd $BUILDDIR/bin
|
||||
ln -nfs $BUILDDIR/libs lib
|
||||
cp resources.ap_ $APK
|
||||
$ANDROID_SDK_PATH/build-tools/$SDKV/aapt add $APK classes.dex > /dev/null
|
||||
$ANDROID_SDK_PATH/build-tools/$SDKV/aapt add $APK lib/*/* > /dev/null
|
||||
|
||||
exit 0
|
|
@ -8,4 +8,4 @@
|
|||
# project structure.
|
||||
|
||||
# Project target.
|
||||
target=android-16
|
||||
target=android-19
|
||||
|
|
|
@ -57,14 +57,6 @@ public class RockboxFramebuffer extends SurfaceView
|
|||
setEnabled(false);
|
||||
}
|
||||
|
||||
/* second stage init; called from Rockbox with information about the
|
||||
* display framebuffer */
|
||||
private void initialize(int lcd_width, int lcd_height)
|
||||
{
|
||||
btm = Bitmap.createBitmap(lcd_width, lcd_height, Bitmap.Config.RGB_565);
|
||||
setEnabled(true);
|
||||
}
|
||||
|
||||
private void update(ByteBuffer framebuffer)
|
||||
{
|
||||
SurfaceHolder holder = getHolder();
|
||||
|
@ -138,5 +130,7 @@ public class RockboxFramebuffer extends SurfaceView
|
|||
public native void surfaceDestroyed(SurfaceHolder holder);
|
||||
public void surfaceChanged(SurfaceHolder holder, int format, int width, int height)
|
||||
{
|
||||
btm = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565);
|
||||
setEnabled(true);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue