diff options
Diffstat (limited to 'pcr')
-rw-r--r-- | pcr/emacs-lucid/PKGBUILD | 54 | ||||
-rw-r--r-- | pcr/emacs-lucid/emacs-24.3-giflib5.patch | 26 | ||||
-rw-r--r-- | pcr/emacs-lucid/emacs.install | 32 |
3 files changed, 112 insertions, 0 deletions
diff --git a/pcr/emacs-lucid/PKGBUILD b/pcr/emacs-lucid/PKGBUILD new file mode 100644 index 000000000..f88607e0a --- /dev/null +++ b/pcr/emacs-lucid/PKGBUILD @@ -0,0 +1,54 @@ +# $Id: PKGBUILD 192474 2013-08-12 20:25:41Z eric $ +# Maintainer: Luke Shumaker <lukeshu@sbcglobal.net> +# Maintainer (Arch): Juergen Hoetzel <juergen@archlinux.org> +# Contributor: Renchi Raju <renchi@green.tam.uiuc.edu> + +_pkgname=emacs +pkgname=emacs-lucid +pkgver=24.3 +pkgrel=4 +pkgdesc="The extensible, customizable, self-documenting real-time display editor" +arch=('i686' 'x86_64') +url="http://www.gnu.org/software/emacs/emacs.html" +license=('GPL3') +depends=('librsvg' 'gpm' 'giflib' 'libxpm' 'libotf' 'm17n-lib' 'hicolor-icon-theme' 'gconf' 'desktop-file-utils' 'alsa-lib' 'imagemagick') +install=emacs.install +source=(ftp://ftp.gnu.org/gnu/emacs/$_pkgname-$pkgver.tar.xz{,.sig} + emacs-24.3-giflib5.patch) +md5sums=('ea9ed000ca165280265aabb55b9afbd7' + 'SKIP' + '560cdf463299e059c5fadf474bcba218') + +pkgdesc+=", with the Lucid X11 toolkit" +provides=("$_pkgname=$pkgver") +conflicts=("$_pkgname") + +prepare() { + cd $_pkgname-$pkgver + patch -Np0 -i ../emacs-24.3-giflib5.patch +} + +build() { + cd "$srcdir"/$_pkgname-$pkgver + ac_cv_lib_gif_EGifPutExtensionLast=yes ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib \ + --localstatedir=/var --with-x-toolkit=lucid --with-xft + make +} + +package() { + cd "$srcdir"/$_pkgname-$pkgver + make DESTDIR="$pkgdir" install + + # remove conflict with ctags package + mv "$pkgdir"/usr/bin/{ctags,ctags.emacs} + mv "$pkgdir"/usr/share/man/man1/{ctags.1.gz,ctags.emacs.1} + # remove conflict with texinfo + rm "$pkgdir"/usr/share/info/info.info.gz + # fix user/root permissions on usr/share files + find "$pkgdir"/usr/share/emacs/$pkgver -exec chown root:root {} \; + # fix perms on /var/games + chmod 775 "$pkgdir"/var/games + chmod 775 "$pkgdir"/var/games/emacs + chmod 664 "$pkgdir"/var/games/emacs/* + chown -R root:games "$pkgdir"/var/games +} diff --git a/pcr/emacs-lucid/emacs-24.3-giflib5.patch b/pcr/emacs-lucid/emacs-24.3-giflib5.patch new file mode 100644 index 000000000..b8571abb2 --- /dev/null +++ b/pcr/emacs-lucid/emacs-24.3-giflib5.patch @@ -0,0 +1,26 @@ +--- src/image.c ++++ src/image.c 2013-05-21 15:49:41.945819346 +0000 +@@ -7192,7 +7192,11 @@ gif_load (struct frame *f, struct image + } + + /* Open the GIF file. */ ++#if GIFLIB_MAJOR < 5 + gif = fn_DGifOpenFileName (SSDATA (file)); ++#else ++ gif = fn_DGifOpenFileName (SSDATA (file), NULL); ++#endif + if (gif == NULL) + { + image_error ("Cannot open `%s'", file, Qnil); +@@ -7213,7 +7217,11 @@ gif_load (struct frame *f, struct image + memsrc.len = SBYTES (specified_data); + memsrc.index = 0; + ++#if GIFLIB_MAJOR < 5 + gif = fn_DGifOpen (&memsrc, gif_read_from_memory); ++#else ++ gif = fn_DGifOpen (&memsrc, gif_read_from_memory, NULL); ++#endif + if (!gif) + { + image_error ("Cannot open memory source `%s'", img->spec, Qnil); diff --git a/pcr/emacs-lucid/emacs.install b/pcr/emacs-lucid/emacs.install new file mode 100644 index 000000000..6712f44ba --- /dev/null +++ b/pcr/emacs-lucid/emacs.install @@ -0,0 +1,32 @@ +ICON_PATH=usr/share/icons/hicolor +INFO_DIR=usr/share/info + +INFO_FILES=(ada-mode auth autotype bovine calc ccmode cl dbus dired-x ebrowse +ede ediff edt efaq eieio eintr elisp emacs emacs-gnutls emacs-mime epa erc ert eshell eudc flymake +forms gnus htmlfontify idlwave mairix-el message mh-e newsticker nxml-mode +org pcl-cvs pgg rcirc reftex remember sasl sc semantic ses sieve smtpmail +speedbar srecode tramp url vip viper widget wisent woman) + +post_install() { + gtk-update-icon-cache -q -t -f ${ICON_PATH} + update-desktop-database -q + + [[ -x usr/bin/install-info ]] || return 0 + for f in ${INFO_FILES[@]}; do + install-info ${INFO_DIR}/$f.info.gz ${INFO_DIR}/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + gtk-update-icon-cache -q -t -f ${ICON_PATH} + update-desktop-database -q + + [[ -x usr/bin/install-info ]] || return 0 + for f in ${INFO_FILES[@]}; do + install-info --delete ${INFO_DIR}/$f.info.gz ${INFO_DIR}/dir 2> /dev/null + done +} |