install python config
Usable by 3rd party modules. Fix python3 stuff
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@ -11,3 +11,4 @@ dbd
|
||||
python*
|
||||
_build
|
||||
envPaths
|
||||
configure/os
|
||||
|
@ -2,19 +2,27 @@ PYMODULE ?= YES
|
||||
|
||||
ifneq ($(T_A),)
|
||||
|
||||
include $(TOP)/configure/O.$(T_A)/CONFIG_PY
|
||||
-include $(dir $(lastword $(MAKEFILE_LIST)))/os/CONFIG_PY.$(EPICS_HOST_ARCH).Common
|
||||
-include $(dir $(lastword $(MAKEFILE_LIST)))/os/CONFIG_PY.Common.$(T_A)
|
||||
-include $(dir $(lastword $(MAKEFILE_LIST)))/os/CONFIG_PY.$(EPICS_HOST_ARCH).$(T_A)
|
||||
|
||||
ifneq ($(PY_OK),YES)
|
||||
$(error Unable to get python configuration)
|
||||
$(error Unable to get generated python configuration)
|
||||
endif
|
||||
|
||||
USR_CPPFLAGS += $(PY_INCDIRS:%=-I%)
|
||||
USR_LDFLAGS += $(PY_LIBDIRS:%=-L%)
|
||||
PYTHON ?= python$(PY_VER)
|
||||
|
||||
SHRLIB_DEPLIB_DIRS += $(PY_LIBDIRS)
|
||||
PROD_DEPLIB_DIRS += $(PY_LIBDIRS)
|
||||
|
||||
INCLUDES += $(PY_INCDIRS:%=-I%)
|
||||
|
||||
ifeq ($(HAVE_NUMPY),YES)
|
||||
USR_CPPFLAGS += -DHAVE_NUMPY
|
||||
TARGET_CPPFLAGS += -DHAVE_NUMPY
|
||||
endif
|
||||
|
||||
LIB_SYS_LIBS += python$(PY_VER)
|
||||
LIB_SYS_LIBS += python$(PY_LD_VER)
|
||||
PROD_SYS_LIBS += python$(PY_LD_VER)
|
||||
|
||||
PY_INSTALL_DIR = $(INSTALL_LOCATION)/python$(PY_VER)/$(T_A)
|
||||
|
||||
|
@ -32,4 +32,6 @@ CHECK_RELEASE = YES
|
||||
# take effect.
|
||||
#IOCS_APPL_TOP = </IOC/path/to/application/top>
|
||||
|
||||
# Module will be build against this version of the
|
||||
# Python interpreter
|
||||
PYTHON ?= python
|
||||
|
@ -3,14 +3,19 @@ TOP=..
|
||||
include $(TOP)/configure/CONFIG
|
||||
|
||||
TARGETS = $(CONFIG_TARGETS)
|
||||
CONFIGS += $(subst ../,,$(wildcard $(CONFIG_INSTALLS)))
|
||||
|
||||
TARGETS += CONFIG_PY RULES_PY
|
||||
ifdef T_A
|
||||
CONFIGS = CONFIG_PY RULES_PY os/CONFIG_PY.Common.$(T_A)
|
||||
endif
|
||||
|
||||
include $(TOP)/configure/RULES
|
||||
|
||||
CONFIG_PY: $(TOP)/makehelper.py
|
||||
os/CONFIG_PY.Common.%: $(TOP)/makehelper.py
|
||||
[ -d $(dir $@) ] || $(MKDIR) $(dir $@)
|
||||
$(PYTHON) $< $@
|
||||
|
||||
RULES_PY: ../RULES_PY
|
||||
install -m644 $< $@
|
||||
realclean:: py_clean
|
||||
clean:: py_clean
|
||||
|
||||
py_clean:
|
||||
$(RMDIR) os
|
||||
|
@ -10,23 +10,23 @@ include $(TOP)/configure/CONFIG_PY
|
||||
#=============================
|
||||
# Build the IOC application
|
||||
|
||||
LIBRARY = pyDevSup$(PY_VER)
|
||||
LIBRARY = pyDevSup$(PY_LD_VER)
|
||||
|
||||
SHRLIB_VERSION = 0
|
||||
|
||||
DBD += pyDevSup.dbd
|
||||
|
||||
pyDevSup$(PY_VER)_SYS_LIBS += python$(PY_VER)
|
||||
pyDevSup$(PY_LD_VER)_SYS_LIBS += python$(PY_LD_VER)
|
||||
|
||||
setup_CPPFLAGS += -DXEPICS_ARCH=\"$(T_A)\"
|
||||
setup_CPPFLAGS += -DXPYDEV_BASE=\"$(abspath $(INSTALL_LOCATION))\"
|
||||
setup_CPPFLAGS += -DXEPICS_BASE=\"$(EPICS_BASE)\"
|
||||
setup_CPPFLAGS += -DPYDIR=\"python$(PY_VER)\"
|
||||
|
||||
pyDevSup$(PY_VER)_SRCS += setup.c
|
||||
pyDevSup$(PY_VER)_SRCS += dbrec.c
|
||||
pyDevSup$(PY_VER)_SRCS += dbfield.c
|
||||
pyDevSup$(PY_VER)_SRCS += dbdset.c
|
||||
pyDevSup$(PY_LD_VER)_SRCS += setup.c
|
||||
pyDevSup$(PY_LD_VER)_SRCS += dbrec.c
|
||||
pyDevSup$(PY_LD_VER)_SRCS += dbfield.c
|
||||
pyDevSup$(PY_LD_VER)_SRCS += dbdset.c
|
||||
|
||||
|
||||
PROD_IOC = softIocPy
|
||||
@ -37,9 +37,7 @@ DBD += softIocPy.dbd
|
||||
softIocPy_DBD += base.dbd
|
||||
softIocPy_DBD += pyDevSup.dbd
|
||||
|
||||
softIocPy_LIBS += pyDevSup$(PY_VER)
|
||||
|
||||
softIocPy_SYS_LIBS += python$(PY_VER)
|
||||
softIocPy_LIBS += pyDevSup$(PY_LD_VER)
|
||||
|
||||
# softIocPy_registerRecordDeviceDriver.cpp derives from softIocPy.dbd
|
||||
softIocPy_SRCS += softIocPy_registerRecordDeviceDriver.cpp
|
||||
|
@ -36,10 +36,11 @@ except ImportError:
|
||||
incdirs = [get_python_inc()]+get_numpy_include_dirs()
|
||||
libdirs = [get_config_var('LIBDIR')]
|
||||
|
||||
print('USR_CFLAGS +=',get_config_var('BASECFLAGS'), file=out)
|
||||
print('USR_CXXFLAGS +=',get_config_var('BASECFLAGS'), file=out)
|
||||
print('TARGET_CFLAGS +=',get_config_var('BASECFLAGS'), file=out)
|
||||
print('TARGET_CXXFLAGS +=',get_config_var('BASECFLAGS'), file=out)
|
||||
|
||||
print('PY_VER :=',get_config_var('VERSION'), file=out)
|
||||
print('PY_LD_VER :=',get_config_var('LDVERSION') or get_config_var('VERSION'), file=out)
|
||||
print('PY_INCDIRS :=',' '.join(incdirs), file=out)
|
||||
print('PY_LIBDIRS :=',' '.join(libdirs), file=out)
|
||||
print('HAVE_NUMPY :=',have_np, file=out)
|
||||
|
Reference in New Issue
Block a user