639 DEPTYPE="optional"
640 i=${i:1}
641 ;;
642 \-)
643 DEPTYPE="exclude"
644 i=${i:1}
645 ;;
646 esac
647 echo "depend type=$DEPTYPE fmri=${i}" >> $MY_MOG_FILE
648 done
649 fi
650 if [[ -f $SRCDIR/local.mog ]]; then
651 LOCAL_MOG_FILE=$SRCDIR/local.mog
652 fi
653 logmsg "--- Applying transforms"
654 $PKGMOGRIFY $P5M_INT $MY_MOG_FILE $GLOBAL_MOG_FILE $LOCAL_MOG_FILE $* > $P5M_INT.stage1
655 if [[ -z "$NO_AUTO_DEPENDS" ]]; then
656 $PKGDEPEND generate -d $DESTDIR $P5M_INT.stage1 > $P5M_INT.dep
657 $PKGDEPEND resolve $P5M_INT.dep
658 cat $P5M_INT.dep.res >> $P5M_INT.stage1
659 # Use a "require" dependency on the 'entire' metapackage so that
660 # we don't let a later version for an unsupported early OmniOS install.
661 # For example:
662 # foo@1.9-0.151006 exists.
663 # We update it to:
664 # foo@1.10-0.151014
665 # and in both cases make it *require* entire@11-0.151XXX as appropriate.
666 # So foo@1.10 won't install on any OmniOS older than r151014.
667 # This used to be *incorporate* but that put both a floor AND a ceiling
668 # on the revision of OmniOS, and having just a floor is sufficient
669 # thanks to illumos's versioned libraries and backward compatibility.
670 echo "depend fmri=pkg:/entire@11-$PVER type=require" >> $P5M_INT.stage1
671 fi
672 $PKGFMT -u < $P5M_INT.stage1 > $P5M_FINAL
673 logmsg "--- Publishing package to $PKGSRVR"
674 if [[ -z "$BATCH" ]]; then
675 ask_to_continue "Last chance to sanity-check before publication! "
676 fi
677 if [[ -n "$DESTDIR" ]]; then
678 logcmd $PKGSEND -s $PKGSRVR publish -d $DESTDIR -d $TMPDIR/$BUILDDIR \
679 -d $SRCDIR -T \*.py $P5M_FINAL || \
680 logerr "------ Failed to publish package"
681 else
682 # If we're a metapackage (no DESTDIR) then there are no directories to check
683 logcmd $PKGSEND -s $PKGSRVR publish $P5M_FINAL || \
684 logerr "------ Failed to publish package"
685 fi
686 logmsg "--- Published $FMRI"
687 }
688
689 #############################################################################
690 # Make isaexec stub binaries
|
639 DEPTYPE="optional"
640 i=${i:1}
641 ;;
642 \-)
643 DEPTYPE="exclude"
644 i=${i:1}
645 ;;
646 esac
647 echo "depend type=$DEPTYPE fmri=${i}" >> $MY_MOG_FILE
648 done
649 fi
650 if [[ -f $SRCDIR/local.mog ]]; then
651 LOCAL_MOG_FILE=$SRCDIR/local.mog
652 fi
653 logmsg "--- Applying transforms"
654 $PKGMOGRIFY $P5M_INT $MY_MOG_FILE $GLOBAL_MOG_FILE $LOCAL_MOG_FILE $* > $P5M_INT.stage1
655 if [[ -z "$NO_AUTO_DEPENDS" ]]; then
656 $PKGDEPEND generate -d $DESTDIR $P5M_INT.stage1 > $P5M_INT.dep
657 $PKGDEPEND resolve $P5M_INT.dep
658 cat $P5M_INT.dep.res >> $P5M_INT.stage1
659 # Use an "optional" dependency on the 'entire' metapackage so that
660 # we don't let a later version for an unsupported early OmniOS install.
661 # For example:
662 # foo@1.9-0.151006 exists.
663 # We update it to:
664 # foo@1.10-0.151014
665 # and in both cases make it *lock* to entire@11-0.151XXX as appropriate.
666 # So foo@1.10 won't install on any OmniOS older than r151014.
667 # This used to be *incorporate* but that put both a floor AND a ceiling
668 # on the revision of OmniOS, and having just a floor is sufficient
669 # thanks to illumos's versioned libraries and backward compatibility.
670 # If a user uninstalls "entire", they go beyond the realm of support.
671 # Some users can do this safely (developers who use onu(1ONBLD), e.g.).
672 echo "depend fmri=pkg:/entire@11-$PVER type=optional" >> $P5M_INT.stage1
673 fi
674 $PKGFMT -u < $P5M_INT.stage1 > $P5M_FINAL
675 logmsg "--- Publishing package to $PKGSRVR"
676 if [[ -z "$BATCH" ]]; then
677 ask_to_continue "Last chance to sanity-check before publication! "
678 fi
679 if [[ -n "$DESTDIR" ]]; then
680 logcmd $PKGSEND -s $PKGSRVR publish -d $DESTDIR -d $TMPDIR/$BUILDDIR \
681 -d $SRCDIR -T \*.py $P5M_FINAL || \
682 logerr "------ Failed to publish package"
683 else
684 # If we're a metapackage (no DESTDIR) then there are no directories to check
685 logcmd $PKGSEND -s $PKGSRVR publish $P5M_FINAL || \
686 logerr "------ Failed to publish package"
687 fi
688 logmsg "--- Published $FMRI"
689 }
690
691 #############################################################################
692 # Make isaexec stub binaries
|