¿Cómo puedo compilar / empaquetar Emacs para que los archivos fuente C se instalen en un directorio estándar find-function-C-source-directory?


7

Quiero poder ver el código fuente C de las funciones de Emacs. Por ejemplo, quiero poder hacer M-: (find-function 'message).

Emacs me solicita el directorio de las fuentes C, para que pueda configurar find-function-C-source-directory. Sin embargo, mi distribución (Arch Linux) acaba de make; make installseguir los pasos habituales (consulte la receta del paquete aquí ), por lo que no hay fuentes de C disponibles sin descargarlas manualmente.

Entonces, quiero arreglar el empaque. Mis preguntas son:

  1. ¿Existen opciones de configuración del archivo MAKE de Emacs que también significan make installcopiar las fuentes C? No puedo ver nada obvio.
  2. ¿Cuál es la forma correcta de configurar find-function-C-source-directoryen el paquete? ¿Crear un site-lisp?
  3. ¿Hay alguna distribución o plataforma que ya haga esto?

1
find-function-C-source-directoryusa source-directoryinternamente, por lo tanto, las cosas deberían funcionar para que un Emacs se ejecute en su directorio de compilación ...
wasamasa

1
Una breve búsqueda del tipo de RPM "src" con Emacs muestra: rpmfind.net/linux/rpm2html/… de hecho existen tales criaturas. Intentaría investigar esto, sin embargo, no estoy seguro de que configuren la búsqueda de origen (aunque podría ser bueno).
wvxvw

Supongo que Arch Linux eliminará todos los archivos utilizados durante la compilación, después de completar la instalación. Si es así, supongo que necesitará agregar un paso de compilación para mover los archivos relevantes a otra parte. El uso de un archivo site-lisp .el para establecer el directorio es correcto.
phils

pensó que emacs estaba escrito en lisp, no en C
user3629249

1
Consulte " Cómo incluir / copiar sobre el srcdirectorio al construir Emacs ": stackoverflow.com/questions/21241967/…
abogados

Respuestas:


1

Si lo que está preguntando es "cómo incluir el código fuente en mi paquete Arch", no parece pertenecer aquí, pero tal vez https://unix.stackexchange.com/ .

¿Existen opciones de configuración del archivo MAKE de Emacs que significan que la instalación también copia las fuentes C?

No.

¿Cuál es la forma correcta de establecer find-function-C-source-directory en el paquete? ¿Crear un sitio lisp?

Si sabe, en el momento de la compilación, dónde se instalará su paquete de código fuente, puede parchear el código fuente. Pero anularía en el sitio-lisp.

¿Hay alguna distribución o plataforma que ya haga esto?

No que yo sepa.

Como usted, como usuario, siempre puede descargar el código fuente de Emacs, descomprimirlo en el directorio de inicio y configurarlo en find-function-C-source-directoryconsecuencia para que funcione bien.

Una gran cosa find-functiones que no tiene que saber el número de línea exacto. En cambio, buscará la función en el archivo fuente. Por lo tanto, los cambios menores o las diferencias de versión no afectan la habilidad en absoluto.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.