2023-03-30 16:54:59 +03:00
|
|
|
|
distributable:
|
|
|
|
|
url: https://ftp.gnu.org/gnu/emacs/emacs-{{ version.raw }}.tar.xz
|
|
|
|
|
strip-components: 1
|
|
|
|
|
|
|
|
|
|
versions:
|
|
|
|
|
github: emacs-mirror/emacs/tags
|
|
|
|
|
strip: /^emacs-/
|
2023-10-25 07:25:14 +03:00
|
|
|
|
ignore: [x.y.90]
|
2023-03-30 16:54:59 +03:00
|
|
|
|
|
|
|
|
|
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
|
2023-10-25 03:19:00 +03:00
|
|
|
|
EMACSPATH: ${{prefix}}/libexec/emacs/{{version.marketing}}
|
2023-03-30 16:54:59 +03:00
|
|
|
|
|
|
|
|
|
build:
|
|
|
|
|
dependencies:
|
|
|
|
|
freedesktop.org/pkg-config: ^0.29.2
|
2023-10-25 03:19:00 +03:00
|
|
|
|
script:
|
|
|
|
|
- ./configure $ARGS
|
|
|
|
|
- make --jobs {{ hw.concurrency }} install
|
2023-03-30 16:54:59 +03:00
|
|
|
|
|
|
|
|
|
# we specify this with the env-var
|
2023-10-25 03:19:00 +03:00
|
|
|
|
- cd {{prefix}}/share/emacs
|
|
|
|
|
- mv {{version.marketing}}/lisp .
|
|
|
|
|
- mv site-lisp/* lisp
|
|
|
|
|
- rmdir site-lisp
|
2023-03-30 16:54:59 +03:00
|
|
|
|
|
|
|
|
|
# doing it step by step to prove we didn’t leave anything here
|
2023-10-25 03:19:00 +03:00
|
|
|
|
- rm {{version.marketing}}/site-lisp/subdirs.el
|
|
|
|
|
- rmdir {{version.marketing}}/site-lisp
|
2023-03-30 16:54:59 +03:00
|
|
|
|
|
2023-10-25 03:19:00 +03:00
|
|
|
|
- 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}}
|
2023-03-30 16:54:59 +03:00
|
|
|
|
|
|
|
|
|
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:
|
2023-10-25 03:19:00 +03:00
|
|
|
|
script:
|
|
|
|
|
- emacs --version | grep "GNU Emacs {{version.marketing}}"
|
|
|
|
|
|
|
|
|
|
- four=$(emacs --batch --eval="(print (+ 2 2))")
|
|
|
|
|
- test $four = 4
|
2023-03-30 16:54:59 +03:00
|
|
|
|
|
2023-10-25 03:19:00 +03:00
|
|
|
|
- emacs -batch -l $FIXTURE
|
2023-03-30 16:54:59 +03:00
|
|
|
|
|
2023-10-25 03:19:00 +03:00
|
|
|
|
# test EMACSPATH
|
|
|
|
|
- emacs --batch --eval '(progn (package-initialize) (print (with-output-to-string (package-list-packages))) (kill-emacs))'
|
2023-03-30 16:54:59 +03:00
|
|
|
|
fixture: |
|
|
|
|
|
(require 'simple)
|
|
|
|
|
(defun my-print-message ()
|
|
|
|
|
"Print a message to the *Messages* buffer"
|
|
|
|
|
(message "This is a message from my script"))
|
2023-10-25 07:25:14 +03:00
|
|
|
|
(my-print-message)
|