Print this page
    
Other packages up to gcc51 runtime
    
      
        | Split | 
	Close | 
      
      | Expand all | 
      | Collapse all | 
    
    
          --- old/build/perl/build.sh
          +++ new/build/perl/build.sh
   1    1  #!/usr/bin/bash
   2    2  #
   3    3  # CDDL HEADER START
   4    4  #
   5    5  # The contents of this file are subject to the terms of the
   6    6  # Common Development and Distribution License, Version 1.0 only
   7    7  # (the "License").  You may not use this file except in compliance
   8    8  # with the License.
   9    9  #
  10   10  # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
  11   11  # or http://www.opensolaris.org/os/licensing.
  12   12  # See the License for the specific language governing permissions
  13   13  # and limitations under the License.
  14   14  #
  15   15  # When distributing Covered Code, include this CDDL HEADER in each
  16   16  # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  17   17  # If applicable, add the following below this CDDL HEADER, with the
  18   18  # fields enclosed by brackets "[]" replaced with your own identifying
  19   19  # information: Portions Copyright [yyyy] [name of copyright owner]
  20   20  #
  21   21  # CDDL HEADER END
  22   22  #
  23   23  #
  24   24  # Copyright 2011-2012 OmniTI Computer Consulting, Inc.  All rights reserved.
  25   25  # Use is subject to license terms.
  26   26  #
  27   27  # We need this for the Sun assembler
  28   28  LANG=C
  29   29  export LANG
  30   30  SHELL=/usr/bin/bash
  31   31  export SHELL
  32   32  
  33   33  # Load support functions
  34   34  . ../../lib/functions.sh
  35   35  
  36   36  case $DEPVER in
  37   37      "")
  38   38          DEPVER=5.16.1
  39   39          logmsg "no version specified, using $DEPVER"
  40   40          ;;
  41   41  esac
  42   42  
  43   43  PROG=perl
  44   44  VER=$DEPVER
  45   45  NODOTVER=$(echo $DEPVER| sed -e's/\.//g;')
  46   46  PKG=runtime/perl-$NODOTVER
  47   47  SUMMARY="Perl $VER Programming Language"
  48   48  DESC="$SUMMARY"
  49   49  PREFIX=/usr/perl5/${VER}
  50   50  
  51   51  BUILD_DEPENDS_IPS="text/gnu-sed"
  52   52  
  53   53  if [[ $VER == "5.8.8" ]]; then
  54   54      PATCHDIR="patches-5.8.8"
  55   55  fi
  56   56  
  57   57  catalog() {
  58   58      pushd $DESTDIR > /dev/null
  59   59      find . | cut -c3- > $TMPDIR/$1
  60   60      popd > /dev/null
  61   61  }
  62   62  build_mogs() {
  63   63      pushd $TMPDIR/$BUILDDIR > /dev/null
  64   64      ./miniperl $SRCDIR/make_mog.pl $TMPDIR $DESTDIR
  65   65      cat $TMPDIR/nodocs.mog $TMPDIR/no64.mog > $TMPDIR/perl.mog
  66   66      cat $TMPDIR/no32.mog $TMPDIR/no64.mog > $TMPDIR/perl-docs.mog
  67   67      cat $TMPDIR/no32.mog $TMPDIR/nodocs.mog > $TMPDIR/perl-64.mog
  68   68      popd > /dev/null
  69   69  }
  70   70  links() {
  71   71      mkdir -p $DESTDIR/usr/bin
  72   72      for firstclass in perl perldoc cpan
  73   73      do
  74   74          ln -s ../perl5/${VER}/bin/$firstclass $DESTDIR/usr/bin/$firstclass
  75   75      done
  76   76      mkdir -p $DESTDIR/usr/perl5/bin
  77   77      ln -s ../${VER}/bin/perl $DESTDIR/usr/perl5/bin/perl
  78   78  }
  79   79  
  80   80  build32() {
  81   81      pushd $TMPDIR/$BUILDDIR > /dev/null
  82   82      logmsg "Building 32-bit"
  83   83      logmsg "--- make (dist)clean"
  84   84      logcmd make distclean || \
  85   85          logmsg "--- *** WARNING *** make (dist)clean Failed"
  86   86      logmsg "--- configure (32-bit)"
  87   87      logcmd $SHELL Configure -Dusethreads -Duseshrplib -Dusemultiplicity -Duselargefiles \
  88   88          -Duse64bitint -Dmyhostname="localhost" \
  89   89          -Dcc=gcc -Dld=/usr/ccs/bin/ld -Dccflags="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TS_ERRNO" \
  90   90          -Doptimize="-O3" \
  91   91          -Dvendorprefix=${PREFIX} -Dprefix=${PREFIX} \
  92   92          -Dbin=${PREFIX}/bin/$ISAPART \
  93   93          -Dsitebin=${PREFIX}/bin/$ISAPART \
  94   94          -Dvendorbin=${PREFIX}/bin/$ISAPART \
  95   95          -Dscriptdir=${PREFIX}/bin \
  96   96          -Dsitescript=${PREFIX}/bin \
  97   97          -Dvendorscript=${PREFIX}/bin \
  98   98          -Dprivlib=${PREFIX}/lib \
  99   99          -Dsitelib=/usr/perl5/site_perl/${VER} \
 100  100          -Dvendorlib=/usr/perl5/vendor_perl/${VER} \
 101  101          -des || \
 102  102      logerr "--- Configure failed"
 103  103      gsed -i 's/-fstack-protector//g;' config.sh
 104  104      logmsg "--- make"
 105  105      logcmd gmake -j 8 || \
 106  106      logcmd gmake || \
 107  107          logerr "--- Make failed"
 108  108      #logmsg "--- make test"
 109  109      #logcmd gmake test || \
 110  110      #    logerr "--- Make test failed"
 111  111      logmsg "--- make install"
 112  112      logcmd gmake install DESTDIR=${DESTDIR} || \
 113  113          logerr "--- Make install failed"
 114  114      # We make the isastubs after 32bit so we can seem them in the catalog
 115  115      make_isa_stub
 116  116  
 117  117      catalog perl.32.bit || logerr "Failed to catalog 32bit install"
 118  118      popd > /dev/null
 119  119  }
 120  120  
 121  121  build64() {
 122  122      pushd $TMPDIR/$BUILDDIR > /dev/null
 123  123      logmsg "Building 64-bit"
 124  124      logmsg "--- make (dist)clean"
 125  125      logcmd make distclean || \
 126  126          logmsg "--- *** WARNING *** make (dist)clean Failed"
 127  127      logmsg "--- configure (64-bit)"
 128  128      logcmd $SHELL Configure -Dusethreads -Duseshrplib -Dusemultiplicity -Duselargefiles \
 129  129          -Duse64bitint -Dmyhostname="localhost" \
 130  130          -Dcc=gcc -Dld=/usr/ccs/bin/ld -Dccflags="-D_LARGEFILE64_SOURCE -m64 -D_TS_ERRNO" \
 131  131          -Dlddlflags="-G -64" \
 132  132          -Dldflags="" \
 133  133          -Doptimize="-O3" \
 134  134          -Dvendorprefix=${PREFIX} -Dprefix=${PREFIX} \
 135  135          -Dbin=${PREFIX}/bin/$ISAPART64 \
 136  136          -Dsitebin=${PREFIX}/bin/$ISAPART64 \
 137  137          -Dvendorbin=${PREFIX}/bin/$ISAPART64 \
 138  138          -Dscriptdir=${PREFIX}/bin \
 139  139          -Dsitescript=${PREFIX}/bin \
 140  140          -Dvendorscript=${PREFIX}/bin \
 141  141          -Dprivlib=${PREFIX}/lib \
 142  142          -Dsitelib=/usr/perl5/site_perl/${VER} \
 143  143          -Dvendorlib=/usr/perl5/vendor_perl/${VER} \
 144  144          -des || \
 145  145      logerr "--- Configure failed"
 146  146      gsed -i 's/-fstack-protector//g;' config.sh
 147  147      gsed -i -e '/^lddlflags/{s/-G -m64//;}' config.sh
 148  148      logmsg "--- make"
 149  149      logcmd gmake -j 8 || \
 150  150      logcmd gmake || \
 151  151          logerr "--- Make failed"
 152  152      #logmsg "--- make test"
 153  153      #logcmd gmake test || \
 154  154      #    logerr "--- Make test failed"
 155  155      logmsg "--- make install"
 156  156      logcmd gmake install DESTDIR=${DESTDIR} || \
 157  157          logerr "--- Make install failed"
 158  158  
 159  159      pushd $DESTDIR/$PREFIX/bin > /dev/null
 160  160      gsed -i 's:usr/perl5/5.16.1/bin/amd64:usr/perl5/5.16.1/bin:g' \
 161  161          `find . -type f | xargs file | grep script | cut -f1 -d:`
 162  162      popd > /dev/null
 163  163      popd > /dev/null
 164  164  }
 165  165  
 166  166  init
 167  167  download_source $PROG $PROG $VER
  
    | 
      ↓ open down ↓ | 
    167 lines elided | 
    
      ↑ open up ↑ | 
  
 168  168  patch_source
 169  169  prep_build
 170  170  links
 171  171  build
 172  172  catalog perl.all.bit || logerr "Failed to catalog full install"
 173  173  build_mogs
 174  174  
 175  175  PKG=runtime/perl
 176  176  SUMMARY="Perl $VER Programming Language"
 177  177  DESC="$SUMMARY"
 178      -DEPENDS_IPS="system/library/g++-4-runtime system/library/math system/library"
      178 +DEPENDS_IPS="system/library/g++-5-runtime system/library/math system/library"
 179  179  make_package $TMPDIR/perl.mog
 180  180  
 181  181  PKG=runtime/perl/manual
 182  182  SUMMARY="Perl $VER Programming Language Docs"
 183  183  DESC="$SUMMARY"
 184  184  DEPENDS_IPS="=runtime/perl@${VER},5.11-${PVER} runtime/perl@${VER},5.11-${PVER}"
 185  185  make_package $TMPDIR/perl-docs.mog
 186  186  
 187  187  PKG=runtime/perl-64
 188  188  SUMMARY="Perl $VER Programming Language (64-bit)"
 189  189  DESC="$SUMMARY"
 190  190  DEPENDS_IPS="=runtime/perl@${VER},5.11-${PVER} runtime/perl@${VER},5.11-${PVER}"
 191  191  make_package $TMPDIR/perl-64.mog
 192  192  
 193  193  clean_up
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX