def version_cmp(version, version_compare):
    """
    Compares the given version string against a compare string
    that may contain wildcard values.

    This way it's possible to compare it against version ranges
    defined in the form of wildcard values.

    :type version: String
    :param version: The base version string to be verified
    by the comparison.
    :type version_compare: String
    :param version_compare: The compare version string to be used
    as reference in the comparison (may contain wildcard values).
    :rtype: bool
    :return: The result of the version string comparison (includes
    wildcard comparison).
    """
    major, medium, minor = version.split('.')
    major_compare, medium_compare, minor_compare = version_compare.split('.')
    if not major_compare == 'x' and not major == major_compare:
        return False
    if not medium_compare == 'x' and not medium == medium_compare:
        return False
    if not minor_compare == 'x' and not minor == minor_compare:
        return False
    return True
