summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 012f89599aa5e04459cf986d401010f4108641d1 (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
80
81
82
83
# Maintainer: Klaus Alexander Seistrup <klaus@seistrup.dk>
# -*- sh -*-

pkgname=('jed-git')
_pkgname="${pkgname/-git/}"
pkgver='0.99.20.r180.g68f0c75'
pkgrel='2'
pkgdesc='Powerful scriptable editor designed for use by programmers (built from latest git commit)'
arch=('aarch64' 'armv7h' 'i686' 'x86_64')
url='https://www.jedsoft.org/jed/'
source=(
  'git://git.jedsoft.org/git/jed.git'
  "$pkgname.install"
)
license=('GPL')
provides=('jed' 'xjed' 'rgrep')
conflicts=('jed' 'xjed' 'rgrep')
options=('lto')
depends=(
  'fontconfig'
  'glibc'
  'gpm'
  'slang'
  'libx11'
  'libxft'
)
makedepends=('git' 'libxext' 'libxt')
install="$pkgname.install"

prepare() {
  cd "$srcdir/$_pkgname"

  sed \
    -e "s|\(^all.*\)|\1 xjed rgrep getmail|" \
    -e "s|..DEST.*doc|$pkgdir/usr/share/doc/$pkgname|g" \
    -i src/Makefile.in

  # RFC-0023
  # 🔗 https://rfc.archlinux.page/0023-pack-relative-relocs/
  export LDFLAGS="$LDFLAGS -Wl,-z,pack-relative-relocs"
}

pkgver() {
  cd "$srcdir/$_pkgname"

  # The usual “git describe --long” doesn't work here,
  # so let's invent our own thing:
  _version=$(
    awk '$2 == "JED_VERSION_STR" {print $3}' src/version.h \
    | sed -e 's/pre//;s/-/.r/;s/"//g'
  )
  _commit=$(git log -n 1 --pretty=format:'g%h')

  printf '%s.%s\n' "$_version" "$_commit"
}

build() {
  cd "$srcdir/$_pkgname"

  ./configure --prefix=/usr JED_ROOT=/usr/share/jed

  make clean
  make
  make xjed
  make getmail
}

package() {
  cd "$srcdir/$_pkgname" || exit 1

  make DESTDIR="$pkgdir" install

  install -Dm0755 'src/objs/rgrep' "$pkgdir/usr/bin/rgrep"

  cd "$pkgdir/usr/share/jed/lib" || exit 1

  env JED_ROOT="$pkgdir/usr/share/jed" \
    "$pkgdir/usr/bin/jed" -batch -n -l preparse.sl
}

sha256sums=('SKIP' 'SKIP')  # Skip to my Lou

# eof