Garrett Cooper wrote:

>    Every time you run make install, portmaster, or portupgrade, there's
> a lot of stuff going on behind the scenes. One of the things involved is
> installing package information in /var/db/pkg. That's where pkg_version
> gets its information from, along with portmaster (AFAIK) and the
> makefiles for ports (for sure).

Garrett's right on the mark in this post, so I'll just confirm that
this is what portmaster does:

1. port_ver=`make -V PKGNAME`

2. Check if that is empty, and error out if it is (moved ports and
other edge cases are handled elsewhere already).

3. If the port version from the Makefile matches what's installed,
check to see if it's a forced upgrade, and if not cache the fact that
it's up to date.

4. case `pkg_version -t $1 $port_ver` in
   \<)     do_update=yes ;;
   =)      ;;      # Should not be reached
   *) if [ -n "$VERBOSE" ]; then
         echo "  ===>>> Port version $port_ver does not"
         echo "  ===>>> seem newer than installed $1"
      fi
           ;;
   esac

hth,

Doug

-- 

    This .signature sanitized for your protection
_______________________________________________
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to