From b6a65b425e6c2db1900ef76bbef487f9b0a776b4 Mon Sep 17 00:00:00 2001 From: AlexanderR Date: Wed, 25 Sep 2013 12:59:39 +1100 Subject: [PATCH] Added ScummVM --- metadata/org.scummvm.scummvm.txt | 51 +++++++++--- .../org.scummvm.scummvm/fdroid_build.patch | 83 +++++++++++++++++++ metadata/org.scummvm.scummvm/latest_sdk.patch | 34 ++++++++ 3 files changed, 155 insertions(+), 13 deletions(-) create mode 100644 metadata/org.scummvm.scummvm/fdroid_build.patch create mode 100644 metadata/org.scummvm.scummvm/latest_sdk.patch diff --git a/metadata/org.scummvm.scummvm.txt b/metadata/org.scummvm.scummvm.txt index 2ae5c19f59..d534b97e34 100644 --- a/metadata/org.scummvm.scummvm.txt +++ b/metadata/org.scummvm.scummvm.txt @@ -1,24 +1,49 @@ Category:Games -License:GPLv2 -Web Site:http://wiki.scummvm.org/index.php/Android -Source Code:https://github.com/scummvm/scummvm +License:GPLv3 +Web Site:http://scummvm.org +Source Code:https://github.com/scummvm/scummvm/ Issue Tracker:http://sourceforge.net/tracker/?group_id=37116&atid=418820 +Donate:http://sourceforge.net/donate/index.php?group_id=37116 -Auto Name:ScummVM -Summary:Game emulator +Summary:Adventure game player Description: +ScummVM is a program which allows you to run certain classic graphical point-and-click adventure +games, provided you already have their data files. List of supported engines include: +* SCUMM (Classic 2D [http://wiki.scummvm.org/index.php/LucasArts LucasArts] games: Full Throttle, Day of the Tentacle, etc.) +* AGI (Early [http://wiki.scummvm.org/index.php/Sierra Sierra] adventure games: King's Quest, Leisure Suit Larry etc.) +* SCI (Newer Sierra adventure games: Space Quest, Police Quest etc.) +* Kyra (Eye of the Beholder, The Legend of Kyrandia etc.) +* Gob (Urban Runner, Gobliiins series) +* SwordX (Broken Sword series) +* Sky (Beneath a Steel Sky) + +and numerous others. + +[https://raw.github.com/scummvm/scummvm/master/README Documentation] +[https://raw.github.com/scummvm/scummvm/master/dists/android/README.Android README of Android port] + +Unlike upstream build, this one has all plugins bundled together in single apk. External plugin apks +(e.g. from Google Play) won't work with this version and must be removed before installing it. . Repo Type:git -Repo:https://github.com/scummvm/scummvm.git +Repo:git://github.com/scummvm/scummvm.git -#No sound in this so far. Need to stop make from running ant -Build Version:1.6.0,13,!needs work 6387e3bca7,forcerversion=yes,forcevercode=yes,subdir=dists/android,\ -prebuild=export ANDROID_SDK="$$SDK$$ && export ANDROID_NDK="$$NDK$$" && \ -export PATH=${PATH}:$$NDK$$/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin && \ -./configure --host=android && make +Build Version:1.5.0,6,v1.5.0,extlibs=libmad/libmad-0.15.1b.tar.gz,srclibs=FLAC@1.2.1;Tremor@b31465b840,\ +update=no,target=android-17,patch=fdroid_build.patch;latest_sdk.patch,bindir=.,antcommand="-p",\ +init=echo -e '\n\n' > build.xml,\ +build=export ANDROID_SDK="$$SDK$$" && export ANDROID_NDK="$$NDK$$" \ +&& chmod +x fdroid_build \ +&& ./fdroid_build tremor $$Tremor$$ \ +&& ./fdroid_build mad \ +&& ./fdroid_build flac $$FLAC$$ \ +&& ./fdroid_build scummvm +# Releases are tagged, but according to backends/platform/android/android.mk (which also contains +# version codes), Market uploads take priority. They may lag notably behind general development, +# so checking http://sourceforge.net/projects/scummvm/files/scummvm/ is advisable as well. Auto Update Mode:None -Update Check Mode:Static - +Update Check Mode:None +Current Version:1.5.0 +Current Version Code:6 diff --git a/metadata/org.scummvm.scummvm/fdroid_build.patch b/metadata/org.scummvm.scummvm/fdroid_build.patch new file mode 100644 index 0000000000..1bc9e90356 --- /dev/null +++ b/metadata/org.scummvm.scummvm/fdroid_build.patch @@ -0,0 +1,83 @@ +commit 9dc92cd51b3f93d58709f1c5758d1f4b240de5e2 +Author: AlexanderR +Date: Sat Sep 21 19:59:26 2013 +1100 + + Added fdroid_build + +diff --git a/fdroid_build b/fdroid_build +new file mode 100755 +index 0000000..f9a86f4 +--- /dev/null ++++ b/fdroid_build +@@ -0,0 +1,71 @@ ++#!/bin/sh ++ ++BIN="$ANDROID_NDK/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin" ++ ++export PATH="$BIN:$PATH" ++export SYSROOT="$ANDROID_NDK/platforms/android-4/arch-arm/" ++export PREFIX="$BIN/arm-linux-androideabi-" ++export CC="${PREFIX}gcc --sysroot=$SYSROOT" ++export CXX="${PREFIX}g++ --sysroot=$SYSROOT" ++#export CPP="${PREFIX}cpp" ++export AS=${PREFIX}gcc ++export LD=${PREFIX}gcc ++export AR=${PREFIX}ar cru ++export RANLIB=${PREFIX}ranlib ++export STRIP=${PREFIX}strip ++export OBJCOPY=${PREFIX}objcopy ++ ++#export BOOTCLASSPATH="$$SDK$$/opt/android-sdk/platforms/android-10/android.jar" ++#export BOOTCLASSPATH="$$SDK$$/opt/android-sdk/platforms/android-17/android.jar" ++ ++export MACHDEP="--sysroot=$SYSROOT -mandroid -mthumb-interwork -D GL_GLEXT_PROTOTYPES" ++export CFLAGS="${MACHDEP} -Os -Wall -msoft-float -march=armv5te -mtune=xscale -D GL_GLEXT_PROTOTYPES" ++export CXXFLAGS="${CFLAGS}" ++export LDFLAGS="${MACHDEP}" ++ ++mkdir -p scummvm_libs && export PREF=`realpath ./scummvm_libs` ++ ++mad() { ++tar xfz libs/libmad-0.15.1b.tar.gz ++cd libmad-0.15.1b/ ++./configure --host=arm --prefix="$PREF" --enable-speed --enable-fpm=arm --disable-aso ++# They use some really old GCC options.. ++CFLAGS="$CFLAGS -Wno-error=unknown-warning" make ++make install ++} ++ ++flac() { ++cd $1 ++cp /usr/share/gettext/config.rpath . ++./autogen.sh --prefix="$PREF" --host=arm-linux-androideabi \ ++--disable-largefile \ ++--disable-thorough-tests \ ++--disable-doxygen-docs \ ++--disable-xmms-plugin \ ++--disable-cpplibs \ ++--disable-ogg \ ++--disable-oggtest \ ++--disable-rpath ++make -C src/libFLAC ++make -C src/libFLAC install ++make -C include install ++} ++ ++tremor() { ++cd $1 ++./autogen.sh --prefix="$PREF" --host=arm-linux-androideabi \ ++--enable-low-accuracy \ ++--enable-64kHz-limit \ ++--disable-sanity-checks ++make ++make install ++} ++ ++# "--default-dynamic" is too much of pain to distribute, so all plugins are bundled together ++scummvm() { ++./configure --host=android --enable-plugins \ ++--with-tremor-prefix="$PREF" --with-mad-prefix="$PREF" --with-flac-prefix="$PREF" ++make ++} ++ ++$1 $2 diff --git a/metadata/org.scummvm.scummvm/latest_sdk.patch b/metadata/org.scummvm.scummvm/latest_sdk.patch new file mode 100644 index 0000000000..8338fda6e4 --- /dev/null +++ b/metadata/org.scummvm.scummvm/latest_sdk.patch @@ -0,0 +1,34 @@ +diff --git a/backends/platform/android/android.mk b/backends/platform/android/android.mk +index e24d797..ec63b91 100644 +--- a/backends/platform/android/android.mk ++++ b/backends/platform/android/android.mk +@@ -40,10 +40,10 @@ PLUGIN_RESOURCES = \ + #LDFLAGS += -Wl,--gc-sections + #CXXFLAGS += -ffunction-sections -fdata-sections -fvisibility=hidden -fvisibility-inlines-hidden + +-AAPT = $(ANDROID_SDK)/platform-tools/aapt ++AAPT = $(ANDROID_SDK)/build-tools/*/aapt + ADB = $(ANDROID_SDK)/platform-tools/adb +-DX = $(ANDROID_SDK)/platform-tools/dx +-APKBUILDER = $(ANDROID_SDK)/tools/apkbuilder ++DX = $(ANDROID_SDK)/build-tools/*/dx ++APKBUILDER = java -cp $(ANDROID_SDK)/tools/lib/sdklib.jar com.android.sdklib.build.ApkBuilderMain + JAVAC ?= javac + JAVACFLAGS = -source 1.5 -target 1.5 + +@@ -154,13 +154,13 @@ $(APK_MAIN): $(EXECUTABLE) $(FILE_RESOURCES_MAIN) $(FILE_DEX) + $(INSTALL) -d $(PATH_STAGE_MAIN)/common/mylib/armeabi + $(INSTALL) -c -m 644 libscummvm.so $(PATH_STAGE_MAIN)/common/mylib/armeabi/ + $(STRIP) $(PATH_STAGE_MAIN)/common/mylib/armeabi/libscummvm.so +- $(APKBUILDER) $@ -z $(FILE_RESOURCES_MAIN) -f $(FILE_DEX) -rf $(PATH_STAGE_MAIN)/common || { $(RM) $@; exit 1; } ++ $(APKBUILDER) $@ -u -z $(FILE_RESOURCES_MAIN) -f $(FILE_DEX) -rf $(PATH_STAGE_MAIN)/common || { $(RM) $@; exit 1; } + + scummvm-engine-%.apk: plugins/lib%.so $(PATH_BUILD)/%/$(FILE_RESOURCES) $(FILE_DEX_PLUGIN) + $(INSTALL) -d $(PATH_STAGE_PREFIX).$*/apk/mylib/armeabi/ + $(INSTALL) -c -m 644 plugins/lib$*.so $(PATH_STAGE_PREFIX).$*/apk/mylib/armeabi/ + $(STRIP) $(PATH_STAGE_PREFIX).$*/apk/mylib/armeabi/lib$*.so +- $(APKBUILDER) $@ -z $(PATH_BUILD)/$*/$(FILE_RESOURCES) -f $(FILE_DEX_PLUGIN) -rf $(PATH_STAGE_PREFIX).$*/apk || { $(RM) $@; exit 1; } ++ $(APKBUILDER) $@ -u -z $(PATH_BUILD)/$*/$(FILE_RESOURCES) -f $(FILE_DEX_PLUGIN) -rf $(PATH_STAGE_PREFIX).$*/apk || { $(RM) $@; exit 1; } + + all: $(APK_MAIN) $(APK_PLUGINS) +