Commit | Line | Data |
---|---|---|
4c29be99 FF |
1 | TERMUX_PKG_HOMEPAGE=https://www.postgresql.org |
2 | TERMUX_PKG_DESCRIPTION="Object-relational SQL database" | |
f8cb5237 | 3 | TERMUX_PKG_MAINTAINER='Vishal Biswas @vishalbiswas' |
9e7e5c2b | 4 | TERMUX_PKG_VERSION=10.3 |
ad809ea7 | 5 | TERMUX_PKG_REVISION=2 |
9e7e5c2b | 6 | TERMUX_PKG_SHA256=6ea268780ee35e88c65cdb0af7955ad90b7d0ef34573867f223f14e43467931a |
f8cb5237 | 7 | TERMUX_PKG_SRCURL=https://ftp.postgresql.org/pub/source/v$TERMUX_PKG_VERSION/postgresql-$TERMUX_PKG_VERSION.tar.bz2 |
349fd91f | 8 | TERMUX_PKG_DEPENDS="openssl, libcrypt, readline, libandroid-shmem" |
2eecb49a FF |
9 | # - pgac_cv_prog_cc_ldflags__Wl___as_needed: Inform that the linker supports as-needed. It's |
10 | # not stricly necessary but avoids unnecessary linking of binaries. | |
11 | # - USE_UNNAMED_POSIX_SEMAPHORES: Avoid using System V semaphores which are disabled on Android. | |
b69a8220 FF |
12 | # - ZIC=...: The zic tool is used to build the time zone database bundled with postgresql. |
13 | # We specify a binary built in termux_step_host_build which has been patched to use symlinks | |
14 | # over hard links (which are not supported as of Android 6.0+). | |
15 | # There exists a --with-system-tzdata configure flag, but that does not work here as Android | |
16 | # uses a custom combined tzdata file. | |
a9508389 | 17 | TERMUX_PKG_EXTRA_CONFIGURE_ARGS=" |
2eecb49a | 18 | pgac_cv_prog_cc_ldflags__Wl___as_needed=yes |
a9508389 FF |
19 | USE_UNNAMED_POSIX_SEMAPHORES=1 |
20 | --with-openssl | |
b69a8220 | 21 | ZIC=$TERMUX_PKG_HOSTBUILD_DIR/src/timezone/zic |
a9508389 | 22 | " |
f8cb5237 | 23 | TERMUX_PKG_EXTRA_MAKE_ARGS=" -s" |
2eecb49a | 24 | TERMUX_PKG_RM_AFTER_INSTALL="lib/libecpg* bin/ecpg share/man/man1/ecpg.1" |
b69a8220 | 25 | TERMUX_PKG_HOSTBUILD=yes |
ad809ea7 | 26 | TERMUX_PKG_BREAKS="postgresql-contrib (<= 10.3-1)" |
27 | TERMUX_PKG_REPLACES="postgresql-contrib (<= 10.3-1)" | |
b69a8220 FF |
28 | |
29 | termux_step_host_build() { | |
30 | # Build a native zic binary which we have patched to | |
31 | # use symlinks instead of hard links. | |
acecb62b | 32 | $TERMUX_PKG_SRCDIR/configure --without-readline |
b69a8220 FF |
33 | make ./src/timezone/zic |
34 | } | |
40868b30 FF |
35 | |
36 | termux_step_post_make_install() { | |
2eecb49a FF |
37 | # Man pages are not installed by default: |
38 | make -C doc/src/sgml install-man | |
39 | ||
14c2d7e4 FF |
40 | for contrib in \ |
41 | hstore \ | |
42 | pageinspect \ | |
43 | pgcrypto \ | |
44 | pgrowlocks \ | |
45 | pg_freespacemap \ | |
46 | pg_stat_statements\ | |
81da923c | 47 | fuzzystrmatch \ |
14c2d7e4 | 48 | ; do |
40868b30 FF |
49 | (cd contrib/$contrib && make -s -j $TERMUX_MAKE_PROCESSES install) |
50 | done | |
51 | } | |
53530ad8 FF |
52 | |
53 | termux_step_post_massage() { | |
54 | # Remove bin/pg_config so e.g. php doesn't try to use it, which won't | |
55 | # work as it's a cross-compiled binary: | |
56 | rm $TERMUX_PREFIX/bin/pg_config | |
57 | } |