#
#
# 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 2009 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
# ident "@(#)Makefile.sfw 1.16 09/10/21 SMI"
VER=subversion-1.6.5
VERPY26=subversion-1.6.5-py26
SVN_PACKAGES=SUNWsvn SUNWsvn-java SUNWsvn-perl SUNWsvn-python
SWIGPROG=$(ROOT)/usr/bin/swig
PERL=/usr/perl5/bin/perl
GSED=/usr/bin/gsed
TOP = $(SRC)/cmd/subversion
DESTDIR = $(TOP)/proto-$(MACH)
SVN_LDFLAGS=-R/usr/lib/svn:$(APR_USR_PREFIX)/lib:$(APR_UTIL_USR_PREFIX)/lib \
-L$(ROOT)$(APR_USR_PREFIX)/lib \
-L$(ROOT)$(APR_UTIL_USR_PREFIX)/lib \
-L$(ROOT)/usr/lib \
-M $(SRC)/cmd/mapfile_noexstk \
-lsocket -lresolv -lnsl -lgen -z ignore
include ../Makefile.cmd
include $(SRC)/cmd/apache2/apache.build.env
include $(SRC)/cmd/apr/apr-1.3/apr.build.env
include $(SRC)/cmd/apr-util/apr-util-1.3/apr-util.build.env
PREFIX=/usr
PICFLAG = -KPIC -DPIC
COMPAT_VERSION=5
CFLAGS_GENERIC = -Xc -xc99=%all -features=extinl,extensions -xprefetch=auto
CFLAGS_GENERIC += -xbuiltin=%none -xnorunpath -xcsi -xinline=%auto
CFLAGS_GENERIC += -xustr=ascii_utf16_ushort -xF=%none -xthreadvar=%all
CFLAGS_GENERIC += -xspace -xldscope=symbolic -KPIC -mt -D_REENTRANT
CFLAGS_GENERIC += -D__EXTENSIONS__=1 -D_LARGEFILE_SOURCE
CFLAGS_GENERIC += -D_FILE_OFFSET_BITS=64 -D_XOPEN_SOURCE=600 -D_XPG6
CFLAGS_GENERIC += -D_POSIX_PTHREAD_SEMANTICS -D_POSIX_C_SOURCE=200112L
CFLAGS_GENERIC += -D__XOPEN_OR_POSIX -D_STRICT_STDC -D_STRICT_STDC__
CFLAGS_GENERIC += -D_STDC_C99 -D_ISOC99_SOURCE -D__C99FEATURES__ -DSOLARIS
CFLAGS_i386 = -m32 -xregs=no%frameptr -xarch=generic -xO3 -s
CFLAGS_sparc = -m32 -xmemalign=8i
CFLAGS_sparc += -xtarget=ultra2 -xarch=sparcvis -xchip=ultra2 -xO4 -s
CFLAGS = $(CFLAGS_GENERIC) $(CFLAGS_$(MACH))
CXXFLAGS_sparc = -xtarget=ultra2 -xarch=sparcvis -xchip=ultra2
CXXFLAGS_sparc += -xbuiltin=%none -xmemalign=8i $(PICFLAG) -xO4 -s
CXXFLAGS_i386 = -xregs=no%frameptr -xO3 -s -xbuiltin=%none $(PICFLAG)
CCFLAGS_GENERIC = -features=except,rtti,export,extensions,nestedaccess,tmplife,tmplrefstatic
CCFLAGS_GENERIC += -instances=global
CCFLAGS_GENERIC += -template=geninlinefuncs
CCFLAGS_GENERIC += -verbose=template
CCFLAGS_GENERIC += $(CXXFLAGS_$(MACH))
CCFLAGS_GENERIC += -xlang=c99
CCFLAGS_GENERIC += -xbuiltin=%none
CCFLAGS_GENERIC += -xinline=
CCFLAGS_GENERIC += -xspace
CCFLAGS_GENERIC += -xustr=ascii_utf16_ushort
CCFLAGS_GENERIC += -norunpath
CCFLAGS_GENERIC += -z ignore $(PICFLAG)
CCFLAGS_GENERIC += -mt -D_REENTRANT -DNDEBUG
CCFLAGS_GENERIC += -D__EXTENSIONS__
CCFLAGS_GENERIC += -D_LARGEFILE_SOURCE
CCFLAGS_GENERIC += -D_FILE_OFFSET_BITS=64
CCFLAGS_GENERIC += -D_XOPEN_SOURCE=500
CCFLAGS_GENERIC += -D_XPG5
CCFLAGS_GENERIC += -D_POSIX_PTHREAD_SEMANTICS -s
CCFLAGS = $(CCFLAGS_GENERIC) $(CXXFLAGS_$(MACH))
CPPFLAGS = -I$(ROOT)/usr/include/neon -I$(ROOT)/usr/include
LDFLAGS = -L$(ROOT)/usr/lib -L/usr/lib -R/usr/lib
LDFLAGS += -m32 -s -z ignore
PYVER24=2.4
PYVER26=2.6
PYTHON24=/usr/bin/python$(PYVER24)
PYTHON26=/usr/bin/python$(PYVER26)
PYDIR24=$(ROOTLIB)/python$(PYVER24)
PYDIR26=$(ROOTLIB)/python$(PYVER26)
PYVENDORDIR24=$(PYDIR24)/vendor-packages
PYVENDORDIR26=$(PYDIR26)/vendor-packages
PYMODS=client core delta fs ra repos wc
all: $(VER)/config.status $(VERPY26)/config.status
$(INCREFIXUP) $(VER)
$(INCREFIXUP) $(VERPY26)
( cd $(VER) ; \
$(GSED) -e "s#-I/usr/include/neon#-I$(ROOT)/usr/include/neon#g" Makefile > Makefile.sed ; \
cp -fp Makefile.sed Makefile ; \
touch -acm Makefile ; \
rm -f Makefile.sed )
( cd $(VERPY26) ; \
$(GSED) -e "s#-I/usr/include/neon#-I$(ROOT)/usr/include/neon#g" Makefile > Makefile.sed ; \
cp -fp Makefile.sed Makefile ; \
touch -acm Makefile ; \
rm -f Makefile.sed )
( cd $(VER) ; env - \
"PYVER=$(PYVER24)" \
"PYTHON=$(PYTHON24)" \
"PYDIR=$(PYDIR24)" \
"PYVENDORDIR=$(PYVENDORDIR24)" \
"PYMODS=$(PYMODS)" \
"LDFLAGS=$(LDFLAGS) $(SVN_LDFLAGS)" \
"LD_OPTIONS=$(LDFLAGS) $(SVN_LDFLAGS)" \
"SWIG_LDFLAGS=$(LDFLAGS) $(SVN_LDFLAGS)" \
CC=$(CC) CXX=$(CCC) \
"CPPFLAGS=$(CPPFLAGS)" \
"CFLAGS=$(CFLAGS)" \
"CXXFLAGS=$(CCFLAGS)" \
NEON_LIBS="-L$(ROOT)/usr/lib -lneon" \
MAKE=$(GMAKE) \
PATH=$(SFW_PATH) \
INSTALL=$(GINSTALL) \
$(GMAKE) all swig-py swig-pl javahl )
( cd $(VERPY26) ; env - \
"PYVER=$(PYVER26)" \
"PYTHON=$(PYTHON26)" \
"PYDIR=$(PYDIR26)" \
"PYVENDORDIR=$(PYVENDORDIR26)" \
"PYMODS=$(PYMODS)" \
"LDFLAGS=$(LDFLAGS) $(SVN_LDFLAGS)" \
"LD_OPTIONS=$(LDFLAGS) $(SVN_LDFLAGS)" \
"SWIG_LDFLAGS=$(LDFLAGS) $(SVN_LDFLAGS)" \
CC=$(CC) CXX=$(CCC) \
"CPPFLAGS=$(CPPFLAGS)" \
"CFLAGS=$(CFLAGS)" \
"CXXFLAGS=$(CCFLAGS)" \
NEON_LIBS="-L$(ROOT)/usr/lib -lneon" \
MAKE=$(GMAKE) \
PATH=$(SFW_PATH) \
INSTALL=$(GINSTALL) \
$(GMAKE) all swig-py )
@find . -name core -exec rm -f {} \;
_ARCH:sh=arch
PLARCH=$(_ARCH)-solaris-64int
PLVER=5.10.0
PLDIR=$(ROOT)/usr/perl5/$(PLVER)
PLVENDORDIR=$(ROOT)/usr/perl5/vendor_perl/$(PLVER)
PLVENDORARCHDIR=$(PLVENDORDIR)/$(PLARCH)
PLMODS= Fs Core Wc Client Repos Ra Delta
install: install_svn
INSTDIR=$(DESTDIR) TOP=$(TOP) $(SH) ./install-sfw
for pkg in $(SVN_PACKAGES) ; do \
$(SRC)/tools/protofix --pkg $$pkg --perm ; \
done
install_svn: all .WAIT install_perl
mkdir -p $(DESTDIR)
( cd $(VER) ; \
env - "DESTDIR=$(DESTDIR)" \
"INSTALL=$(GINSTALL)" \
"MAKE=$(GMAKE)" \
"PYVER=$(PYVER24)" \
"PYTHON=$(PYTHON24)" \
"PYDIR=$(PYDIR24)" \
"PYVENDORDIR=$(PYVENDORDIR24)" \
"PYMODS=$(PYMODS)" \
$(GMAKE) DESTDIR=$(DESTDIR) \
INSTALL=$(GINSTALL) install install-lib \
install-swig-pl-lib install-swig-py install-javahl-lib \
install-bin install-docs )
( cd $(VERPY26) ; \
env - "DESTDIR=$(DESTDIR)" \
"INSTALL=$(GINSTALL)" \
"MAKE=$(GMAKE)" \
"PYVER=$(PYVER26)" \
"PYTHON=$(PYTHON26)" \
"PYDIR=$(PYDIR26)" \
"PYVENDORDIR=$(PYVENDORDIR26)" \
"PYMODS=$(PYMODS)" \
$(GMAKE) DESTDIR=$(DESTDIR) \
INSTALL=$(GINSTALL) install-swig-py )
( cd $(VER) ; \
env - "DESTDIR=$(DESTDIR)" \
"INSTALL=$(GINSTALL)" \
"MAKE=$(GMAKE)" \
$(GMAKE) DESTDIR=$(DESTDIR) \
INSTALL=$(GINSTALL) install-javahl )
( cd $(VER) ; \
rm -f $(ROOTAPACHEMODS) ; \
env - "DESTDIR=$(DESTDIR)" \
"INSTALL=$(GINSTALL)" \
"MAKE=$(GMAKE)" \
$(GMAKE) DESTDIR=$(DESTDIR) \
INSTALL=$(GINSTALL) install-mods-shared )
install_perl:
$(PERL) -MExtUtils::Install -e \
'install({@ARGV}, '\''0'\'', 0, '\''0'\'');' \
$(VER)/subversion/bindings/swig/perl/native/blib/lib $(PLVENDORDIR) \
$(VER)/subversion/bindings/swig/perl/native/blib/arch $(PLVENDORDIR)/$(PLARCH) \
$(VER)/subversion/bindings/swig/perl/native/blib/man3 $(PLDIR)/man/man3
$(VER)/config.status: $(VER)/configure
( cd $(VER) ; env - \
"PYVER=$(PYVER24)" \
"PYTHON=$(PYTHON24)" \
"PYDIR=$(PYDIR24)" \
"PYVENDORDIR=$(PYVENDORDIR24)" \
"PYMODS=$(PYMODS)" \
"CC=$(CC)" \
"CXX=$(CCC)" \
"CPPFLAGS=$(CPPFLAGS)" \
"CFLAGS=$(CFLAGS)" \
"CXXFLAGS=$(CCFLAGS)" \
"LDFLAGS=$(LDFLAGS) $(SVN_LDFLAGS)" \
"SWIG=$(SWIGPROG)" \
"PERL=$(PERL)" \
"ROOT=$(ROOT)" \
"INSTALL=$(GINSTALL)" \
"PATH=$(SFW_PATH)" \
"MAKE=$(GMAKE)" \
"NEON_LIBS=-L$(ROOT)/usr/lib -lneon" \
./configure \
--prefix=$(PREFIX) \
--libdir=$(PREFIX)/lib/svn \
--localstatedir=/var \
--enable-shared \
--disable-static \
--disable-libtool-lock \
--disable-neon-version-check \
--disable-experimental-libtool \
--with-apxs=$(ROOT)$(APACHE_USR_PREFIX)/bin/apxs \
--with-ssl \
--with-zlib=$(ROOT)/usr \
--with-jdk=$(JAVA_ROOT) \
--with-apr=$(ROOT)$(APR_USR_PREFIX) \
--with-apr-util=$(ROOT)$(APR_UTIL_USR_PREFIX) \
--enable-nls \
--disable-mod-activation \
--enable-javahl \
--disable-static \
--enable-shared \
--with-swig \
--with-neon=$(ROOT)/usr )
$(VERPY26)/config.status: $(VERPY26)/configure
( cd $(VERPY26) ; env - \
"PYVER=$(PYVER26)" \
"PYTHON=$(PYTHON26)" \
"PYDIR=$(PYDIR26)" \
"PYVENDORDIR=$(PYVENDORDIR26)" \
"PYMODS=$(PYMODS)" \
"CC=$(CC)" \
"CXX=$(CCC)" \
"CPPFLAGS=$(CPPFLAGS)" \
"CFLAGS=$(CFLAGS)" \
"CXXFLAGS=$(CCFLAGS)" \
"LDFLAGS=$(LDFLAGS) $(SVN_LDFLAGS)" \
"SWIG=$(SWIGPROG)" \
"PERL=$(PERL)" \
"ROOT=$(ROOT)" \
"INSTALL=$(GINSTALL)" \
"PATH=$(SFW_PATH)" \
"MAKE=$(GMAKE)" \
"NEON_LIBS=-L$(ROOT)/usr/lib -lneon" \
./configure \
--prefix=$(PREFIX) \
--libdir=$(PREFIX)/lib/svn \
--localstatedir=/var \
--enable-shared \
--disable-static \
--disable-libtool-lock \
--disable-neon-version-check \
--disable-experimental-libtool \
--with-apxs=$(ROOT)$(APACHE_USR_PREFIX)/bin/apxs \
--with-ssl \
--with-zlib=$(ROOT)/usr \
--with-jdk=$(JAVA_ROOT) \
--with-apr=$(ROOT)$(APR_USR_PREFIX) \
--with-apr-util=$(ROOT)$(APR_UTIL_USR_PREFIX) \
--enable-nls \
--disable-mod-activation \
--enable-javahl \
--disable-static \
--enable-shared \
--with-swig \
--with-neon=$(ROOT)/usr )
$(VER)/configure: $(VER).tar.gz
gzip -dc $(VER).tar.gz | tar xopf -
( cd $(VER) ; \
gpatch -p0 <../$(VER).patch )
touch $(VER)/configure
chmod 0755 $(VER)/configure
chmod 0755 $(VER)
find $(VER) -type d -exec chmod 0755 {} \;
$(VERPY26)/configure: $(VER).tar.gz
mkdir -p tmp
gzip -dc $(VER).tar.gz | ( cd tmp ; $(TAR) xopf - )
mv tmp/$(VER) $(VERPY26)
rm -rf tmp
( cd $(VERPY26) ; \
gpatch -p0 <../$(VERPY26).patch )
chmod 0755 $(VERPY26)/configure
chmod 0755 $(VERPY26)
find $(VERPY26) -type d -exec chmod 0755 {} \;
clean:
-rm -rf $(VER) $(VERPY26) $(DESTDIR)
include ../Makefile.targ