Skip to content

Commit

Permalink
fix python version detect
Browse files Browse the repository at this point in the history
  • Loading branch information
srz-zumix committed May 28, 2020
1 parent 68a605d commit 43556b8
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 9 deletions.
13 changes: 13 additions & 0 deletions utils/function.mk
@@ -0,0 +1,13 @@
#
# function.mk
#
# makefile utils functions
#
# Copyright (C) 2020, Takazumi Shirayanagi
# This software is released under the new BSD License,
# see LICENSE
#

define is_number
$(shell test '$(1)' -eq '$(1)' 2>/dev/null && echo true || echo false)
endef
36 changes: 27 additions & 9 deletions utils/python.mk
Expand Up @@ -6,30 +6,48 @@
# see LICENSE
#

UTILS_MAKEFILE_DIR := $(dir $(lastword $(MAKEFILE_LIST)))
include $(UTILS_MAKEFILE_DIR)/function.mk

PYTHON_VERSION_FULL_ := $(wordlist 2,4,$(subst ., ,$(shell python --version 2>&1)))

ifneq ($(PYTHON_VERSION_FULL_),)

PYTHON_VERSION=${PYTHON_VERSION_FULL_}
PYTHON_VERSION_MAJOR := $(word 1,${PYTHON_VERSION})
PYTHON_VERSION_MINOR := $(word 2,${PYTHON_VERSION})
PYTHON_VERSION_PATCH := $(word 3,${PYTHON_VERSION})
PYTHON_VERSION := ${PYTHON_VERSION_FULL_}

# $(warning ${PYTHON_VERSION})
PYTHON_VERSION_MAJOR_ := $(word 1,${PYTHON_VERSION})
PYTHON_VERSION_MINOR_ := $(word 2,${PYTHON_VERSION})
PYTHON_VERSION_PATCH_ := $(word 3,${PYTHON_VERSION})

else
ifeq ($(call is_number, $(PYTHON_VERSION_MAJOR_)),true)
PYTHON_VERSION_MAJOR := $(PYTHON_VERSION_MAJOR_)
endif
ifeq ($(call is_number, $(PYTHON_VERSION_MINOR_)),true)
PYTHON_VERSION_MINOR := $(PYTHON_VERSION_MINOR_)
endif
ifeq ($(call is_number, $(PYTHON_VERSION_PATCH_)),true)
PYTHON_VERSION_PATCH := $(PYTHON_VERSION_PATCH_)
endif

endif

ifndef PYTHON_VERSION_MAJOR
PYTHON_VERSION_MAJOR := 0
endif
ifndef PYTHON_VERSION_MINOR
PYTHON_VERSION_MINOR := 0
endif
ifndef PYTHON_VERSION_PATCH
PYTHON_VERSION_PATCH := 0

endif

# $(warning ${PYTHON_VERSION_MAJOR})
# $(warning ${PYTHON_VERSION_MINOR})
# $(warning ${PYTHON_VERSION_PATCH})

# 2.7 later
ifeq (1,$(shell expr \( \( $(PYTHON_VERSION_MAJOR) \> 3 \) \| \( $(PYTHON_VERSION_MAJOR) \>= 3 \& $(PYTHON_VERSION_MINOR) \>= 7 \) \)))
IUTEST_USE_PYTHON:=1
else
IUTEST_USE_PYTHON:=0
endif

$(warning ${IUTEST_USE_PYTHON})

0 comments on commit 43556b8

Please sign in to comment.