Changeset View
Standalone View
head/devel/staf/Makefile
Property | Old Value | New Value |
---|---|---|
svn:eol-style | null | native \ No newline at end of property |
svn:keywords | null | FreeBSD=%H \ No newline at end of property |
svn:mime-type | null | text/plain \ No newline at end of property |
# Created by: Sergey Kozlov <kozlov.sergey.404@gmail.com> | |||||
# $FreeBSD$ | |||||
PORTNAME= staf | |||||
PORTVERSION= 3.4.23 | |||||
CATEGORIES= devel net | |||||
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/V${PORTVERSION} | |||||
DISTNAME= STAF${PORTVERSION:S/.//g}-src | |||||
koobs: Is there a https MASTER_SITE available? If so please add that as the primary with http:// as… | |||||
Not Done Inline ActionsYes, it has https, will fix skozlov: Yes, it has https, will fix | |||||
MAINTAINER= kozlov.sergey.404@gmail.com | |||||
COMMENT= Software Testing Automation Framework | |||||
LICENSE= EPL | |||||
LICENSE_FILE= ${WRKSRC}/LICENSE.htm | |||||
Not Done Inline ActionsDoes a license file exist in WRKSRC? If so, add LICENSE_FILE=/path/to/file koobs: Does a license file exist in WRKSRC? If so, add LICENSE_FILE=/path/to/file | |||||
Not Done Inline ActionsIt has only html version skozlov: It has only html version | |||||
Not Done Inline ActionsI suppose HTML is better than nothing, feel free to add it to LICENSE_FILE, and ask them for a plaintext one in an issue upstream ;) koobs: I suppose HTML is better than nothing, feel free to add it to LICENSE_FILE, and ask them for a… | |||||
WRKSRC= ${WRKDIR}/src | |||||
WRKSRC_SUBDIR= ${PORTNAME} | |||||
INSTALL_WRKSRC= ${WRKDIR}/rel/freebsd/staf/${STAF_BUILD_TYPE} | |||||
MAKEFILE= makefile | |||||
MAKE_ARGS= OS_NAME="freebsd" \ | |||||
CC_CC=${CXX} \ | |||||
CC_C=${CC} \ | |||||
CFLAGS="${CFLAGS}" \ | |||||
CXXFLAGS="${CXXFLAGS}" \ | |||||
LINKFLAGS="${LDFLAGS}" \ | |||||
STAF_USE_SSL=${STAF_USE_SSL} \ | |||||
STAF_USE_IPV6=${STAF_USE_IPV6} \ | |||||
BUILD_TYPE=${STAF_BUILD_TYPE} \ | |||||
PROJECTS="${STAF_PROJECTS}" | |||||
OPTIONS_DEFINE= DEBUG IPV6 OPENSSL PYTHON | |||||
OPTIONS_DEFAULT=IPV6 OPENSSL | |||||
OPTIONS_SUB= yes | |||||
DEBUG_VARS= staf_build_type=debug | |||||
DEBUG_VARS_OFF= staf_build_type=retail | |||||
IPV6_VARS= staf_use_ipv6=1 | |||||
IPV6_VARS_OFF= staf_use_ipv6="" | |||||
OPENSSL_VARS= staf_use_ssl=1 use_openssl=yes | |||||
OPENSSL_MAKE_ARGS= OPENSSL_ROOT=${OPENSSLBASE} \ | |||||
OPENSSL_LIBDIRS="${OPENSSLLIB}" \ | |||||
OPENSSL_INCLUDEDIRS=${OPENSSLINC} | |||||
OPENSSL_VARS_OFF= staf_use_ssl="" | |||||
PYTHON_USES= python:-3.4 | |||||
PYTHON_VARS= staf_projects+=python use_python=py3kplist | |||||
Not Done Inline ActionsI prefer to see OPTIONS_* blocks higher up, either before or after USE{S}_* section koobs: I prefer to see OPTIONS_* blocks higher up, either before or after USE{S}_* section | |||||
Not Done Inline ActionsWill do skozlov: Will do | |||||
PYTHON_MAKE_ARGS= PYTHON_V${PYTHON_SUFFIX}_ROOT=${LOCALBASE} \ | |||||
PYTHON_V${PYTHON_SUFFIX}_INCLUDEDIRS=${PYTHON_INCLUDEDIR} \ | |||||
PYTHON_V${PYTHON_SUFFIX}_LIBS=${PYTHON_VERSION}${PYTHON_ABIVER} \ | |||||
PYTHON_BUILD_V${PYTHON_SUFFIX}=1 | |||||
MAKE_JOBS_UNSAFE= yes | |||||
USES= gmake | |||||
Not Done Inline ActionsCan you explicitly disable this if option is _OFF? koobs: Can you explicitly disable this if option is _OFF? | |||||
Not Done Inline ActionsYes, but if IPv6 is off then I need to set staf_use_ipv6 to <blank> as noted in the documentation, should I? skozlov: Yes, but if IPv6 is off then I need to set staf_use_ipv6 to <blank> as noted in the [[ http… | |||||
Not Done Inline ActionsDoes it work? Failing empty working, have you tried ='' ? koobs: Does it work?
Failing empty working, have you tried ='' ? | |||||
Not Done Inline ActionsIt does, but at the last diff I've made disabling the option as explicit as possible. skozlov: It does, but at the last diff I've made disabling the option as explicit as possible. | |||||
USE_LDCONFIG= yes | |||||
Not Done Inline ActionsI realized why that's needed, please see the comment to new diff skozlov: I realized why that's needed, please see the comment to new diff | |||||
Not Done Inline ActionsNot sure I understand? koobs: Not sure I understand? | |||||
Not Done Inline ActionsDisregard that, this is related to your comment for the first diff about explicitly switching off IPV6 and OPENSSL. skozlov: Disregard that, this is related to your comment for the first diff about explicitly switching… | |||||
USE_RC_SUBR= stafproc | |||||
Not Done Inline ActionsCan you explicitly disable this if option is _OFF? koobs: Can you explicitly disable this if option is _OFF? | |||||
Not Done Inline ActionsThe same as for IPv6, documentation here skozlov: The same as for IPv6, documentation [[ http://staf.sourceforge.net/current/stafdg. | |||||
SUB_LIST+= STAF_VAR_DIR=${STAF_VAR_DIR} | |||||
Not Done Inline ActionsI realized why that's needed, please see the comment to new diff skozlov: I realized why that's needed, please see the comment to new diff | |||||
Not Done Inline ActionsNot sure I understand? koobs: Not sure I understand? | |||||
Not Done Inline ActionsDisregard that, this is related to your comment for the first diff about explicitly switching off IPV6 and OPENSSL. skozlov: Disregard that, this is related to your comment for the first diff about explicitly switching… | |||||
PLIST_SUB+= STAF_VAR_DIR=${STAF_VAR_DIR} | |||||
STAF_PROJECTS= staf connprov_tcp connprov_localipc | |||||
STAF_BIN_FILES= STAF STAFProc STAFReg STAFLoop STAFExecProxy FmtLog | |||||
Not Done Inline ActionsThis says to me that it supports Python 2 and Python 3. Is > 3.4 *explicitly* not supported? Depending on the response, this may be better off as PYTHON_USES=python koobs: This says to me that it supports Python 2 and Python 3. Is > 3.4 *explicitly* not supported? | |||||
Not Done Inline ActionsThe software includes code to build modules specially for different versions of Python and supported versions are 2.2-3.4. For 3.5 I need to build 3.4 modules and put them into 3.5 site-packages for what I need to write a lot of if-fy code. Personally I would like to wait for STAF developers to officially support python 3.5. Documentation on Python support here skozlov: The software includes code to build modules specially for different versions of Python and… | |||||
Not Done Inline ActionsIf you're saying there's not just two versions of the code (one for 2.x and one for 3.x), that is really annoying. But fine for now if it's too much work or more clarity is required. koobs: If you're saying there's not just two versions of the code (one for 2.x and one for 3.x), that… | |||||
STAF_LIB_FILES= libHello.so libSTAF.so libSTAFDSLS.so libSTAFDeviceService.so \ | |||||
Not Done Inline ActionsThis will use py3kplist even for Python 2.x builds? Why is that needed, or am I missing something? koobs: This will use py3kplist even for Python 2.x builds? Why is that needed, or am I missing… | |||||
Not Done Inline ActionsIndeed it will enable py3kplist for Python 2.x too, but it has no effect on Python 2.x cause the code related to py3kplist first checks if the python version is >3.2 (code here). It can be moved to Python 3.x specific part between lines 76 and 80, but the move will have no effect on the process. skozlov: Indeed it will enable py3kplist for Python 2.x too, but it has no effect on Python 2.x cause… | |||||
Not Done Inline ActionsI'll take your word for it :) koobs: I'll take your word for it :) | |||||
libSTAFEXECPROXY.so libSTAFLIPC.so libSTAFLog.so \ | |||||
libSTAFMon.so libSTAFPool.so libSTAFReg.so libSTAFTCP.so | |||||
STAF_PYLIB_FILES= PySTAFLog.py PySTAFMon.py | |||||
STAF_SSL_FILES= CAList.crt STAFDefault.crt STAFDefault.key | |||||
STAF_PYTHON_VERSIONS= 22 23 24 25 26 27 30 31 32 33 34 | |||||
STAF_VAR_DIR?= /var/db/STAF | |||||
.include <bsd.port.pre.mk> | |||||
.if ${PORT_OPTIONS:MPYTHON} | |||||
.if ${PYTHON_MAJOR_VER} == 2 | |||||
STAF_PYLIB_FILES+= PySTAF.py | |||||
PLIST_SUB+= PYTHON_2="" PYTHON_3="@comment " | |||||
MAKE_ARGS+= PYTHON_V${PYTHON_SUFFIX}_LIBDIRS=${PYTHON_LIBDIR}/config | |||||
.else | |||||
STAF_PYLIB_FILES+= PySTAFv3.py | |||||
PLIST_SUB+= PYTHON_3="" PYTHON_2="@comment " | |||||
MAKE_ARGS+= PYTHON_V${PYTHON_SUFFIX}_LIBDIRS=${PYTHON_LIBDIR}/config-${PYTHON_VER}${PYTHON_ABIVER} | |||||
.endif | |||||
.for i in ${STAF_PYTHON_VERSIONS} | |||||
.if ${PYTHON_SUFFIX} != ${i} | |||||
PYTHON_MAKE_ARGS+= PYTHON_BUILD_V${i}=0 | |||||
.endif | |||||
.endfor | |||||
.endif | |||||
post-patch: | |||||
${REINPLACE_CMD} "s|%%DATADIR%%|${DATADIR}|" \ | |||||
${WRKSRC}/stafif/STAFConverter.cpp \ | |||||
${WRKSRC}/connproviders/tcp/STAFTCPConnProvider.cpp | |||||
${REINPLACE_CMD} "s|%%PREFIX%%|${PREFIX}|g" \ | |||||
${WRKSRC}/stafproc/STAFProc.cpp | |||||
${REINPLACE_CMD} "s|%%STAFVARDIR%%|${STAF_VAR_DIR}|g" \ | |||||
${WRKSRC}/stafproc/STAFProc.cpp | |||||
do-install: | |||||
.for bin in ${STAF_BIN_FILES} | |||||
${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/bin/${bin} ${STAGEDIR}${PREFIX}/bin/ | |||||
.endfor | |||||
${LN} -s ${PREFIX}/bin/STAF ${STAGEDIR}${PREFIX}/bin/staf | |||||
.for lib in ${STAF_LIB_FILES} | |||||
${INSTALL_LIB} ${INSTALL_WRKSRC}/lib/${lib} ${STAGEDIR}${PREFIX}/lib/ | |||||
.endfor | |||||
${INSTALL_DATA} ${INSTALL_WRKSRC}/bin/STAF.cfg \ | |||||
${STAGEDIR}${PREFIX}/etc/STAF.cfg.sample | |||||
cd ${INSTALL_WRKSRC}/include && \ | |||||
${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/include | |||||
${MKDIR} ${STAGEDIR}${DATADIR}/codepage | |||||
cd ${INSTALL_WRKSRC}/codepage && \ | |||||
${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}/codepage | |||||
${MKDIR} ${STAGEDIR}${EXAMPLESDIR} | |||||
cd ${INSTALL_WRKSRC}/samples && \ | |||||
${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR} | |||||
do-install-OPENSSL-on: | |||||
${MKDIR} ${STAGEDIR}${DATADIR} | |||||
.for sslfile in ${STAF_SSL_FILES} | |||||
${INSTALL_DATA} ${INSTALL_WRKSRC}/bin/${sslfile} ${STAGEDIR}${DATADIR} | |||||
.endfor | |||||
do-install-PYTHON-on: | |||||
${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR}/${PORTNAME} | |||||
.for lib in ${STAF_PYLIB_FILES} | |||||
${INSTALL_DATA} ${INSTALL_WRKSRC}/lib/${lib} \ | |||||
${STAGEDIR}${PYTHON_SITELIBDIR}/${PORTNAME} | |||||
.endfor | |||||
${PYTHON_CMD} -m compileall -d ${PYTHON_SITELIBDIR}/${PORTNAME} \ | |||||
${STAGEDIR}${PYTHON_SITELIBDIR}/${PORTNAME} | |||||
${PYTHON_CMD} -O -m compileall -d ${PYTHON_SITELIBDIR}/${PORTNAME} \ | |||||
${STAGEDIR}${PYTHON_SITELIBDIR}/${PORTNAME} | |||||
${INSTALL_LIB} ${INSTALL_WRKSRC}/lib/python${PYTHON_SUFFIX}/PYSTAF.so \ | |||||
${STAGEDIR}${PYTHON_SITELIBDIR}/${PORTNAME} | |||||
${ECHO} ${PORTNAME} > ${STAGEDIR}${PYTHON_SITELIBDIR}/${PORTNAME}.pth | |||||
${MKDIR} ${STAGEDIR}${DOCSDIR} | |||||
cd ${INSTALL_WRKSRC}/docs && \ | |||||
${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR} | |||||
post-install: | |||||
${MKDIR} ${STAGEDIR}${STAF_VAR_DIR} | |||||
.include <bsd.port.post.mk> |
Is there a https MASTER_SITE available? If so please add that as the primary with http:// as the secondary