Index: head/databases/postgresql92-server/Makefile =================================================================== --- head/databases/postgresql92-server/Makefile (revision 421474) +++ head/databases/postgresql92-server/Makefile (revision 421475) @@ -1,268 +1,270 @@ # Created by: Marc G. Fournier # $FreeBSD$ PORTNAME?= postgresql DISTVERSION?= 9.2.18 PORTREVISION?= 0 CATEGORIES?= databases MASTER_SITES= PGSQL/source/v${DISTVERSION} PKGNAMESUFFIX?= ${PORTVERSION:R:S/.//}${COMPONENT} MAINTAINER?= pgsql@FreeBSD.org COMMENT?= The most advanced open-source database available anywhere CONFLICTS?= ${PORTNAME}[^${PORTVERSION:R:R}]?-client* \ ${PORTNAME}${COMPONENT}-[^${PORTVERSION:R:R}].* \ ${PORTNAME}9[^${PORTVERSION:R:E}]-client* \ ${PORTNAME}${COMPONENT}-9.[^${PORTVERSION:R:E}].* WRKSRC= ${WRKDIR}/postgresql-${DISTVERSION} DIST_SUBDIR= postgresql ICU_PATCHFILE?= pg-9218-icu-2016-08-10.diff.gz OPTIONS_SUB= yes PKGINSTALL?= ${PKGDIR}/pkg-install${COMPONENT} USES+= tar:bzip2 cpe .if !defined(NO_BUILD) USES+= gmake GNU_CONFIGURE= yes .endif PG_USER?= pgsql PG_GROUP?= pgsql PG_UID?= 70 LDFLAGS+= -L${LOCALBASE}/lib INCLUDES+= -I${LOCALBASE}/include CONFIGURE_ARGS+=--with-libraries=${PREFIX}/lib \ --with-includes=${PREFIX}/include \ --enable-thread-safety CONFIGURE_ENV+= INCLUDES="${INCLUDES}" \ PTHREAD_LIBS="-lpthread" \ LDFLAGS_SL="${LDFLAGS_SL}" LDFLAGS+= -lpthread PLIST= ${PKGDIR}/pkg-plist${COMPONENT} INSTALL_DIRS?= src/timezone src/backend \ src/backend/utils/mb/conversion_procs \ src/backend/snowball src/backend/replication/libpqwalreceiver \ src/bin/initdb src/bin/pg_ctl \ src/bin/pg_controldata src/bin/pg_resetxlog src/pl \ src/bin/pg_basebackup BUILD_DIRS?= src/port ${INSTALL_DIRS} INSTALL_TARGET?=install-strip .if !defined(CLIENT_ONLY) && !defined(SLAVE_ONLY) SERVER_ONLY= yes COMPONENT= -server USE_RC_SUBR= postgresql USES+= pgsql:${DISTVERSION:C/([0-9][0-9]*\.[0-9][0-9]*).*/\1/g} USERS= ${PG_USER} GROUPS= ${PG_GROUP} SUB_FILES+= 502.pgsql .endif .if defined(CLIENT_ONLY) OPTIONS_DEFINE+=LIBEDIT LIBEDIT_DESC= Use non-GPL libedit instead of readline USES+= perl5 .else MAKE_ENV= PATH=${PREFIX}/bin:${PATH} CONFIGURE_ENV+= PATH=${PREFIX}/bin:${PATH} .endif .if defined(SERVER_ONLY) OPTIONS_DEFINE= DTRACE LDAP INTDATE TZDATA XML LDAP_DESC= Build with LDAP authentication support DTRACE_DESC= Build with DTrace probes TZDATA_DESC= Use internal timezone database XML_DESC= Build with XML data type # See http://people.freebsd.org/~girgen/postgresql-icu/README.html for more info OPTIONS_DEFINE+= ICU ICU_DESC= Use ICU for unicode collation # See http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/76999 for more info # (requires dump/restore if modified.) OPTIONS_DEFINE+= INTDATE INTDATE_DESC= Builds with 64-bit date/time type OPTIONS_DEFAULT+= XML TZDATA INTDATE .endif .if !defined(SLAVE_ONLY) OPTIONS_DEFINE+= NLS PAM GSSAPI OPTIMIZED_CFLAGS DEBUG OPTIONS_RADIO= KRB5 OPTIONS_RADIO_KRB5= MIT_KRB5 HEIMDAL_KRB5 KRB5_DESC= Build with kerberos provider support NLS_DESC= Use internationalized messages PAM_DESC= Build with PAM Support MIT_KRB5_DESC= Build with MIT kerberos support HEIMDAL_KRB5_DESC= Builds with Heimdal kerberos GSSAPI_DESC= Build with GSSAPI support OPTIMIZED_CFLAGS_DESC= Builds with compiler optimizations (-O3) DEBUG_DESC= Builds with debugging symbols OPTIONS_DEFINE+= SSL SSL_DESC= Build with OpenSSL support OPTIONS_DEFAULT+= NLS SSL .endif # !SLAVE_ONLY .if defined(CLIENT_ONLY) LIBEDIT_CONFIGURE_ON+=--with-libedit-preferred LIBEDIT_USES= libedit LIBEDIT_USES_OFF= readline .endif # CLIENT_ONLY SSL_USES= ssl SSL_CONFIGURE_WITH=openssl PAM_CONFIGURE_WITH= pam XML_CONFIGURE_WITH= libxml XML_LIB_DEPENDS= libxml2.so:textproc/libxml2 TZDATA_CONFIGURE_OFF=--with-system-tzdata=/usr/share/zoneinfo INTDATE_CONFIGURE_OFF=--disable-integer-datetimes NLS_CONFIGURE_ENABLE= nls NLS_USES= gettext LDAP_CONFIGURE_WITH= ldap LDAP_USE= OPENLDAP=yes OPTIMIZED_CFLAGS_CFLAGS= -O3 -funroll-loops DEBUG_CONFIGURE_ENABLE= debug PLIST_SUB+= PG_USER=${PG_USER} \ PG_GROUP=${PG_GROUP} SUB_LIST+= PG_GROUP=${PG_GROUP} \ PG_USER=${PG_USER} \ PG_UID=${PG_UID} .include .if !defined(SLAVE_ONLY) . if ( defined(SERVER_ONLY) && ${PORT_OPTIONS:MICU} ) || make(makesum) USE_AUTOTOOLS= autoconf CONFIGURE_ARGS+=--with-icu PATCH_SITES+= http://people.freebsd.org/~girgen/postgresql-icu/:icu PATCHFILES+= ${ICU_PATCHFILE}:icu LIB_DEPENDS+= libicudata.so:devel/icu . endif .endif # !SLAVE_ONLY .if !defined(SLAVE_ONLY) PATCH_DIST_STRIP=-p1 . if ${PORT_OPTIONS:MDTRACE} CONFIGURE_ARGS+=--enable-dtrace LDFLAGS+=-lelf INSTALL_TARGET=install . endif .if ${PORT_OPTIONS:MGSSAPI} CONFIGURE_ARGS+=--with-gssapi .if empty(PORT_OPTIONS:MMIT_KRB5) && empty(PORT_OPTIONS:MHEIMDAL_KRB5) # Kerberos libraries will pull the proper GSSAPI library # via linker dependencies, but otherwise we must specify # it explicitely: ld --as-needed is used for compilation, # so configure's -lgssapi_krb5 won't go. LDFLAGS+= -lgssapi LDFLAGS_SL+= -lgssapi .endif .else CONFIGURE_ARGS+=--without-gssapi .endif . if ${PORT_OPTIONS:MMIT_KRB5} . if defined(IGNORE_WITH_SRC_KRB5) && (exists(/usr/lib/libkrb5.so) || exists(/usr/bin/krb5-config)) IGNORE= requires that you remove heimdal's /usr/bin/krb5-config and /usr/lib/libkrb5.so*, and set NO_KERBEROS=true in /etc/src.conf to build successfully with MIT-KRB . else CONFIGURE_ARGS+=--with-krb5 # Allow defining a home built MIT Kerberos by setting KRB5_HOME . if defined(KRB5_HOME) && exists(${KRB5_HOME}/lib/libgssapi_krb5.a) && exists(${KRB5_HOME}/bin/krb5-config) LIB_DEPENDS+= libkrb5.so.3:security/krb5 . endif . endif . endif . if ${PORT_OPTIONS:MHEIMDAL_KRB5} CONFIGURE_ARGS+=--with-krb5 . endif .endif # !SLAVE_ONLY # For testing files in FILESDIR .include .if defined(SERVER_ONLY) pre-build: @${SH} ${PKGINSTALL} ${PORTNAME} PRE-INSTALL .endif .if !defined(NO_BUILD) && !target(do-build) do-build: @ cd ${WRKSRC}/src/backend && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} symlinks @ for dir in ${BUILD_DIRS}; do \ cd ${WRKSRC}/$${dir} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD}; \ done . if exists(${FILESDIR}/pkg-message${COMPONENT}.in) SUB_FILES+= pkg-message${COMPONENT} PKGMESSAGE= ${WRKSRC}/pkg-message${COMPONENT} . endif . if exists(${FILESDIR}/pkg-install${COMPONENT}.in) SUB_FILES+= pkg-install${COMPONENT} PLIST_SUB+= PG_USER=${PG_USER} . endif post-patch: . if defined(SERVER_ONLY) && ${PORT_OPTIONS:MICU} @${REINPLACE_CMD} -E -e \ "s|^(m4_if.*)2.6[0-9](.*Autoconf version )2.6[0-9]|\1${AUTOCONF_VERSION}\2${AUTOCONF_VERSION}|g" \ ${WRKSRC}/configure.in . endif do-install: @for dir in ${INSTALL_DIRS}; do \ cd ${WRKSRC}/$${dir} && \ ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} ${INSTALL_TARGET}; \ done . if defined(SERVER_ONLY) @ ${MKDIR} ${STAGEDIR}${PREFIX}/share/postgresql ;\ ${MKDIR} ${STAGEDIR}${PREFIX}/etc/periodic/daily ;\ ${INSTALL_SCRIPT} ${WRKDIR}/502.pgsql \ ${STAGEDIR}${PREFIX}/etc/periodic/daily - ${MKDIR} ${STAGEDIR}${PREFIX}/${PG_USER} +. if ${PORTVERSION:M9.[2345].*} + ${MKDIR} ${STAGEDIR}${PREFIX}/${PG_USER} +. endif . endif # SERVER_ONLY . if defined(CLIENT_ONLY) @ cd ${WRKSRC}/src && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} install-local . endif @ if [ -r ${PKGMESSAGE} ]; then \ ${MKDIR} ${STAGEDIR}${DOCSDIR} ;\ ${INSTALL_DATA} ${PKGMESSAGE} ${STAGEDIR}${DOCSDIR}/README${COMPONENT} ;\ fi .endif # !NO_BUILD .if defined(SERVER_ONLY) check: @if [ `id -u` != 0 ] ; then \ ${ECHO} "Running postgresql regressions tests" ;\ cd ${WRKSRC}; ${MAKE_CMD} check ;\ else \ ${ECHO} "You cannot run regression tests when postgresql is built as user root." ; \ ${ECHO} "Clean and rebuild the port as a regular user to run the tests." ;\ fi .endif .include Index: head/databases/postgresql96-server/Makefile =================================================================== --- head/databases/postgresql96-server/Makefile (revision 421474) +++ head/databases/postgresql96-server/Makefile (revision 421475) @@ -1,26 +1,26 @@ # Created by: Marc G. Fournier # $FreeBSD$ DISTVERSION?= 9.6rc1 -PORTREVISION?= 1 +PORTREVISION?= 2 MAINTAINER?= pgsql@FreeBSD.org INSTALL_DIRS?= src/common src/timezone src/backend \ src/backend/utils/mb/conversion_procs \ src/backend/snowball src/backend/replication/libpqwalreceiver \ src/bin/initdb src/bin/pg_ctl \ src/bin/pg_controldata src/bin/pg_resetxlog src/pl \ src/bin/pg_basebackup src/bin/pg_archivecleanup \ src/bin/pg_rewind \ src/bin/pg_test_fsync src/bin/pg_test_timing \ src/bin/pg_xlogdump src/bin/pg_upgrade PG_USER?= postgres PG_GROUP?= postgres PG_UID?= 770 ICU_PATCHFILE= pg-96b4-icu-2016-08-10.diff.gz OPTIONS_DEFAULT+=ICU .include "${.CURDIR}/../postgresql92-server/Makefile" Index: head/databases/postgresql96-server/files/pkg-message-server.in =================================================================== --- head/databases/postgresql96-server/files/pkg-message-server.in (revision 421474) +++ head/databases/postgresql96-server/files/pkg-message-server.in (revision 421475) @@ -1,57 +1,57 @@ For procedural languages and postgresql functions, please note that you might have to update them when updating the server. If you have many tables and many clients running, consider raising kern.maxfiles using sysctl(8), or reconfigure your kernel appropriately. The port is set up to use autovacuum for new databases, but you might also want to vacuum and perhaps backup your database regularly. There is a periodic script, %%PREFIX%%/etc/periodic/daily/502.pgsql, that -you may find useful. You can use it to backup and perfom vacuum on all -databases nightly. Per default, it perfoms `vacuum analyze'. See the +you may find useful. You can use it to backup and perform vacuum on all +databases nightly. Per default, it performs `vacuum analyze'. See the script for instructions. For autovacuum settings, please review ~pgsql/data/postgresql.conf. If you plan to access your PostgreSQL server using ODBC, please consider running the SQL script %%PREFIX%%/share/postgresql/odbc.sql to get the functions required for ODBC compliance. Please note that if you use the rc script, %%PREFIX%%/etc/rc.d/postgresql, to initialize the database, unicode (UTF-8) will be used to store character data by default. Set postgresql_initdb_flags or use login.conf settings described below to alter this behaviour. See the start rc script for more info. To set limits, environment stuff like locale and collation and other things, you can set up a class in /etc/login.conf before initializing the database. Add something similar to this to /etc/login.conf: --- postgres:\ :lang=en_US.UTF-8:\ :setenv=LC_COLLATE=C:\ :tc=default: --- and run `cap_mkdb /etc/login.conf'. Then add 'postgresql_class="postgres"' to /etc/rc.conf. ====================================================================== To initialize the database, run %%PREFIX%%/etc/rc.d/postgresql initdb You can then start PostgreSQL by running: %%PREFIX%%/etc/rc.d/postgresql start For postmaster settings, see ~pgsql/data/postgresql.conf NB. FreeBSD's PostgreSQL port logs to syslog by default See ~pgsql/data/postgresql.conf for more info ====================================================================== To run PostgreSQL at startup, add 'postgresql_enable="YES"' to /etc/rc.conf