1 #!/usr/bin/bash
   2 #
   3 # CDDL HEADER START
   4 #
   5 # The contents of this file are subject to the terms of the
   6 # Common Development and Distribution License, Version 1.0 only
   7 # (the "License").  You may not use this file except in compliance
   8 # with the License.
   9 #
  10 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
  11 # or http://www.opensolaris.org/os/licensing.
  12 # See the License for the specific language governing permissions
  13 # and limitations under the License.
  14 #
  15 # When distributing Covered Code, include this CDDL HEADER in each
  16 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  17 # If applicable, add the following below this CDDL HEADER, with the
  18 # fields enclosed by brackets "[]" replaced with your own identifying
  19 # information: Portions Copyright [yyyy] [name of copyright owner]
  20 #
  21 # CDDL HEADER END
  22 #
  23 #
  24 # Copyright 2011-2012 OmniTI Computer Consulting, Inc.  All rights reserved.
  25 # Use is subject to license terms.
  26 #
  27 # Load support functions
  28 . ../../lib/functions.sh
  29 
  30 PROG=libxml2        # App name
  31 VER=2.9.1           # App version
  32 PKG=library/libxml2 # Package name (without prefix)
  33 SUMMARY="$PROG - XML C parser and toolkit"
  34 DESC="$SUMMARY"
  35 
  36 DEPENDS_IPS="compress/xz@5.0 system/library/gcc-5-runtime library/zlib@1.2.8"
  37 BUILD_DEPENDS_IPS="$DEPENDS_IPS developer/sunstudio12.1"
  38 
  39 fix_python_install() {
  40     logcmd mkdir -p $DESTDIR/usr/lib/python2.6/vendor-packages
  41     logcmd mv $DESTDIR/usr/lib/python2.6/site-packages/* $DESTDIR/usr/lib/python2.6/vendor-packages/ || logerr "failed relocating python install"
  42     logcmd rm -f $DESTDIR/usr/lib/python2.6/vendor-packages/64/drv_libxml2.py
  43     logcmd rm -rf $DESTDIR/usr/lib/python2.6/site-packages || logerr "failed removing bad python install"
  44     logcmd rm -rf $DESTDIR/usr/include/amd64 || logerr "failed removing bad includes install"
  45 }
  46 
  47 install_license(){
  48     logcmd cp $TMPDIR/$BUILDDIR/COPYING $DESTDIR/license
  49 }
  50 
  51 make_prog64() {
  52     logcmd perl -pi -e 's#(\$CC.*\$compiler_flags)#$1 -nostdlib#g;' libtool ||
  53         logerr "libtool patch failed"
  54     logcmd gmake || logerr "Make failed"
  55 }
  56 
  57 make_prog32() {
  58     logcmd perl -pi -e 's#(\$CC.*\$compiler_flags)#$1 -nostdlib#g;' libtool ||
  59         logerr "libtool patch failed"
  60     logcmd gmake || logerr "Make failed"
  61 }
  62 
  63 make_install64() {
  64     logmsg "--- make install"
  65     logcmd perl -pi -e 's#(\/site-packages)#$1\/64#g;' python/.libs/libxml2mod.la ||
  66         logerr "libtool libxml2mod.la patch failed"
  67     logcmd perl -pi -e 's#(\/site-packages)#$1\/64#g;' python/libxml2mod.la ||
  68         logerr "libtool libxml2mod.la patch failed"
  69 
  70     logcmd perl -pi -e 's#(\/site-packages)#$1\/64#g;' python/.libs/libxml2mod.lai ||
  71         logerr "libtool libxml2mod.la patch failed"
  72 
  73     logcmd $MAKE DESTDIR=${DESTDIR} \
  74         PYTHON_SITE_PACKAGES=/usr/lib/python2.6/site-packages/64 \
  75         install || \
  76         logerr "--- Make install failed"
  77 }
  78 
  79 init
  80 download_source $PROG $PROG $VER
  81 patch_source
  82 prep_build
  83 build
  84 make_lintlibs xml2 /usr/lib /usr/include/libxml2 "libxml/*.h"
  85 fix_python_install
  86 make_isa_stub
  87 install_license
  88 make_package
  89 clean_up