pantry/projects/gnu.org/emacs/package.yml
Jacob Heider 1ed5310b2a
fix(emacs)[1]
closes #3820
2023-10-25 00:25:14 -04:00

89 lines
2.2 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

distributable:
url: https://ftp.gnu.org/gnu/emacs/emacs-{{ version.raw }}.tar.xz
strip-components: 1
versions:
github: emacs-mirror/emacs/tags
strip: /^emacs-/
ignore: [x.y.90]
dependencies:
gnome.org/libxml2: ^2.10.3
invisible-island.net/ncurses: ^6.3.0
libjpeg-turbo.org: ^2.1.5.1
gnu.org/sed: ^4.9.0
gnu.org/texinfo: ^7.0.1
gnu.org/libidn2: ^2.3
gnutls.org: ^3.6
zlib.net: ^1.2
runtime:
env:
EMACS_ROOT: ${{prefix}}
EMACSLOADPATH: ${{prefix}}/share/emacs/lisp
EMACSDATA: ${{prefix}}/share/emacs/etc
EMACSPATH: ${{prefix}}/libexec/emacs/{{version.marketing}}
build:
dependencies:
freedesktop.org/pkg-config: ^0.29.2
script:
- ./configure $ARGS
- make --jobs {{ hw.concurrency }} install
# we specify this with the env-var
- cd {{prefix}}/share/emacs
- mv {{version.marketing}}/lisp .
- mv site-lisp/* lisp
- rmdir site-lisp
# doing it step by step to prove we didnt leave anything here
- rm {{version.marketing}}/site-lisp/subdirs.el
- rmdir {{version.marketing}}/site-lisp
- mv {{version.marketing}}/etc .
- rmdir {{version.marketing}}
# we need a stable EMACSPATH to advertise
- run: |
DIR=$(ls)
mv $DIR/* .
rmdir $DIR
ln -s . $DIR
working-directory: ${{prefix}}/libexec/emacs/{{version.marketing}}
env:
ARGS:
- --prefix="{{prefix}}"
- --enable-check-lisp-object-type
- --disable-silent-rules
- --with-gnutls
- --without-x
- --with-xml2
- --without-dbus
- --with-modules
- --without-ns
- --without-imagemagick
- --without-selinux
- --with-x-toolkit=no
provides:
- bin/emacs
test:
script:
- emacs --version | grep "GNU Emacs {{version.marketing}}"
- four=$(emacs --batch --eval="(print (+ 2 2))")
- test $four = 4
- emacs -batch -l $FIXTURE
# test EMACSPATH
- emacs --batch --eval '(progn (package-initialize) (print (with-output-to-string (package-list-packages))) (kill-emacs))'
fixture: |
(require 'simple)
(defun my-print-message ()
"Print a message to the *Messages* buffer"
(message "This is a message from my script"))
(my-print-message)