Each application is also prohibited from accessing many system
directories and the app data directories of other applications.
- Emacs comes with several binaries. While being executable files,
-they are packaged as libraries in the library directory, because
-otherwise the system will not unpack them while Emacs is being
-installed. This means, instead of specifying @code{ctags} or
-@code{emacsclient} in a subprocess, Lisp code must specify
-@code{libctags.so} or @code{libemacsclient.so} on the command line
-instead when starting either of those programs in a subprocess; to
-determine which names to use, consult the values of the variables
-@code{ctags-program-name}, @code{etags-program-name},
-@code{hexl-program-name}, @code{emacsclient-program-name},
-@code{movemail-program-name}, and @code{ebrowse-program-name}.
+ The Emacs distribution also incorporates several binaries. While
+being executable files, they are packaged as libraries in the library
+directory, because otherwise the system will not unpack them while
+Emacs is being installed. This means that instead of @code{ctags} or
+@code{emacsclient}, Lisp code must specify @code{libctags.so} or
+@code{libemacsclient.so} on the command line when starting either of
+those programs in a subprocess; to determine which names to use,
+consult the values of the variables @code{ctags-program-name},
+@code{etags-program-name}, @code{hexl-program-name},
+@code{emacsclient-program-name}, @code{movemail-program-name},
+@code{ebrowse-program-name}, and @code{rcs2log-program-name}.
@xref{Subprocess Creation,,, elisp, the Emacs Lisp Reference Manual}.
The @file{/assets} directory containing Emacs start-up files is
@vindex hexl-program-name
@vindex emacsclient-program-name
@vindex movemail-program-name
-@vindex ebrowse-program-manem
- When starting a program that is part of the Emacs distribution,
-you must take into account that the program may have been renamed in
-order to comply with executable naming restrictions present on the
-system.
+@vindex ebrowse-program-name
+@vindex rcs2log-program-name
+ When starting a program that is part of the Emacs distribution, you
+must take into account that the program may have been renamed in order
+to comply with executable naming restrictions present on the system.
Instead of starting @command{ctags}, for example, you should specify
the value of @code{ctags-program-name} instead. Likewise, instead of
starting @command{movemail}, you must start
@code{movemail-program-name}, and the same goes for @command{etags},
-@command{hexl}, @command{emacsclient}, and @command{ebrowse}.
+@command{hexl}, @command{emacsclient}, @code{rcs2log}, and
+@command{ebrowse}.
@node Shell Arguments
@section Shell Arguments
** New variables describing the names of built in programs.
The new variables 'ctags-program-name', 'ebrowse-program-name',
'etags-program-name', 'hexl-program-name', 'emacsclient-program-name'
-and 'movemail-program-name' should be used instead of "ctags",
-"ebrowse", "etags", "hexl", and "emacsclient", when starting one of
-these built in programs in a subprocess.
+'movemail-program-name', and 'rcs2log-program-name' should be used
+instead of "ctags", "ebrowse", "etags", "hexl", "emacsclient", and
+"rcs2log", when starting one of these built in programs in a
+subprocess.
+++
** 'x-popup-menu' now understands touch screen events.
cp -f $$file install_temp/lib/$(ANDROID_ABI); \
fi \
done
+# Next, produce a version of rcs2log befitting Android's naming
+# conventions and shell interpreter location.
+ $(AM_V_at) \
+ sed 's|/bin/sh|/system/bin/sh|' \
+ $(top_srcdir)/lib-src/rcs2log > \
+ install_temp/lib/$(ANDROID_ABI)/librcs2log.so
+ $(AM_V_at) chmod +x install_temp/lib/$(ANDROID_ABI)/librcs2log.so
ifneq ($(NDK_BUILD_SHARED),)
$(AM_V_SILENT) cp -f $(NDK_BUILD_SHARED) \
install_temp/lib/$(ANDROID_ABI)
(defvar vc-rcs-rcs2log-program
(let (exe)
(cond ((file-executable-p
- (setq exe (expand-file-name "rcs2log" exec-directory)))
+ (setq exe (expand-file-name rcs2log-program-name
+ exec-directory)))
exe)
;; In the unlikely event that someone is running an
;; uninstalled Emacs and wants to do something RCS-related.
((file-executable-p
(setq exe (expand-file-name "lib-src/rcs2log" source-directory)))
exe)
- (t "rcs2log")))
+ (t rcs2log-program-name)))
"Path to the `rcs2log' program (normally in `exec-directory').")
(autoload 'vc-buffer-sync "vc-dispatcher")
Vebrowse_program_name = build_pure_c_string ("libebrowse.so");
#endif
+ DEFVAR_LISP ("rcs2log-program-name", Vrcs2log_program_name,
+ doc: /* Name of the `rcs2log' program distributed with Emacs.
+Use this instead of calling `rcs2log' directly, as `rcs2log'
+may have been renamed to comply with executable naming restrictions on
+the system. */);
+#if !defined HAVE_ANDROID || defined ANDROID_STUBIFY
+ Vrcs2log_program_name = build_pure_c_string ("rcs2log");
+#else /* HAVE_ANDROID && !ANDROID_STUBIFY */
+ Vrcs2log_program_name = build_pure_c_string ("librcs2log.so");
+#endif /* !HAVE_ANDROID || ANDROID_STUBIFY */
+
defsubr (&Scall_process);
defsubr (&Sgetenv_internal);
defsubr (&Scall_process_region);