top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
+srcdir = @srcdir@
version = @version@
# This is the host lib-src and lib, not the cross compiler's lib-src.
SIGN_EMACS_V2 = sign --v2-signing-enabled --ks emacs.keystore \
--debuggable-apk-permitted --ks-pass pass:emacs1
-JAVA_FILES = $(shell find . -type f -name *.java)
+JAVA_FILES = $(wildcard $(srcdir)/org/gnu/emacs/*.java)
+RESOURCE_FILES = $(wildcard $(srcdir)/res/drawable/*)
CLASS_FILES = $(foreach file,$(JAVA_FILES),$(basename $(file)).class)
# Compute the name for the Emacs application package. This should be:
$(MAKE) -C $(libsrc) $(notdir $@)
emacs.apk-in: $(CROSS_BINS) $(CROSS_LIBS) $(libsrc)/asset-directory-tool \
- AndroidManifest.xml $(NDK_BUILD_SHARED)
+ AndroidManifest.xml $(NDK_BUILD_SHARED) $(RESOURCE_FILES)
# Make the working directory for this stuff
rm -rf install_temp
mkdir -p install_temp/lib/$(ANDROID_ABI)
endif
# Package everything. Specifying the assets on this command line is
# necessary for AAssetManager_getNextFileName to work on old versions
-# of Android.
- $(AAPT) package -I "$(ANDROID_JAR)" -F $@ -f \
- -M AndroidManifest.xml -A install_temp/assets
+# of Android. Make sure not to generate R.java, as it's not required
+# by Emacs.
+ $(AAPT) package -I "$(ANDROID_JAR)" -F $@ -f \
+ -M AndroidManifest.xml -A install_temp/assets \
+ -S res -J install_temp
pushd install_temp; $(AAPT) add ../$@ `find lib -type f`; popd
rm -rf install_temp
Android-like systems, along with files needed to create an application
package out of them.
+The ``org/gnu/emacs'' subdirectory contains the Java sources under the
+``org.gnu.emacs'' package identifier.
+
+The ``res'' directory contains resources, mainly the Emacs icon.
+
`emacs.keystore' is the signing key used to build Emacs. It is kept
here, and we encourage all people redistributing Emacs to use this
key. It holds no security value, and otherwise it will be impossible