summaryrefslogtreecommitdiff
path: root/community/xemacs/PKGBUILD
blob: 2dcde06eee74db54adfd1afd3bb1e809a38beef6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# $Id: PKGBUILD 96361 2010-10-19 23:18:53Z stephane $
# Maintainer: juergen <juergen@archlinux.org>
# Contributor : Stéphane Gaudreault <stephane@archlinux.org>

pkgname=xemacs
pkgver=21.5.29
pkgrel=3
pkgdesc="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>=1.20.4' 'bash' 'ncurses>=5.6-7' 'desktop-file-utils' 'libxaw' 'libjpeg')
optdepends=('xorg-fonts-75dpi: X bitmap fonts needed for the interface'
            'xorg-fonts-100dpi: X bitmap fonts needed for the interface')
makedepends=('giflib' 'xbitmaps')
install=xemacs.install
source=(http://ftp.xemacs.org/pub/xemacs/beta/$pkgname-$pkgver.tar.gz
        xemacs.desktop
        xemacs-21.5.29-large-images.patch
        xemacs-21.5.29-optimization-bug.patch
        xemacs-21.5.29-vcdiff.patch)
md5sums=('5364192ae0d3de23d9f4ce197e6493b5'
         'a4d3d5c0aa2c7ce7bec491f809ca3694'
         '23ca5a7c50fe7ebebd9fc4525882cdf1'
         'eb061b10ea3bbe1026df5326ae1618e3'
         '4ada657a351b226cdd557f9faaeab075')

build() {
  cd "${srcdir}/${pkgname}-${pkgver}"

  # Fix security issue in vcdiff script
  patch -Np0 -i ../xemacs-21.5.29-vcdiff.patch

	# 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
 	
 	# Fix for security bug
  # See http://bugs.gentoo.org/show_bug.cgi?id=275397
  patch -Np1 -i ../xemacs-21.5.29-large-images.patch

  ./configure --build="${CHOST}" --prefix=/usr --with-dynamic \
      --with-x11 --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,rcs-checkin}
  rm ${pkgdir}/usr/share/man/man1/{ctags.1,etags.1}

  # fix  FS#7927
  install -d -m755 "${pkgdir}/usr/share/pixmaps"
  install -d -m755 "${pkgdir}/usr/share/applications"
  install -m644 "${srcdir}/${pkgname}.desktop" ${pkgdir}/usr/share/applications/ || return 1
  ln -sf /usr/lib/xemacs-21.5-b28/etc/xemacs-icon.xpm "${pkgdir}/usr/share/pixmaps/" || return 1

  # correct permissions
  chown -R root:root "${pkgdir}"

  rm ${pkgdir}/usr/share/info/dir
  gzip ${pkgdir}/usr/share/info/*
  rm ${pkgdir}/usr/share/info/{info.info.gz,texinfo.info-2.gz,cl.info.gz,texinfo.info-1.gz,texinfo.info.gz,standards.info.gz,widget.info.gz}
}
# vim: ts=2 sw=2 et ft=sh