]> git.eshelyaron.com Git - emacs.git/commitdiff
Move java/incrementing-version-code to AndroidManifest.xml.in
authorPo Lu <luangruo@yahoo.com>
Wed, 5 Mar 2025 06:59:19 +0000 (14:59 +0800)
committerEshel Yaron <me@eshelyaron.com>
Sun, 9 Mar 2025 07:05:03 +0000 (08:05 +0100)
* admin/admin.el (admin-android-version-code-regexp): New
variable.
(set-version): Modify AndroidManifest.xml.in instead.

* java/AndroidManifest.xml.in (Version-code): Define version
code.

* java/incrementing-version-code: Delete file.

(cherry picked from commit 121371a706491fde8c06d95b13c16703d53f6fa3)

admin/admin.el
java/AndroidManifest.xml.in
java/incrementing-version-code

index f879a88aa6dcc2b6c7ecc8288ea0bd133a86752d..dd9112078aad9705898d32e5741b75bed2a568f1 100644 (file)
@@ -98,6 +98,10 @@ Optional argument DATE is the release date, default today."
 (defvar admin-git-command (executable-find "git")
   "The `git' program to use.")
 
+(defvar admin-android-version-code-regexp
+  "\\bAuto-incrementing version code\\(?:.\\|\n\\)*\\([[:digit:]]\\{9\\}\\)$"
+  "Regexp with which to detect the version code in AndroidManifest.xml.")
+
 (defun set-version (root version)
   "Set Emacs version to VERSION in relevant files under ROOT.
 Root must be the root of an Emacs source tree."
@@ -122,13 +126,11 @@ Root must be the root of an Emacs source tree."
                       (rx (and "AC_INIT" (1+ (not (in ?,)))
                                 ?, (0+ space) ?\[
                                 (submatch (1+ (in "0-9."))))))
-  (set-version-in-file root "java/incrementing-version-code"
+  (set-version-in-file root "java/AndroidManifest.xml.in"
                        (apply #'format "%02d%02d%02d000"
                               (mapcar #'string-to-number
                                       (split-string version "\\.")))
-                       (rx (and line-start
-                                (submatch (1+ (in digit)))
-                                line-end)))
+                       admin-android-version-code-regexp)
   (set-version-in-file root "nt/README.W32" version
                       (rx (and "version" (1+ space)
                                (submatch (1+ (in "0-9."))))))
index c066d91011ad43b760692f295caf8e5441038abc..66b26e65088a86f08158d10dedd7ca0be4429171 100644 (file)
@@ -338,3 +338,18 @@ along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>. -->
             android:label="GNU Emacs service"/>
   </application>
 </manifest>
+
+<!-- Auto-incrementing version code.
+
+This comment contains an Android version code
+(https://developer.android.com/studio/publish/versioning#versioningsettings)
+corresponding to the current Emacs version.  The version code in
+AndroidManifest.xml.in is hard-coded to a fixed value to facilitate
+package downgrades.  Some automated systems employed by Android package
+repositories require an incrementing numeric version code to detect
+upgrades, which is provided here and is altered by admin/admin.el.
+Refer to e.g. https://forum.f-droid.org/t/emacs-packaging/30424/25.
+
+Version-code: 300050000
+
+-->
index fed5b62727546afac49174aa3b44ff5d04097a4a..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 (file)
@@ -1,12 +0,0 @@
-; This file contains an Android version code
-; (https://developer.android.com/studio/publish/versioning#versioningsettings)
-; corresponding to the current Emacs version.
-;
-; The version code in AndroidManifest.xml.in is hard-coded to a fixed
-; value, to make package downgrades possible.  Where an incrementing
-; version code is required (for example, for automated F-Droid package
-; builds (https://f-droid.org/packages/org.gnu.emacs/)), the version
-; code in this file should be referred to and patched in to
-; AndroidManifest.xml.
-
-300093000