summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 1c7c0bd266f5d3bb767fdde37a84e0cc4c5e54d1 (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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# Maintainer: Mihail Repnenkov <mrepnenkov@gmail.com>
# Contributor: Ivan Agarkov <ivan.agarkov@gmail.com>
pkgname=('postgresql-1c')
pkgver=9.6.3
_majorver=${pkgver%.*}
pkgrel=1
pkgdesc="Custom version of PostgreSQL 9.6 for 1C system"
url='https://www.postgresql.org/'
arch=('i686' 'x86_64')
license=('custom')
changelog=$pkgname.changelog
makedepends=('krb5' 'libxml2' 'python2' 'perl' 'tcl>=8.6.0' 'openssl>=1.0.0' 'pam')
source=(https://ftp.postgresql.org/pub/source/v${pkgver}/postgresql-${pkgver}.tar.bz2
        postgresql-var-run-socket.patch
        http://www.r-s-v.ru/1c-patch/1c-patch.tgz
        postgresql.pam
        postgresql.logrotate
        postgresql.service
        postgresql-check-db-dir)
sha256sums=('1645b3736901f6d854e695a937389e68ff2066ce0cde9d73919d6ab7c995b9c6'
            '887e567520d843f7e9f6e91820219979a4c6539d3ca6c56ebefd6d55360eddeb'
            '65cc43fbd76022254f31a5125deadb18e3240966dc058734d81fe602f99817d4'
            '57dfd072fd7ef0018c6b0a798367aac1abb5979060ff3f9df22d1048bb71c0d5'
            '6abb842764bbed74ea4a269d24f1e73d1c0b1d8ecd6e2e6fb5fb10590298605e'
            'c16981f70aca895d4a2adb36556213192776c1fc5bb75848a7f3211ad8d49c52'
            '2340da0947bcb1c5602008d0ca00588ca0bfa8aca4fa6947a8bdb2c6df800b0e')
sha512sums=('97141972e154e6b0e756ee6a4e20f26e82022a9fd4c56305314a3a5567a79ece638e4ac3d513b46138737ae6bd27a098f30013a94767db151181aac9c01290a1'
            '279c119b0c177d49a22dff0e9eb047ecfca5419a2bdfbd9a5908f67dfb2467ba9cbf4eab6c5fd0f9f5d1412c44a9dd14f826a97c0a9b1b519eafdbade04b8c47'
            'cbc1c017b7b666ee9ac1cf7826d7cb51d90408398d633055c946aa9b18f5c2f26114f8deaf6867b05bae991693bea2859f65da2632f2bc81fa5cd2a382c2be13'
            '1e6183ab0eb812b3ef687ac2c26ce78f7cb30540f606d20023669ac00ba04075487fb72e4dc89cc05dab0269ff6aca98fc1167cc75669c225b88b592482fbf67'
            '9ab4da01337ffbab8faec0e220aaa2a642dbfeccf7232ef2645bdc2177a953f17ee3cc14a4d8f8ebd064e1dae8b3dba6029adbffb8afaabea383963213941ba8'
            '32ae9fe9d7484f5254af3ae873d9469010581486081c92dc7c0fca6a4f763bc4f559e811b73e4eea4b2eff934f6b083aaed2e51fe517f018fc73bb1a3134232e'
            'f12d8777ca819366eac959e023fedf2eb409aa3f358f56269e13e19185d6e9c93c1f2a6e37c8bc6465ab32a02ff83d9f196ddea3cddf24a9884be9ac6970dad2')

build() {
  cd postgresql-${pkgver}

  patch -Np0 < ../postgresql-var-run-socket.patch
  patch -p1 < ../00001-1c_FULL_96-0.23.patch
  patch -p1 < ../00002-applock_remove_autogenerated_files.patch
  patch -p1 < ../00003-applock.patch
  patch -p1 < ../00004-online_analyze.patch
  patch -p1 < ../00005-plantuner.patch
  patch -p1 < ../00006-postgresql-1c-9.6.patch
  patch -p1 < ../00007-exists_opt-2.patch

  ./configure \
    --prefix=/usr \
    --mandir=/usr/share/man \
    --datadir=/usr/share/postgresql \
    --sysconfdir=/etc \
    --with-gssapi \
    --with-libxml \
    --with-openssl \
    --with-perl \
    --with-python PYTHON=/usr/bin/python2 \
    --with-tcl \
    --with-pam \
    --with-system-tzdata=/usr/share/zoneinfo \
    --with-uuid=e2fs \
    --enable-nls \
    --enable-thread-safety \
    --disable-integer-datetime

  make world
}

package_postgresql-1c() {
  conflicts=('postgresql')
  provides=('postgresql${pkgver}')	
  pkgdesc='Custom version of PostgreSQL 9.6 for 1C system'
  backup=('etc/pam.d/postgresql' 'etc/logrotate.d/postgresql')
  depends=("postgresql-libs>=${pkgver}" 'krb5' 'libxml2' 'readline>=6.0' 'openssl>=1.0.0' 'pam')
  optdepends=('python2: for PL/Python support'
              'perl: for PL/Perl support'
              'tcl: for PL/Tcl support'
              'postgresql-old-upgrade: upgrade from previous major version using pg_upgrade')
  options=('staticlibs')
  install=postgresql.install

  cd postgresql-${pkgver}

  # install
  make DESTDIR="${pkgdir}" install
  make -C contrib DESTDIR="${pkgdir}" install
  make -C doc/src/sgml DESTDIR="${pkgdir}" install-man

  # we don't want these, they are in the -libs package
  for dir in src/interfaces src/bin/pg_config src/bin/pg_dump src/bin/psql src/bin/scripts; do
    make -C ${dir} DESTDIR="${pkgdir}" uninstall
  done
  for util in pg_config pg_dump pg_dumpall pg_restore psql \
      clusterdb createdb createlang createuser dropdb droplang dropuser pg_isready reindexdb vacuumdb; do
    rm "${pkgdir}"/usr/share/man/man1/${util}.1
  done

  # install license
  install -Dm 644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgbase}/LICENSE"

  # clean up unneeded installed items
  rm -rf "${pkgdir}/usr/include/postgresql/internal"
  rm -rf "${pkgdir}/usr/include/libpq"
  find "${pkgdir}/usr/include" -maxdepth 1 -type f -execdir rm {} +
  rmdir "${pkgdir}/usr/share/doc/postgresql/html"

  install -Dm 644 "${srcdir}/postgresql.service" \
    "${pkgdir}/usr/lib/systemd/system/postgresql.service"
  install -Dm 755 "${srcdir}/postgresql-check-db-dir" \
    "${pkgdir}/usr/bin/postgresql-check-db-dir"

  install -Dm 644 "${srcdir}/postgresql.pam" \
    "${pkgdir}/etc/pam.d/postgresql"

  install -Dm 644 "${srcdir}/postgresql.logrotate" \
    "${pkgdir}/etc/logrotate.d/postgresql"
}