Index: head/devel/boost-all/compiled.mk =================================================================== --- head/devel/boost-all/compiled.mk (revision 479221) +++ head/devel/boost-all/compiled.mk (revision 479222) @@ -1,47 +1,54 @@ USE_LDCONFIG= yes PKGMESSAGE= ${WRKDIR}/pkg-message MAKE_CMD= bjam MAKEFILE= # MAKE_FLAGS= # ALL_TARGET= stage +# XXX Drop conditional after 10.4 EOL as both libstdc++ 7 and libc++ 6 +# have near complete C++17 support. +.if exists(/usr/lib/libstdc++.so) || exists(/usr/include/c++/v1/__undef_macros) +USES+= compiler:c++17-lang +USE_CXXSTD= gnu++17 +.else USES+= compiler:c++14-lang USE_CXXSTD= gnu++14 +.endif PLIST_SUB+= BOOST_SHARED_LIB_VER=${PORTVERSION} PKG_MESSAGE_FILE_THREADS= ${PORTSDIR}/devel/boost-all/pkg-message.threads PKG_MESSAGE_FILE_PYTHON= ${PORTSDIR}/devel/boost-all/pkg-message.python MAKE_ARGS= --layout=system \ --prefix=${PREFIX} \ -d2 # Our compiler-flags will be added AFTER those set by bjam. We remove # the optimization level, because Boost sets it itself (to -O3 in case # of gcc/g++): MAKE_ARGS+= cxxflags="${CXXFLAGS:N-O*}" cflags="${CFLAGS:N-O*}" MAKE_ARGS+= --toolset=${CHOSEN_COMPILER_TYPE} \ ${_MAKE_JOBS} DEBUG_MAKE_ARGS= debug DEBUG_MAKE_ARGS_OFF= release MAKE_ARGS+= threading=multi \ link=shared,static MAKE_ARGS+= optimization=speed OPTIMIZED_CFLAGS_MAKE_ARGS= inlining=full # ccache build fails when using precompiled headers, on a cached build. # # base gcc 4.2.1 fails when using precompiled headers on 11.0+ kernel. # https://lists.freebsd.org/pipermail/svn-src-all/2015-March/101722.html MAKE_ARGS+= pch=off post-patch: .if defined(USE_BINUTILS) @${ECHO} "using ${CHOSEN_COMPILER_TYPE} : : ${CXX} : -B${LOCALBASE}/bin ;" >> ${WRKSRC}/tools/build/src/user-config.jam .else @${ECHO} "using ${CHOSEN_COMPILER_TYPE} : : ${CXX} ;" >> ${WRKSRC}/tools/build/src/user-config.jam .endif Index: head/devel/boost-libs/Makefile =================================================================== --- head/devel/boost-libs/Makefile (revision 479221) +++ head/devel/boost-libs/Makefile (revision 479222) @@ -1,60 +1,60 @@ # Created by: Alexander Churanov # $FreeBSD$ PORTNAME= boost-libs -PORTREVISION= 0 +PORTREVISION= 1 COMMENT= Free portable C++ libraries (without Boost.Python) BROKEN_sparc64= https://github.com/boostorg/context/commit/f2ef6326b6ed BUILD_DEPENDS+= bjam:devel/boost-jam # libs/config/test/boost_no_cxx11_thread_local.ipp fails (see base r303795) PLIST_SUB+= FIBER="${"${OPSYS}"=="FreeBSD" && ${OSREL:R} < 11:?@comment :}" OPTIONS_DEFINE= DEBUG OPTIMIZED_CFLAGS OPTIONS_MULTI= LOCALE OPTIONS_MULTI_LOCALE= ICONV ICU OPTIONS_DEFAULT= ICONV ICU ICONV_DESC= Boost.Locale with iconv encoding support ICU_DESC= Boost.Regex/Locale with ICU unicode support ICONV_USES= iconv ICONV_MAKE_ARGS= -sICONV_PATH=${ICONV_PREFIX} ICONV_MAKE_ARGS_OFF= boost.locale.iconv=off ICU_LIB_DEPENDS= libicuuc.so:devel/icu ICU_MAKE_ARGS= -sICU_PATH=${LOCALBASE} ICU_MAKE_ARGS_OFF= boost.locale.icu=off .include "${.CURDIR}/../boost-all/common.mk" .include "${.CURDIR}/../boost-all/compiled.mk" MAKE_ARGS+= --without-python MAKE_ARGS+= ${MAKE_ARGS_${CHOSEN_COMPILER_TYPE}} MAKE_ARGS_gcc= xdll-path=${_GCC_RUNTIME} ALL_TARGET= stage do-install: @cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} \ ${MAKE_ARGS:NDESTDIR=*:S,^--prefix=,&${STAGEDIR},} ${INSTALL_TARGET} # For some reasons BJAM forget about the links @cd ${WRKSRC}/stage/ && ${FIND} lib -type l | ${PAX} -rw -p p ${STAGEDIR}${PREFIX} # display pkg-message post-install: @${TOUCH} ${PKGMESSAGE} @${CAT} ${PKG_MESSAGE_FILE_THREADS} >> ${PKGMESSAGE} @${ECHO_CMD} >> ${PKGMESSAGE} @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so @${REINPLACE_CMD} \ -e "s|%%LOCALBASE%%|${LOCALBASE}|g" \ -e "s|%%PYTHON_INCLUDEDIR%%|${PYTHON_INCLUDEDIR}|g" \ -e "s|%%PYTHON_LIBDIR%%|${PYTHON_LIBDIR}|g" \ -e "s|%%PYTHON_VERSION%%|${PYTHON_VERSION}|g" ${PKGMESSAGE} .include Index: head/devel/boost-python-libs/Makefile =================================================================== --- head/devel/boost-python-libs/Makefile (revision 479221) +++ head/devel/boost-python-libs/Makefile (revision 479222) @@ -1,54 +1,55 @@ # Created by: Alexander Churanov # $FreeBSD$ PORTNAME= boost-libs +PORTREVISION= 1 COMMENT= Framework for interfacing Python and C++ PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} BUILD_DEPENDS= bjam:devel/boost-jam LIB_DEPENDS= libboost_thread.so:devel/boost-libs USES= python USE_PYTHON= flavors # Ignore -Wregister warnings in Python.h CFLAGS+= ${${PY_FLAVOR}_CFLAGS} py27_CFLAGS= -isystem ${PYTHON_INCLUDEDIR} OPTIONS_DEFINE= DEBUG OPTIMIZED_CFLAGS .include "${.CURDIR}/../boost-all/common.mk" .include "${.CURDIR}/../boost-all/compiled.mk" MAKE_ENV+= PYTHON_ROOT="${LOCALBASE}"\ PYTHON_VERSION="${PYTHON_VERSION}"\ PYTHON_INCLUDES="${PYTHON_INCLUDEDIR}"\ PYTHON_LIB_PATH="${PYTHON_LIBDIR}" MAKE_ARGS+= --with-python ALL_TARGET= stage pre-build: @${ECHO_CMD} "using python : " ${PYTHON_VER} " : " ${PYTHON_CMD} " : " ${PYTHON_INCLUDEDIR} ";" >> ${WRKSRC}/tools/build/src/site-config.jam do-install: @cd ${WRKSRC}/stage/lib && ${PAX} -rw -p p libboost* ${STAGEDIR}${PREFIX}/lib # For some reasons BJAM forget about the links @cd ${WRKSRC}/stage/ && ${FIND} lib -type l | ${PAX} -rw -p p ${STAGEDIR}${PREFIX} post-install: # display pkg-message @${TOUCH} ${PKGMESSAGE} @${CAT} ${PKG_MESSAGE_FILE_THREADS} >> ${PKGMESSAGE} @${ECHO_CMD} >> ${PKGMESSAGE} @${CAT} ${PKG_MESSAGE_FILE_PYTHON} >> ${PKGMESSAGE} @${ECHO_CMD} >> ${PKGMESSAGE} @${REINPLACE_CMD} \ -e "s|%%LOCALBASE%%|${LOCALBASE}|g" \ -e "s|%%PYTHON_INCLUDEDIR%%|${PYTHON_INCLUDEDIR}|g" \ -e "s|%%PYTHON_LIBDIR%%|${PYTHON_LIBDIR}|g" \ -e "s|%%PYTHON_VERSION%%|${PYTHON_VERSION}|g" ${PKGMESSAGE} @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libboost_python*.so.${PORTVERSION} .include