usr/src/cmd/postgres/postgresql-8.4/Makefile.sfw
author Cyril Plisko <cyril.plisko@grigale.com>
Mon, 08 Feb 2010 12:51:29 +0200
changeset 6 1fb1123973f8
parent 1 37d545eabfea
child 15 24b3ef38fbcd
permissions -rw-r--r--
Import sfw build 132 Bugs Fixed ---------- 6802880 Add NTLM support to fetchmail 6825333 Update fetchmail to version 6.3.13 6857014 Update MySQL in Nevada to version 5.1.37 6857426 Desire to have gnuplot in Solaris WOS 6892501 Bad build of mysql: reproducible segfault on SUNWmysql, not found in mysql.com-released versions 6895305 Package SUNWswig delivers python scripts with wrong interpreters path 6906268 CVE-2009-4029 - race condition vulnerability in automake 6910076 mc should use slang from proto area instead of installed system 6911348 back port pdo race bug for opensolaris 6911349 deliver nsapi extension within php for opensolaris 6911952 logilab-common and logilab-astng do not build correctly in OpenSolaris 6912082 Update check-deps.pl to version 2009-12-18 6914260 update default copyright to 2010 6915019 SFW build issues with python2.6 as the default 6915404 back port nsapi optimization patch for opensolaris 6915651 Regression in libexpat may break XML parser

#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License (the "License").
# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
# If applicable, add the following below this CDDL HEADER, with the
# fields enclosed by brackets "[]" replaced with your own identifying
# information: Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#

#
# Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
# Use is subject to license terms.
#
#ident	"@(#)Makefile.sfw	1.2	10/01/08 SMI"
#

include ../../Makefile.cmd

VER =		$(COMPONENT_NAME:sh)-$(COMPONENT_VERSION:sh)
VER64 = 	$(VER)-64
TARBALL =	$(VER).tar.bz2
PGMAJVER =	`echo $(COMPONENT_VERSION:sh) | cut -d. -f-2`
PATCHES:sh =	echo Patches/*.patch

# We disable rpath for all, because libpq is finally in /usr/lib.
# But we need still set rpath for libecpg. We need to patch libecpg
# Makefile separately.

CONFIGURE_OPTIONS = --prefix=/usr/postgres/$(PGMAJVER)
CONFIGURE_OPTIONS += --exec-prefix=/usr/postgres/$(PGMAJVER)
CONFIGURE_OPTIONS += --datadir=/usr/postgres/$(PGMAJVER)/share
CONFIGURE_OPTIONS += --sysconfdir=/etc/postgres
CONFIGURE_OPTIONS += --mandir=/usr/postgres/$(PGMAJVER)/man
CONFIGURE_OPTIONS += --includedir=/usr/postgres/$(PGMAJVER)/include
CONFIGURE_OPTIONS += --sharedstatedir=/var/postgres/$(PGMAJVER)
CONFIGURE_OPTIONS += --localstatedir=/var/postgres/$(PGMAJVER)
CONFIGURE_OPTIONS += --localedir=/usr/share/locale
CONFIGURE_OPTIONS += --docdir=/usr/postgres/$(PGMAJVER)/doc
CONFIGURE_OPTIONS += --htmldir=/usr/postgres/$(PGMAJVER)/doc
CONFIGURE_OPTIONS += --enable-nls
CONFIGURE_OPTIONS += --with-system-tzdata=/usr/share/lib/zoneinfo
CONFIGURE_OPTIONS += --with-tcl
CONFIGURE_OPTIONS += --with-python
CONFIGURE_OPTIONS += --with-pam
CONFIGURE_OPTIONS += --with-openssl
CONFIGURE_OPTIONS += --with-libedit-preferred
CONFIGURE_OPTIONS += --with-libxml
CONFIGURE_OPTIONS += --with-libxslt
CONFIGURE_OPTIONS += --with-gssapi
CONFIGURE_OPTIONS += --enable-thread-safety
CONFIGURE_OPTIONS += --enable-dtrace
CONFIGURE_OPTIONS += --enable-integer-datetimes
CONFIGURE_OPTIONS += --disable-rpath
CONFIGURE_OPTIONS += --with-includes=$(ROOT)/usr/include
CONFIGURE_OPTIONS += --with-tclconfig=$(ROOT)/usr/lib

CONFIGURE_OPTIONS32 = $(CONFIGURE_OPTIONS)
CONFIGURE_OPTIONS32 += --with-perl
CONFIGURE_OPTIONS32 += --bindir=/usr/postgres/$(PGMAJVER)/bin
CONFIGURE_OPTIONS32 += --libexecdir=/usr/postgres/$(PGMAJVER)/bin
CONFIGURE_OPTIONS32 += --sbindir=/usr/postgres/$(PGMAJVER)/bin
CONFIGURE_OPTIONS32 += --libdir=/usr/postgres/$(PGMAJVER)/lib
CONFIGURE_OPTIONS32 += --with-libs=$(ROOT)/lib:$(ROOT)/usr/lib:/usr/lib

CONFIGURE_OPTIONS64 = $(CONFIGURE_OPTIONS)
CONFIGURE_OPTIONS64 += --bindir=/usr/postgres/$(PGMAJVER)/bin/$(MACH64)
CONFIGURE_OPTIONS64 += --libexecdir=/usr/postgres/$(PGMAJVER)/bin/$(MACH64)
CONFIGURE_OPTIONS64 += --sbindir=/usr/postgres/$(PGMAJVER)/bin/$(MACH64)
CONFIGURE_OPTIONS64 += --libdir=/usr/postgres/$(PGMAJVER)/lib/$(MACH64)
CONFIGURE_OPTIONS64 += --with-libs=$(ROOT)/lib/$(MACH64):$(ROOT)/usr/lib/$(MACH64):/usr/lib/$(MACH64)

# We need /usr/sbin for dtrace
SFW_PATH="$(PATH):/usr/sbin"
CFLAGS_COM =-erroff=E_STATEMENT_NOT_REACHED
TARGET_ENV +=   CC="$(CC)"
TARGET_ENV +=   LD_OPTIONS="-M $(SRC)/cmd/mapfile_noexstk"
TARGET_ENV +=   MAKE="$(GMAKE)"
TARGET_ENV +=   INSTALL="$(INSTALL_PROTO)"
TARGET_ENV +=   PATH="$(SFW_PATH)"

TARGET_ENV32 = $(TARGET_ENV)
TARGET_ENV32 += PYTHON="$(PYTHON24)"
TARGET_ENV32 += CFLAGS="$(CFLAGS) $(CFLAGS_COM)"

TARGET_ENV64 = $(TARGET_ENV)
TARGET_ENV64 += PYTHON="$(PYTHON24_64)"
TARGET_ENV64 += CFLAGS="$(CFLAGS64) $(CFLAGS_COM)"

all:=           TARGET = all
install:=       TARGET = install

all: pg32all pg64all

pg32all: pg32 pg32contrib

pg64all: pg64 pg64contrib

pg32: $(VER)/config.status
	(cd $(VER); env - $(GMAKE) $(TARGET) PATH="$(SFW_PATH)")

pg32contrib: pg32
	(cd $(VER)/contrib; env - $(GMAKE) $(TARGET) PATH="$(SFW_PATH)")

pg64: $(VER64)/config.status
	(cd $(VER64); env - $(GMAKE) $(TARGET) PATH="$(SFW_PATH)")

pg64contrib: pg64
	(cd $(VER64)/contrib; env - $(GMAKE) $(TARGET) PATH="$(SFW_PATH)")

install: install-protofix

install-target: pg32install pg64install

pg32install: $(VER)/config.status
	(cd $(VER); env - $(GMAKE) $(TARGET) DESTDIR=$(ROOT) PATH="$(SFW_PATH)")
	(cd $(VER)/contrib; env - $(GMAKE) $(TARGET) DESTDIR=$(ROOT) PATH="$(SFW_PATH)")
	(cd $(VER)/src/test/regress; env - $(GMAKE) install-tests DESTDIR=$(ROOT) PATH="$(SFW_PATH)")

	$(SH) ./install-sfw ${PGMAJVER} ${VER}

pg64install: $(VER64)/config.status
	for SRCDIR in src config contrib; do\
		(cd $(VER64)/$${SRCDIR}; env - $(GMAKE) $(TARGET) DESTDIR=$(ROOT) PATH="$(SFW_PATH)")\
	done
	(cd $(VER64)/src/test/regress; env - $(GMAKE) install-lib DESTDIR=$(ROOT) PATH="$(SFW_PATH)")
	MACH64=$(MACH64) $(SH) ./install-sfw-64 ${PGMAJVER} ${VER}

install-protofix: install-target
	for pkg in $(COMPONENT_PACKAGES:sh); do \
		$(SRC)/tools/protofix --pkg $$pkg --perm ; \
	done
        
$(VER)/config.status: $(VER)/.patched
	(cd $(VER) ; env - ./configure $(CONFIGURE_OPTIONS32) $(TARGET_ENV32))

$(VER64)/config.status: $(VER64)/.patched
	(cd $(VER64) ; env - ./configure $(CONFIGURE_OPTIONS64) $(TARGET_ENV64))

clean:
	-rm -rf $(VER)
	-rm -rf $(VER64)

include ../../Makefile.targ

FRC: