Pullup ticket #3113 - requested by spz:
[pkgsrc.git] / databases / postgresql82-server / Makefile
1 # $NetBSD$
2
3 PKGNAME=        postgresql82-server-${BASE_VERS}
4 COMMENT=        PostgreSQL database server programs
5
6 PKG_DESTDIR_SUPPORT=    user-destdir
7
8 # mips has no TAS implementation
9 NOT_FOR_PLATFORM=       *-*-mips
10
11 .include "../../databases/postgresql82/Makefile.common"
12
13 # Use shlibtool (invoked as "$(LIBTOOL)") to build modules.
14 USE_LIBTOOL=            yes
15 PKG_LIBTOOL=            ${PKG_SHLIBTOOL}
16
17 MESSAGE_SRC=            ${.CURDIR}/MESSAGE
18
19 CONFIGURE_ARGS+=        --with-openssl
20
21 BUILD_DIRS=             src/backend
22 BUILD_DIRS+=            src/backend/utils/mb/conversion_procs
23 BUILD_DIRS+=            src/timezone
24 BUILD_DIRS+=            src/pl
25
26 # PostgreSQL has loadable server-side language modules.
27 #
28 # Explicitly set DLOPEN_REQUIRE_PTHREADS to "no" on NetBSD as NetBSD-2.x
29 # had problems with mixing dlopen() and pthreads, which blows up in
30 # PostgreSQL's backend (pkg/28729).  This works on older and newer
31 # versions of NetBSD as well since they don't have the bad interaction
32 # between dlopen() and pthreads.
33 #
34 .if ${OPSYS} == "NetBSD"
35 DLOPEN_REQUIRE_PTHREADS=        no
36 .endif
37 .include "../../mk/dlopen.buildlink3.mk"
38
39 # If we're using libltdl to provide "dlopen" functionality, then add the
40 # dependency and make sure that we link against -lltdl.
41 #
42 .if !empty(USE_LIBLTDL:M[yY][eE][sS])
43 DL_LIBS+=       -lltdl
44 .  include "../../devel/libltdl/buildlink3.mk"
45 .endif
46
47 PKG_OPTIONS_VAR=        PKG_OPTIONS.postgresql82-server
48 PKG_SUPPORTED_OPTIONS=  krb5 pam ldap
49 .include "../../databases/postgresql82/options.mk"
50
51 # PGUSER        username of the database administrator
52 # PGGROUP       group of the database administrator
53 # PGHOME        home directory of the database administrator and location of
54 #               the databases
55 #
56 PGUSER?=                pgsql
57 PGGROUP?=               pgsql
58 PGHOME?=                ${PREFIX}/${PGUSER}
59 FILES_SUBST+=           PGUSER=${PGUSER}
60 FILES_SUBST+=           PGGROUP=${PGGROUP}
61 FILES_SUBST+=           PGHOME=${PGHOME}
62 BUILD_DEFS+=            PGHOME
63
64 PKG_GROUPS_VARS+=       PGGROUP
65 PKG_USERS_VARS+=        PGUSER
66
67 PKG_GROUPS=             ${PGGROUP}
68 PKG_USERS=              ${PGUSER}:${PGGROUP}
69 PKG_GECOS.${PGUSER}=    PostgreSQL database administrator
70 PKG_HOME.${PGUSER}=     ${PGHOME}
71 PKG_SHELL.${PGUSER}=    ${SH}
72
73 RCD_SCRIPTS=            pgsql
74
75 .include "../../databases/postgresql82-client/buildlink3.mk"
76 .include "../../security/openssl/buildlink3.mk"
77
78 # Avoid conflict between "${SSLBASE}/include/openssl/des.h" and
79 # "/usr/include/crypt.h" -- we want the definitions in the former.
80 #
81 post-wrapper:
82 .if ${OPSYS} == "SunOS"
83         touch ${BUILDLINK_DIR}/include/crypt.h
84 .endif
85
86 pre-build:
87         ${RUN} ${_ULIMIT_CMD}                                           \
88         cd ${WRKSRC}/src/backend &&                                     \
89         env ${MAKE_ENV} ${MAKE_PROGRAM} ${BUILD_MAKE_FLAGS}             \
90                 ../../src/include/parser/parse.h                        \
91                 ../../src/include/utils/fmgroids.h
92         ${RUN} ${_ULIMIT_CMD}                                           \
93         cd ${WRKSRC}/src/port &&                                        \
94         env ${MAKE_ENV} ${MAKE_PROGRAM} ${BUILD_MAKE_FLAGS}
95
96 .include "../../mk/bsd.pkg.mk"