diff options
Diffstat (limited to 'community-testing/xemacs')
-rw-r--r-- | community-testing/xemacs/PKGBUILD | 65 | ||||
-rw-r--r-- | community-testing/xemacs/xemacs-21.5.29-optimization-bug.patch | 14 | ||||
-rw-r--r-- | community-testing/xemacs/xemacs.desktop | 34 | ||||
-rw-r--r-- | community-testing/xemacs/xemacs.install | 35 |
4 files changed, 148 insertions, 0 deletions
diff --git a/community-testing/xemacs/PKGBUILD b/community-testing/xemacs/PKGBUILD new file mode 100644 index 000000000..2787048b1 --- /dev/null +++ b/community-testing/xemacs/PKGBUILD @@ -0,0 +1,65 @@ +# $Id: PKGBUILD 61886 2012-01-09 18:50:38Z stephane $ +# Maintainer: juergen <juergen@archlinux.org> +# Contributor : Stéphane Gaudreault <stephane@archlinux.org> + +pkgname=xemacs +pkgver=21.5.31 +pkgrel=4 +pkgdesc="An highly customizable open source text editor and application development system forked from GNU Emacs" +arch=('i686' 'x86_64') +url="http://www.xemacs.org/" +license=('GPL') +depends=('db' 'libpng' 'libtiff' 'gpm' 'desktop-file-utils' 'libxaw' 'gdbm' 'giflib') +optdepends=('xorg-fonts-75dpi: X bitmap fonts needed for the interface' + 'xorg-fonts-100dpi: X bitmap fonts needed for the interface') +makedepends=('xbitmaps') +install=xemacs.install +source=(http://ftp.xemacs.org/pub/xemacs/beta/${pkgname}-${pkgver}.tar.gz + xemacs.desktop + xemacs-21.5.29-optimization-bug.patch) +md5sums=('0185fe905d0b8d8d094d9b60cf262d4a' + 'a4d3d5c0aa2c7ce7bec491f809ca3694' + 'eb061b10ea3bbe1026df5326ae1618e3') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + +# Fix problem caused by improper optimization with GCC>=4.1.2 on i686 +# (and possibly other arches). See +# http://tracker.xemacs.org/XEmacs/its/issue354 +# for the upstream bug report. + patch -Np0 -i ../xemacs-21.5.29-optimization-bug.patch + + ./configure --build="${CHOST}" --prefix=/usr --with-dynamic \ + --without-postgresql --with-athena=xaw \ + --enable-database=berkdb --without-ldap \ + --enable-menubars=lucid --enable-scrollbars=lucid \ + --enable-widgets=athena --enable-dialogs=athena \ + --enable-external-widget \ + --with-jpeg --with-png --with-tiff \ + --with-ncurses --with-pop --with-xfs --disable-sound \ + --infodir=/usr/share/info \ + --with-mule \ + --mandir=/usr/share/man/man1 + + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make -j1 prefix="${pkgdir}/usr" mandir="${pkgdir}/usr/share/man/man1" infodir="${pkgdir}/usr/share/info" install gzip-el + + rm "${pkgdir}"/usr/bin/{b2m,ctags,etags} + rm "${pkgdir}"/usr/share/man/man1/{ctags.1,etags.1} + + # fix FS#7927 + install -d -m755 "${pkgdir}/usr/share/pixmaps" + install -D -m644 "${srcdir}/${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop" + ln -sf /usr/share/xemacs-${pkgver%.*}-b${pkgver##*.}/etc/xemacs-icon.xpm "${pkgdir}/usr/share/pixmaps/xemacs-icon.xpm" + + # correct permissions + chown -R root:root "${pkgdir}" + + rm "${pkgdir}"/usr/share/info/{info.info,texinfo.info-2,cl.info,texinfo.info-1,texinfo.info,standards.info,widget.info} +} +# vim: ts=2 sw=2 et ft=sh diff --git a/community-testing/xemacs/xemacs-21.5.29-optimization-bug.patch b/community-testing/xemacs/xemacs-21.5.29-optimization-bug.patch new file mode 100644 index 000000000..32a1a02c2 --- /dev/null +++ b/community-testing/xemacs/xemacs-21.5.29-optimization-bug.patch @@ -0,0 +1,14 @@ +Work around a GCC optimization bug as described in +http://tracker.xemacs.org/XEmacs/its/issue354 + +--- src/dumper.c.~1~ 2008-01-26 09:54:11.000000000 +0100 ++++ src/dumper.c 2008-05-03 10:17:03.000000000 +0200 +@@ -2584,7 +2584,7 @@ + #endif /* !WIN32_NATIVE */ + + +-static int ++int + pdump_file_try (Wexttext *exe_path) + { + Wexttext *w = exe_path + wext_strlen (exe_path); diff --git a/community-testing/xemacs/xemacs.desktop b/community-testing/xemacs/xemacs.desktop new file mode 100644 index 000000000..257c56947 --- /dev/null +++ b/community-testing/xemacs/xemacs.desktop @@ -0,0 +1,34 @@ +[Desktop Entry] +Name=XEmacs Text Editor +Name[bg]=редактор XEmacs +Name[ca]=Editor XEmacs +Name[cs]=Editor XEmacs +Name[da]=XEmacs tekstredigerer +Name[de]=XEmacs Texteditor +Name[eo]=La redaktilo XEmakso +Name[es]=Emacs para X +Name[et]=Emacs X'i kasutajaliidesega +Name[fi]=XEmacs editori +Name[fr]=Éditeur XEmacs +Name[hu]=XEmacs szövegszerkesztő +Name[is]=XEmacs-ritill +Name[it]=Emacs per X +Name[ja]=XEmacs テキスト・エディター +Name[mk]=Софистицираниот XEmacs уредувач +Name[no]=XEmacs-tekstredigerer +Name[pt]=Editor XEmacs +Name[ro]=Editorul XEmacs +Name[ru]=Редактор XEmacs +Name[sk]=Editor XEmacs +Name[sl]=Urejevalnik XEmacs +Name[uk]=Редактор XEmacs +GenericName=Text Editor +Comment=Edit text +MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++; +Exec=xemacs %f +Icon=/usr/share/pixmaps/xemacs-icon.xpm +Type=Application +Terminal=false +Categories=Development;TextEditor; +Encoding=UTF-8 +StartupWMClass=Emacs diff --git a/community-testing/xemacs/xemacs.install b/community-testing/xemacs/xemacs.install new file mode 100644 index 000000000..a04ee187f --- /dev/null +++ b/community-testing/xemacs/xemacs.install @@ -0,0 +1,35 @@ +infodir=usr/share/info +filelist=(beta.info.gz custom.info.gz + emodules.info.gz external-widget.info.gz + internals.info-1.gz internals.info-2.gz + internals.info-3.gz internals.info-4.gz + internals.info-5.gz internals.info.gz + lispref.info-1.gz lispref.info-10.gz + lispref.info-2.gz lispref.info-3.gz + lispref.info-4.gz lispref.info-5.gz + lispref.info-6.gz lispref.info-7.gz + lispref.info-8.gz lispref.info-9.gz + lispref.info.gz new-users-guide.info.gz + term.info.gz termcap.info.gz + xemacs-faq.info-1.gz xemacs-faq.info-2.gz + xemacs-faq.info.gz xemacs.info-1.gz + xemacs.info-2.gz xemacs.info-3.gz + xemacs.info-4.gz xemacs.info.gz) + +post_install() { + for file in ${filelist[@]}; do + install-info $infodir/$file $infodir/dir 2> /dev/null + done + update-desktop-database -q +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + for file in ${filelist[@]}; do + install-info --delete $infodir/$file $infodir/dir 2> /dev/null + done + update-desktop-database -q +} |