Files
Mohamed Akram a2c1cdffe9 icu: rev-bump dependents
[skip ci]
2026-03-22 20:02:37 +04:00

168 lines
6.1 KiB
Tcl

# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
PortSystem 1.0
PortGroup compilers 1.0
PortGroup muniversal 1.0
PortGroup deprecated 1.0
PortGroup openssl 1.0
# EOL 2023-11-09
deprecated.upstream_support no
#remember to update the -doc and -server as well
name postgresql11
version 11.22
revision 2
categories databases
maintainers {jwa @jyrkiwahlstedt}
license Permissive
description The most advanced open-source database available anywhere.
long_description PostgreSQL is Object-Relational Database Management System.\
It supports almost all SQL constructs, including transactions, \
subselects, and user-defined types and functions. Write-ahead \
logging means increased performance while retaining data \
integrity.
homepage https://www.postgresql.org/
master_sites http://ftp3.de.postgresql.org/pub/Mirrors/ftp.postgresql.org/source/v${version}/ \
postgresql:source/v${version}/
distname postgresql-${version}
checksums rmd160 ff0515cb0d1681e78e2498b74caf04ac97a5b41a \
sha256 2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0 \
size 20482994
use_bzip2 yes
# do not build man or html files (use postgresqlXY-doc instead)
patchfiles-append patch-no_doc.diff
# https://www.postgresql.org/message-id/attachment/152769/v1-0001-Make-PostgreSQL-work-with-newer-version-of-libxml.patch
patchfiles-append patch-xml_c.diff
openssl.branch 1.1
depends_lib port:readline port:zlib port:libxml2 port:libxslt path:lib/pkgconfig/icu-uc.pc:icu path:lib/libgssapi_krb5.dylib:kerberos5
depends_build port:bison port:pkgconfig
depends_run port:postgresql_select-11
worksrcdir postgresql-${version}
set libdir ${prefix}/lib/${name}
configure.args PG_SYSROOT=disabled \
--sysconfdir=${prefix}/etc/${name} \
--bindir=${libdir}/bin \
--libdir=${libdir} \
--includedir=${prefix}/include/${name} \
--datadir=${prefix}/share/${name} \
--docdir=${prefix}/share/doc/${name} \
--mandir=${prefix}/share/man \
--with-includes=${prefix}/include \
--with-libraries=${prefix}/lib \
--with-openssl \
--with-bonjour \
--with-readline \
--with-zlib \
--with-libxml \
--with-libxslt \
--with-gssapi \
--enable-thread-safety \
--with-uuid=e2fs \
--with-icu
configure.ldflags-append -headerpad_max_install_names
configure.universal_args-delete --disable-dependency-tracking
# building psql with clang from Xcode prior to 4.4 causes segfault on query; see #31717
compiler.blacklist-append {clang < 421}
compilers.choose cc cxx
compilers.setup -gcc -fortran -clang33 -clang34 -clang37
notes "To use the postgresql server, install the ${name}-server port"
if {![info exists universal_possible]} {
set universal_possible [expr {${os.universal_supported} && [llength ${configure.universal_archs}] >= 2}]
}
if {${universal_possible} && [variant_isset universal]} {
configure.cflags-append -DAC_APPLE_UNIVERSAL_BUILD
}
build.type gnu
build.target world
destroot.target install-world
test.run yes
test.target check
# remember to change livecheck with first proper release
livecheck.type regex
#livecheck.regex (11\\.\[.0-9\]*\[a-z\]+\[0-9\])
#livecheck.regex (11\[a-z\]+\[0-9\])
livecheck.regex (11\\.\[.0-9\]+)
livecheck.url ${homepage}/ftp/source/
post-destroot {
system "cd ${destroot}${prefix}/bin && ln -sf ${libdir}/bin/psql psql11"
reinplace -E "s#^CFLAGS =#CFLAGS +=#g" \
${destroot}${prefix}/lib/${name}/pgxs/src/Makefile.global
}
if {!${universal_possible} || ![variant_isset universal]} {
post-destroot {
reinplace -E "s#-arch\[\[:space:\]\]+\[\[:alnum:\]_\]+##g" \
${destroot}${prefix}/lib/${name}/pgxs/src/Makefile.global
}
} else {
merger-post-destroot {
foreach arch ${configure.universal_archs} {
reinplace -E "s#-arch\[\[:space:\]\]+\[\[:alnum:\]_\]+##g" \
${destroot}-${arch}${prefix}/lib/${name}/pgxs/src/Makefile.global
reinplace -E "s#${worksrcpath}-${arch}#${worksrcpath}#g" \
${destroot}-${arch}${prefix}/lib/${name}/pgxs/src/Makefile.global
}
}
}
variant python requires python27 description {add support for python} {
}
variant python27 conflicts python3 description {add support for python 2.7} {
depends_lib-append port:python27
configure.args-append --with-python
configure.python ${prefix}/bin/python2.7
}
variant python3 conflicts python27 description {add support for python 3.x} {
depends_lib-append port:python39
configure.args-append --with-python
configure.python ${prefix}/bin/python3.9
}
variant perl description {add Perl support} {
depends_lib-append bin:perl:perl5
configure.args-append --with-perl
}
variant tcl description {add Tcl support} {
depends_lib-append port:tcl
configure.args-append --with-tcl --with-tclconfig=${prefix}/lib
configure.env-append TCLSH=${prefix}/bin/tclsh
}
variant llvm description {add support for JIT compilation} {
set llvm_ver 9.0
foreach clang ${compilers.clang_variants} {
if { [variant_exists ${clang}] && [variant_isset ${clang}] } {
set llvm_ver [string index ${clang} end-1].[string index ${clang} end]
}
}
depends_lib-append port:llvm-${llvm_ver}
configure.args-append --with-llvm
configure.env-append LLVM_CONFIG=${prefix}/libexec/llvm-${llvm_ver}/bin/llvm-config \
CLANG=${configure.cc}
}