From d3285d3c8cd7a90ac8766e0ce54c6eafaad7a5f2 Mon Sep 17 00:00:00 2001 From: root Date: Sat, 21 Sep 2013 03:03:11 -0700 Subject: Sat Sep 21 02:56:25 PDT 2013 --- pcr/emacs-lucid/PKGBUILD | 54 ++++++++++++++++++++++++++++++++ pcr/emacs-lucid/emacs-24.3-giflib5.patch | 26 +++++++++++++++ pcr/emacs-lucid/emacs.install | 32 +++++++++++++++++++ 3 files changed, 112 insertions(+) create mode 100644 pcr/emacs-lucid/PKGBUILD create mode 100644 pcr/emacs-lucid/emacs-24.3-giflib5.patch create mode 100644 pcr/emacs-lucid/emacs.install (limited to 'pcr/emacs-lucid') 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 +# Maintainer (Arch): Juergen Hoetzel +# Contributor: Renchi Raju + +_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 +} -- cgit v1.2.3-54-g00ecf