2 # This file and its contents are supplied under the terms of the
3 # Common Development and Distribution License ("CDDL"). You may
4 # only use this file in accordance with the terms of the CDDL.
6 # A full copy of the text of the CDDL should have accompanied this
7 # source. A copy of the CDDL is also available via the Internet at
8 # http://www.illumos.org/license/CDDL.
12 # Copyright 2012-2013, EveryCity Ltd. All rights reserved.
13 # Copyright 2019 Alexander Pyhalov
14 # Copyright 2019 Michal Nowak
15 # Copyright 2021 Gary Mills
20 include ..
/..
/..
/make-rules
/shared-macros.mk
22 COMPONENT_NAME
= postgresql
23 COMPONENT_MJR_VERSION
= 12
24 COMPONENT_MNR_VERSION
= 20
25 COMPONENT_VERSION
= $(COMPONENT_MJR_VERSION
).
$(COMPONENT_MNR_VERSION
)
26 COMPONENT_SRC
= $(COMPONENT_NAME
)-$(COMPONENT_VERSION
)
27 COMPONENT_ARCHIVE
= $(COMPONENT_SRC
).
tar.bz2
28 COMPONENT_ARCHIVE_HASH
= sha256
:2d543af3009fec7fd5af35f7a70c95085d3eef6b508e517aa9493e99b15e9ea9
29 COMPONENT_ARCHIVE_URL
= https
://ftp.postgresql.org
/pub
/source
/v
$(COMPONENT_VERSION
)/$(COMPONENT_ARCHIVE
)
30 COMPONENT_PROJECT_URL
= https
://www.postgresql.org
32 TEST_TARGET
= $(TEST_64
)
33 include $(WS_MAKE_RULES
)/common.mk
35 # Missing files in build dir for configure without this.
36 COMPONENT_PRE_CONFIGURE_ACTION
= ($(CLONEY
) $(SOURCE_DIR
) $(@D
))
38 CONFIGURE_SCRIPT
= $(@D
)/configure
40 CONFIGURE_OPTIONS
= --prefix=/usr
/postgres
/$(COMPONENT_MJR_VERSION
)
41 CONFIGURE_OPTIONS
+= --exec-prefix
=/usr
/postgres
/$(COMPONENT_MJR_VERSION
)
42 CONFIGURE_OPTIONS
+= --datadir=/usr
/postgres
/$(COMPONENT_MJR_VERSION
)/share
43 CONFIGURE_OPTIONS
+= --sysconfdir
=/etc
/postgres
/$(COMPONENT_MJR_VERSION
)
44 CONFIGURE_OPTIONS
+= --mandir=/usr
/postgres
/$(COMPONENT_MJR_VERSION
)/man
45 CONFIGURE_OPTIONS
+= --includedir=/usr
/postgres
/$(COMPONENT_MJR_VERSION
)/include
46 CONFIGURE_OPTIONS
+= --sharedstatedir
=/var
/postgres
/$(COMPONENT_MJR_VERSION
)
47 CONFIGURE_OPTIONS
+= --localstatedir
=/var
/postgres
/$(COMPONENT_MJR_VERSION
)
48 CONFIGURE_OPTIONS
+= --localedir
=/usr
/share
/locale
49 CONFIGURE_OPTIONS
+= --docdir
=/usr
/postgres
/$(COMPONENT_MJR_VERSION
)/doc
50 CONFIGURE_OPTIONS
+= --htmldir
=/usr
/postgres
/$(COMPONENT_MJR_VERSION
)/doc
51 CONFIGURE_OPTIONS
+= --enable-nls
52 CONFIGURE_OPTIONS
+= --with-system-tzdata
=/usr
/share
/lib
/zoneinfo
53 CONFIGURE_OPTIONS
.64 += --with-tcl
54 CONFIGURE_OPTIONS
.64 += --with-python
55 CONFIGURE_OPTIONS
.64 += --with-pam
56 CONFIGURE_OPTIONS
+= --with-openssl
57 CONFIGURE_OPTIONS
+= --with-libedit-preferred
58 CONFIGURE_OPTIONS
+= --with-libxml
59 CONFIGURE_OPTIONS
.64 += --with-libxslt
60 CONFIGURE_OPTIONS
+= --with-gssapi
61 CONFIGURE_OPTIONS
+= --enable-thread-safety
62 CONFIGURE_OPTIONS
+= --enable-dtrace
63 CONFIGURE_OPTIONS
+= --enable-integer-datetimes
64 CONFIGURE_OPTIONS
+= --with-includes
=/usr
/include
65 CONFIGURE_OPTIONS
+= --with-tclconfig
=/usr
/lib
66 CONFIGURE_OPTIONS
.64 += --with-perl
67 CONFIGURE_OPTIONS
+= --with-uuid
=e2fs
69 CONFIGURE_OPTIONS
.32 += --bindir=/usr
/postgres
/$(COMPONENT_MJR_VERSION
)/bin
/$(MACH32
)
70 CONFIGURE_OPTIONS
.32 += --libexecdir
=/usr
/postgres
/$(COMPONENT_MJR_VERSION
)/bin
/$(MACH32
)
71 CONFIGURE_OPTIONS
.32 += --sbindir
=/usr
/postgres
/$(COMPONENT_MJR_VERSION
)/bin
/$(MACH32
)
72 CONFIGURE_OPTIONS
.32 += --libdir=/usr
/postgres
/$(COMPONENT_MJR_VERSION
)/lib
73 CONFIGURE_OPTIONS
.32 += LDFLAGS
=-L
$(OPENSSL_PREFIX
)/lib
75 CONFIGURE_OPTIONS
.64 += --bindir=/usr
/postgres
/$(COMPONENT_MJR_VERSION
)/bin
76 CONFIGURE_OPTIONS
.64 += --libexecdir
=/usr
/postgres
/$(COMPONENT_MJR_VERSION
)/bin
77 CONFIGURE_OPTIONS
.64 += --sbindir
=/usr
/postgres
/$(COMPONENT_MJR_VERSION
)/bin
78 CONFIGURE_OPTIONS
.64 += --libdir=/usr
/postgres
/$(COMPONENT_MJR_VERSION
)/lib
/$(MACH64
)
79 CONFIGURE_OPTIONS
.64 += LDFLAGS
=-L
$(OPENSSL_PREFIX
)/lib
/$(MACH64
)
81 CONFIGURE_OPTIONS
+= CPPFLAGS
=-I
$(OPENSSL_PREFIX
)/include
83 CONFIGURE_OPTIONS
+= $(CONFIGURE_OPTIONS.
$(BITS
))
85 CONFIGURE_ENV
+= PYTHON
=$(PYTHON
)
86 CONFIGURE_ENV
+= PERL
=$(PERL
)
88 COMPONENT_BUILD_ENV
+= MAKELEVEL
=0
89 COMPONENT_BUILD_ENV
+= PATH
=$(PATH
)
90 COMPONENT_INSTALL_ENV
+= PATH
=$(PATH
)
92 COMPONENT_BUILD_TARGETS
= world
93 COMPONENT_INSTALL_TARGETS
= install-world
95 COMPONENT_POST_INSTALL_ACTION
.64= cd
$(BUILD_DIR_
$(BITS
))/src
/test/regress
; env
$(COMPONENT_INSTALL_ENV
) gmake
$(COMPONENT_INSTALL_ARGS
) install-lib install-tests
;
97 COMPONENT_POST_INSTALL_ACTION
+= $(COMPONENT_POST_INSTALL_ACTION.
$(BITS
))
98 COMPONENT_POST_INSTALL_ACTION
+= cd
$(PROTO_DIR
) && \
99 $(MV
) usr
/postgres
/$(COMPONENT_MJR_VERSION
)/include/pg_config.h usr
/postgres
/$(COMPONENT_MJR_VERSION
)/include/pg_config-
$(BITS
).h
&& \
100 $(MV
) usr
/postgres
/$(COMPONENT_MJR_VERSION
)/include/server
/pg_config.h usr
/postgres
/$(COMPONENT_MJR_VERSION
)/include/server
/pg_config-
$(BITS
).h
104 COMPONENT_TEST_ENV
+= PATH
=$(PATH
)
106 COMPONENT_TEST_TRANSFORMS
= \
108 '-e "s:[ \t]*[0-9]* ms::"' \
113 # Auto-generated dependencies
114 PERL_REQUIRED_PACKAGES
+= runtime
/perl
115 PYTHON_REQUIRED_PACKAGES
+= runtime
/python
116 REQUIRED_PACKAGES
+= $(OPENSSL_PKG
)
117 REQUIRED_PACKAGES
+= SUNWcs
118 REQUIRED_PACKAGES
+= database
/postgres-common
119 REQUIRED_PACKAGES
+= library
/libedit
120 REQUIRED_PACKAGES
+= library
/libxml2
121 REQUIRED_PACKAGES
+= library
/libxslt
122 REQUIRED_PACKAGES
+= library
/zlib
123 REQUIRED_PACKAGES
+= runtime
/tcl-8
124 REQUIRED_PACKAGES
+= shell/ksh93
125 REQUIRED_PACKAGES
+= system
/library
126 REQUIRED_PACKAGES
+= system
/library
/math
127 REQUIRED_PACKAGES
+= system
/library
/security
/gss