fix LatinIME: latest version, multiple apks etc.
This commit is contained in:
parent
2a5d87f209
commit
c9718fd9b1
|
@ -9,40 +9,63 @@ The current version comes with English, Spanish, Russian, Brazilian, Italian,
|
||||||
German, French, dictionaries; there are twenty more language word lists
|
German, French, dictionaries; there are twenty more language word lists
|
||||||
in the repository but they'd need to be compiled.
|
in the repository but they'd need to be compiled.
|
||||||
|
|
||||||
Remember, you can use these very dictionary files for [[org.pocketworkstation.pckeyboard]],
|
|
||||||
either built into the main apk or as addon packs.
|
|
||||||
|
|
||||||
The version name corresponds to the Android version.
|
The version name corresponds to the Android version.
|
||||||
.
|
.
|
||||||
|
|
||||||
Repo Type:git
|
Repo Type:git
|
||||||
Repo:https://android.googlesource.com/platform/packages/inputmethods/LatinIME
|
Repo:https://android.googlesource.com/platform/packages/inputmethods/LatinIME
|
||||||
|
|
||||||
Build:4.2.1,1
|
Build:4.4.2-mips,4421
|
||||||
disable=Results in an apk with '${package.name}' as the package ID
|
commit=android-sdk-4.4.2_r1
|
||||||
commit=android-4.2.1_r1
|
|
||||||
subdir=java
|
subdir=java
|
||||||
target=android-17
|
target=android-19
|
||||||
|
srclibs=Inputmethodcommon@android-4.4.2_r1
|
||||||
extlibs=android/android-support-v4r13.jar
|
extlibs=android/android-support-v4r13.jar
|
||||||
srclibs=Inputmethodcommon@android-4.2.1_r1
|
patch=custom_rules.xml_1.patch
|
||||||
patch=build.xml_1.patch
|
prebuild=echo -e 'package.name=com.android.inputmethod.latin\nversion.name=4.4.2-mips\nversion.code=4421' >> ant.properties && \
|
||||||
prebuild=sed -i '19 i android:versionName="4.2.1" android:versionCode="1"' AndroidManifest.xml && \
|
|
||||||
cp -r $$Inputmethodcommon$$/java/com/android/inputmethodcommon src/com/android/
|
cp -r $$Inputmethodcommon$$/java/com/android/inputmethodcommon src/com/android/
|
||||||
build=$$NDK$$/ndk-build -e "APP_ABI=all" -C ../native && mv ../native/libs/armeabi libs/
|
build=$$NDK$$/ndk-build -e "APP_ABI=mips" -e "APP_CFLAGS += -w" -C ../native && mv ../native/libs/* libs/
|
||||||
|
|
||||||
|
Build:4.4.2-x86,4422
|
||||||
|
commit=android-sdk-4.4.2_r1
|
||||||
|
subdir=java
|
||||||
|
target=android-19
|
||||||
|
srclibs=Inputmethodcommon@android-4.4.2_r1
|
||||||
|
extlibs=android/android-support-v4r13.jar
|
||||||
|
patch=custom_rules.xml_1.patch
|
||||||
|
prebuild=echo -e 'package.name=com.android.inputmethod.latin\nversion.name=4.4.2-x86\nversion.code=4422' >> ant.properties && \
|
||||||
|
cp -r $$Inputmethodcommon$$/java/com/android/inputmethodcommon src/com/android/
|
||||||
|
build=$$NDK$$/ndk-build -e "APP_ABI=x86" -e "APP_CFLAGS += -w" -C ../native && mv ../native/libs/* libs/
|
||||||
|
|
||||||
|
Build:4.4.2-arm,4423
|
||||||
|
commit=android-sdk-4.4.2_r1
|
||||||
|
subdir=java
|
||||||
|
target=android-19
|
||||||
|
srclibs=Inputmethodcommon@android-4.4.2_r1
|
||||||
|
extlibs=android/android-support-v4r13.jar
|
||||||
|
patch=custom_rules.xml_1.patch
|
||||||
|
prebuild=echo -e 'package.name=com.android.inputmethod.latin\nversion.name=4.4.2-arm\nversion.code=4423' >> ant.properties && \
|
||||||
|
cp -r $$Inputmethodcommon$$/java/com/android/inputmethodcommon src/com/android/
|
||||||
|
build=$$NDK$$/ndk-build -e "APP_ABI=armeabi" -e "APP_CFLAGS += -w" -C ../native && mv ../native/libs/* libs/
|
||||||
|
|
||||||
|
Build:4.4.2-arm7,4424
|
||||||
|
commit=android-sdk-4.4.2_r1
|
||||||
|
subdir=java
|
||||||
|
target=android-19
|
||||||
|
srclibs=Inputmethodcommon@android-4.4.2_r1
|
||||||
|
extlibs=android/android-support-v4r13.jar
|
||||||
|
patch=custom_rules.xml_1.patch
|
||||||
|
prebuild=echo -e 'package.name=com.android.inputmethod.latin\nversion.name=4.4.2-arm7\nversion.code=4424' >> ant.properties && \
|
||||||
|
cp -r $$Inputmethodcommon$$/java/com/android/inputmethodcommon src/com/android/
|
||||||
|
build=$$NDK$$/ndk-build -e "APP_ABI=armeabi-v7a" -e "APP_CFLAGS += -w" -C ../native && mv ../native/libs/* libs/
|
||||||
|
|
||||||
Maintainer Notes:
|
Maintainer Notes:
|
||||||
This version uses the prebuilt dictionaries in the repo;
|
Note that, like other AOSP apps, there are now special tags with 'sdk' in them;
|
||||||
you could have a lot of fun building your own.
|
not sure what the difference is.
|
||||||
|
|
||||||
Use the ant.properties to change the package name if you wish: it works fine.
|
|
||||||
|
|
||||||
4.3 or 4.4 don't build with NDK 9:
|
|
||||||
jni/src/suggest/core/layout/proximity_info_utils.h:41:88: instantiated from here
|
|
||||||
/home/gerry/android-ndk-r9c/sources/cxx-stl/stlport/stlport/stl/_function_base.h:141:8: error: base class 'struct std::unary_function<std::pair<int const, int>, int const>' has a non-virtual destructor [-Werror=effc++]
|
|
||||||
.
|
.
|
||||||
|
|
||||||
Auto Update Mode:None
|
Auto Update Mode:None
|
||||||
Update Check Mode:None
|
Update Check Mode:None
|
||||||
Current Version:4.2.1
|
Current Version:4.4.2
|
||||||
Current Version Code:1
|
Current Version Code:4420
|
||||||
|
|
||||||
|
|
126
metadata/com.android.inputmethod.latin/custom_rules.xml_1.patch
Normal file
126
metadata/com.android.inputmethod.latin/custom_rules.xml_1.patch
Normal file
|
@ -0,0 +1,126 @@
|
||||||
|
diff --git a/java/custom_rules.xml b/java/custom_rules.xml
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..25fc1eb
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/java/custom_rules.xml
|
||||||
|
@@ -0,0 +1,120 @@
|
||||||
|
+<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
+<project name="LatinIME" default="help">
|
||||||
|
+
|
||||||
|
+ <!-- The local.properties file is created and updated by the 'android' tool.
|
||||||
|
+ It contains the path to the SDK. It should *NOT* be checked into
|
||||||
|
+ Version Control Systems. -->
|
||||||
|
+ <loadproperties srcFile="local.properties" />
|
||||||
|
+
|
||||||
|
+ <!-- The ant.properties file can be created by you. It is only edited by the
|
||||||
|
+ 'android' tool to add properties to it.
|
||||||
|
+ This is the place to change some Ant specific build properties.
|
||||||
|
+ Here are some properties you may want to change/update:
|
||||||
|
+
|
||||||
|
+ source.dir
|
||||||
|
+ The name of the source directory. Default is 'src'.
|
||||||
|
+ out.dir
|
||||||
|
+ The name of the output directory. Default is 'bin'.
|
||||||
|
+
|
||||||
|
+ For other overridable properties, look at the beginning of the rules
|
||||||
|
+ files in the SDK, at tools/ant/build.xml
|
||||||
|
+
|
||||||
|
+ Properties related to the SDK location or the project target should
|
||||||
|
+ be updated using the 'android' tool with the 'update' action.
|
||||||
|
+
|
||||||
|
+ This file is an integral part of the build system for your
|
||||||
|
+ application and should be checked into Version Control Systems.
|
||||||
|
+
|
||||||
|
+ -->
|
||||||
|
+ <property file="ant.properties" />
|
||||||
|
+
|
||||||
|
+ <!-- The project.properties file is created and updated by the 'android'
|
||||||
|
+ tool, as well as ADT.
|
||||||
|
+
|
||||||
|
+ This contains project specific properties such as project target, and library
|
||||||
|
+ dependencies. Lower level build properties are stored in ant.properties
|
||||||
|
+ (or in .classpath for Eclipse projects).
|
||||||
|
+
|
||||||
|
+ This file is an integral part of the build system for your
|
||||||
|
+ application and should be checked into Version Control Systems. -->
|
||||||
|
+ <loadproperties srcFile="project.properties" />
|
||||||
|
+
|
||||||
|
+ <!-- quick check on sdk.dir -->
|
||||||
|
+ <fail
|
||||||
|
+ message="sdk.dir is missing. Make sure to generate local.properties using 'android update project'"
|
||||||
|
+ unless="sdk.dir"
|
||||||
|
+ />
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+<!-- extension targets. Uncomment the ones where you want to do custom work
|
||||||
|
+ in between standard targets -->
|
||||||
|
+<!--
|
||||||
|
+ <target name="-pre-build">
|
||||||
|
+ </target>
|
||||||
|
+ <target name="-pre-compile">
|
||||||
|
+ </target>
|
||||||
|
+
|
||||||
|
+ /* This is typically used for code obfuscation.
|
||||||
|
+ Compiled code location: ${out.classes.absolute.dir}
|
||||||
|
+ If this is not done in place, override ${out.dex.input.absolute.dir} */
|
||||||
|
+ <target name="-post-compile">
|
||||||
|
+ </target>
|
||||||
|
+-->
|
||||||
|
+
|
||||||
|
+ <!-- Puts the project's resources into the output package file
|
||||||
|
+ This actually can create multiple resource package in case
|
||||||
|
+ Some custom apk with specific configuration have been
|
||||||
|
+ declared in default.properties.
|
||||||
|
+ -->
|
||||||
|
+ <target name="-package-resources" depends="-crunch">
|
||||||
|
+ <!-- only package resources if *not* a library project -->
|
||||||
|
+ <do-only-if-not-library elseText="Library project: do not package resources..." >
|
||||||
|
+ <aapt executable="${aapt}"
|
||||||
|
+ command="package"
|
||||||
|
+ versioncode="${version.code}"
|
||||||
|
+ versionname="${version.name}"
|
||||||
|
+ debug="${build.is.packaging.debug}"
|
||||||
|
+ manifest="${out.manifest.abs.file}"
|
||||||
|
+ assets="${asset.absolute.dir}"
|
||||||
|
+ androidjar="${project.target.android.jar}"
|
||||||
|
+ apkfolder="${out.absolute.dir}"
|
||||||
|
+ nocrunch="${build.packaging.nocrunch}"
|
||||||
|
+ resourcefilename="${resource.package.file.name}"
|
||||||
|
+ resourcefilter="${aapt.resource.filter}"
|
||||||
|
+ libraryResFolderPathRefid="project.library.res.folder.path"
|
||||||
|
+ libraryPackagesRefid="project.library.packages"
|
||||||
|
+ previousBuildType="${build.last.target}"
|
||||||
|
+ buildType="${build.target}"
|
||||||
|
+ libraryRFileRefid="project.library.bin.r.file.path"
|
||||||
|
+ manifestpackage="${package.name}"
|
||||||
|
+ ignoreAssets="${aapt.ignore.assets}">
|
||||||
|
+ <res path="${out.res.absolute.dir}" />
|
||||||
|
+ <res path="${resource.absolute.dir}" />
|
||||||
|
+ <!-- <nocompress /> forces no compression on any files in assets or res/raw -->
|
||||||
|
+ <nocompress extension="dict" />
|
||||||
|
+ </aapt>
|
||||||
|
+ </do-only-if-not-library>
|
||||||
|
+ </target>
|
||||||
|
+
|
||||||
|
+ <!-- Import the actual build file.
|
||||||
|
+
|
||||||
|
+ To customize existing targets, there are two options:
|
||||||
|
+ - Customize only one target:
|
||||||
|
+ - copy/paste the target into this file, *before* the
|
||||||
|
+ <import> task.
|
||||||
|
+ - customize it to your needs.
|
||||||
|
+ - Customize the whole content of build.xml
|
||||||
|
+ - copy/paste the content of the rules files (minus the top node)
|
||||||
|
+ into this file, replacing the <import> task.
|
||||||
|
+ - customize to your needs.
|
||||||
|
+
|
||||||
|
+ ***********************
|
||||||
|
+ ****** IMPORTANT ******
|
||||||
|
+ ***********************
|
||||||
|
+ In all cases you must update the value of version-tag below to read 'custom' instead of an integer,
|
||||||
|
+ in order to avoid having your file be overridden by tools such as "android update project"
|
||||||
|
+ -->
|
||||||
|
+ <!-- version-tag: 1 -->
|
||||||
|
+ <import file="${sdk.dir}/tools/ant/build.xml" />
|
||||||
|
+
|
||||||
|
+</project>
|
Loading…
Reference in a new issue