components/python/astroid/Makefile
author April Chin <april.chin@oracle.com>
Wed, 18 Nov 2015 15:34:37 -0800
changeset 5107 b5545e1bba48
parent 4814 c673d998018a
child 5682 94c0ca64c022
permissions -rw-r--r--
22220352 enable system-test target for pylint 22220692 enable system-test target for logilab-common 22220459 enable system-test target for astroid
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4814
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     1
#
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     2
# CDDL HEADER START
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     3
#
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     4
# The contents of this file are subject to the terms of the
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     5
# Common Development and Distribution License (the "License").
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     6
# You may not use this file except in compliance with the License.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     7
#
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     8
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     9
# or http://www.opensolaris.org/os/licensing.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    10
# See the License for the specific language governing permissions
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    11
# and limitations under the License.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    12
#
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    13
# When distributing Covered Code, include this CDDL HEADER in each
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    14
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    15
# If applicable, add the following below this CDDL HEADER, with the
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    16
# fields enclosed by brackets "[]" replaced with your own identifying
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    17
# information: Portions Copyright [yyyy] [name of copyright owner]
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    18
#
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    19
# CDDL HEADER END
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    20
#
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    21
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    22
#
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    23
# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    24
#
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    25
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    26
include ../../../make-rules/shared-macros.mk
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    27
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    28
COMPONENT_NAME=		astroid
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    29
COMPONENT_VERSION=	1.3.6
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    30
COMPONENT_PROJECT_URL=	http://bitbucket.org/logilab/$(COMPONENT_NAME)
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    31
COMPONENT_SRC=		$(COMPONENT_NAME)-$(COMPONENT_VERSION)
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    32
COMPONENT_ARCHIVE=	$(COMPONENT_SRC).tar.gz
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    33
COMPONENT_ARCHIVE_HASH=	\
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    34
	sha256:1241ef961448c57b4616beb8dcc959724641dca1e22914663f79d67fec26f854
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    35
COMPONENT_ARCHIVE_URL=	$(call pypi_url)
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    36
COMPONENT_BUGDB=	python-mod/astroid
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    37
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    38
TPNO=			22825
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    39
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    40
# astroid depends on logilab-common, which is not Python 3 ready, so mark
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    41
# this likewise. And astroid only supports 2.7+ now.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    42
PYTHON_VERSIONS=	2.7
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    43
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    44
include $(WS_MAKE_RULES)/prep.mk
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    45
include $(WS_MAKE_RULES)/ips.mk
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    46
include $(WS_MAKE_RULES)/setup.py.mk
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    47
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    48
ASLR_MODE = $(ASLR_NOT_APPLICABLE)
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    49
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    50
# common targets
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    51
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    52
build:		$(BUILD_NO_ARCH)
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    53
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    54
install:	$(INSTALL_NO_ARCH)
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    55
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    56
# The tests are run using python 2.7 only and require that
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    57
# the python-27 package is installed (does not have to be the default python). 
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    58
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    59
# Use the python 2.7 libraries for testing.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    60
test: PYTHON_VERSION=2.7
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    61
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    62
# logilab-common is a runtime dependency of astroid,
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    63
# and we need to use its latest version from the workspace.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    64
# We can't just add its install target as a dependency here,
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    65
# so just run "gmake install" in the logilab-common component directory
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    66
# before running astroid tests.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    67
# Test case unittest_regrtest depends on the latest version of pylint from
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    68
# the workspace, so we also add pylint as a dependency here.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    69
COMPONENT_PRE_TEST_ACTION = ( $(GMAKE) -C \
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    70
	$(COMPONENT_DIR)/../logilab-common install; \
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    71
	$(GMAKE) -C $(COMPONENT_DIR)/../pylint install )
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    72
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    73
COMPONENT_TEST_ENV = PYTHONPATH=$(COMPONENT_DIR)/../logilab-common/build/prototype/$(MACH)$(PYTHON_VENDOR_PACKAGES):$(PROTO_DIR)$(PYTHON_VENDOR_PACKAGES):$(COMPONENT_DIR)/../pylint/build/prototype/$(MACH)$(PYTHON_VENDOR_PACKAGES)
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    74
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    75
# The test output contains details from each test, in whatever order they
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    76
# complete. Use nawk to extract just the sections that summarizes the test result.
5107
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
    77
COMPONENT_TEST_DIR = $(COMPONENT_SRC)/astroid/tests
4814
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    78
COMPONENT_TEST_CMD = /usr/bin/pytest-$(PYTHON_VERSION)
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    79
COMPONENT_TEST_ARGS =
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    80
COMPONENT_TEST_MASTER = $(COMPONENT_TEST_RESULTS_DIR)/results-all.master
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    81
COMPONENT_TEST_TRANSFORMER =	$(NAWK)
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    82
COMPONENT_TEST_TRANSFORMS = "'/Ran (.+) test cases/{ sub(/in(.+)\)/, \"\"); print }/All (.+) modules OK/'"
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    83
5107
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
    84
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
    85
# This modutils test should expect the logilab module to be found under the
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
    86
# standard /usr/lib/python* location when we test installed system bits,
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
    87
# the opposite of what it expects when testing built bits in the proto area.
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
    88
# Temporarily modify its expected result for system-test,
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
    89
# and restore it afterwards.
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
    90
COMPONENT_PRE_SYSTEM_TEST_ACTION += \
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
    91
	($(MV) $(COMPONENT_SRC)/astroid/tests/unittest_modutils.py $(COMPONENT_SRC)/astroid/tests/unittest_modutils.py-orig; \
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
    92
	$(GSED) -e "s/self.assertEqual(modutils.is_standard_module('logilab'), False)/self.assertEqual(modutils.is_standard_module('logilab'), True)/" $(COMPONENT_SRC)/astroid/tests/unittest_modutils.py-orig > $(COMPONENT_SRC)/astroid/tests/unittest_modutils.py)
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
    93
COMPONENT_SYSTEM_TEST_DIR = $(COMPONENT_SRC)/astroid/tests
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
    94
COMPONENT_SYSTEM_TEST_CMD = /usr/bin/pytest-$(PYTHON_VERSION)
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
    95
COMPONENT_SYSTEM_TEST_ARGS =
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
    96
COMPONENT_POST_SYSTEM_TEST_ACTION += \
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
    97
	$(MV) $(COMPONENT_SRC)/astroid/tests/unittest_modutils.py-orig $(COMPONENT_SRC)/astroid/tests/unittest_modutils.py
4814
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    98
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    99
test:		$(TEST_NO_ARCH)
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
   100
5107
b5545e1bba48 22220352 enable system-test target for pylint
April Chin <april.chin@oracle.com>
parents: 4814
diff changeset
   101
system-test:    $(SYSTEM_TEST_NO_ARCH)
4814
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
   102
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
   103
REQUIRED_PACKAGES += library/python/logilab-common-27
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
   104
REQUIRED_PACKAGES += library/python/six-27