# Created by: Jimmy Olgeni # $FreeBSD$ PORTNAME= blender PORTVERSION= 2.79 PORTREVISION= 4 CATEGORIES= graphics games MASTER_SITES= http://download.blender.org/source/ \ http://mirror.cs.umn.edu/blender.org/source/ \ http://public.planetmirror.com/pub/blender/source/ MAINTAINER= FreeBSD@Shaneware.biz COMMENT= 3D modeling/rendering/animation/gaming package LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/doc/license/GPL-license.txt LIB_DEPENDS= libpng.so:graphics/png \ libfreetype.so:print/freetype2 \ libboost_regex.so:devel/boost-libs # libboost_regex.so just acts as a placeholder; several boost # libraries are used, if either of the most common options in blender # are set. We will pull boost in just to be on the safe side. .include "${.CURDIR}/Makefile.versions" USES= cmake:outsource desktop-file-utils \ jpeg python:${BLENDER_PY_VERSION} shebangfix \ fortran # fortran is needed because Blender plugins can load python libraries built with fortran, and they need Blender to have USES=fortran USE_XORG= x11 xext xmu xrender USE_GL= gl glu glew INSTALLS_ICONS= yes CMAKE_ARGS= -DWITH_PYTHON_INSTALL:BOOL=OFF \ -DWITH_PYTHON_INSTALL_NUMPY:BOOL=OFF \ -DWITH_INSTALL_PORTABLE:BOOL=FALSE \ -DPYTHON_VERSION:STRING=${BLENDER_PY_VERSION} SHEBANG_FILES= release/bin/blender-thumbnailer.py \ release/scripts/modules/bl_i18n_utils/merge_po.py \ release/scripts/modules/bl_i18n_utils/utils_rtl.py \ release/scripts/modules/blend_render_info.py CFLAGS_i386= -march=i586 CXXFLAGS_i386= -march=i586 OUTDIR= ${INSTALL_WRKSRC}/bin/${BLENDER_BL_VERSION} PLIST_SUB+= VER=${BLENDER_BL_VERSION} OPTIONS_SUB= yes .include "${.CURDIR}/Makefile.options" AVI_CMAKE_ON= -DWITH_CODEC_AVI:BOOL=ON AVI_CMAKE_OFF= -DWITH_CODEC_AVI:BOOL=OFF BULLET_CMAKE_ON= -DWITH_BULLET:BOOL=ON BULLET_CMAKE_OFF= -DWITH_BULLET:BOOL=OFF CAMERATRACK_CMAKE_ON= -DWITH_LIBMV:BOOL=ON CAMERATRACK_CMAKE_OFF= -DWITH_LIBMV:BOOL=OFF CAMERATRACK_LIB_DEPENDS= libunwind.so:devel/libunwind CINEON_CMAKE_ON= -DWITH_IMAGE_CINEON:BOOL=ON CINEON_CMAKE_OFF= -DWITH_IMAGE_CINEON:BOOL=OFF COLLADA_CMAKE_ON= -DWITH_OPENCOLLADA:BOOL=ON COLLADA_CMAKE_OFF= -DWITH_OPENCOLLADA:BOOL=OFF COLLADA_LIB_DEPENDS= libOpenCOLLADABaseUtils.so:graphics/opencollada \ libpcre.so:devel/pcre COLLADA_USE= GNOME=libxml2 COMPOSITOR_CMAKE_ON= -DWITH_COMPOSITOR:BOOL=ON COMPOSITOR_CMAKE_OFF= -DWITH_COMPOSITOR:BOOL=OFF CYCLES_IMPLIES= OPENIMAGEIO CYCLES_CMAKE_ON= -DWITH_CYCLES:BOOL=ON CYCLES_CMAKE_OFF= -DWITH_CYCLES:BOOL=OFF CYCLESOSL_IMPLIES= CYCLES CYCLESOSL_CMAKE_ON= -DWITH_CYCLES_OSL:BOOL=ON \ -DWITH_CXX11:BOOL=ON \ -DWITH_LLVM:BOOL=ON \ -DLLVM_STATIC:BOOL=OFF \ -DLLVM_CONFIG:STRING="${LOCALBASE}/bin/llvm-config40" CYCLESOSL_CMAKE_OFF= -DWITH_CYCLES_OSL:BOOL=OFF CYCLESOSL_BUILD_DEPENDS= llvm-config40:devel/llvm40 CYCLESOSL_LIB_DEPENDS= liboslcomp.so:graphics/openshadinglanguage CYCLESOSL_RUN_DEPENDS= llvm-config40:devel/llvm40 DDS_CMAKE_ON= -DWITH_IMAGE_DDS:BOOL=ON DDS_CMAKE_OFF= -DWITH_IMAGE_DDS:BOOL=OFF FFMPEG_CMAKE_ON= -DWITH_CODEC_FFMPEG:BOOL=ON FFMPEG_CMAKE_OFF= -DWITH_CODEC_FFMPEG:BOOL=OFF FFMPEG_LIB_DEPENDS= libavutil.so:multimedia/ffmpeg FFTW3_CMAKE_ON= -DWITH_FFTW3:BOOL=ON FFTW3_CMAKE_OFF= -DWITH_FFTW3:BOOL=OFF FFTW3_LIB_DEPENDS= libfftw3.so:math/fftw3 FRAMESERVER_CMAKE_ON= -DWITH_IMAGE_FRAMESERVER:BOOL=ON FRAMESERVER_CMAKE_OFF= -DWITH_IMAGE_FRAMESERVER:BOOL=OFF FREESTYLE_CMAKE_ON= -DWITH_FREESTYLE:BOOL=ON FREESTYLE_CMAKE_OFF= -DWITH_FREESTYLE:BOOL=OFF GAMEENGINE_CMAKE_ON= -DWITH_GAMEENGINE:BOOL=ON GAMEENGINE_CMAKE_OFF= -DWITH_GAMEENGINE:BOOL=OFF HDR_CMAKE_ON= -DWITH_IMAGE_HDR:BOOL=ON HDR_CMAKE_OFF= -DWITH_IMAGE_HDR:BOOL=OFF HEADLESS_PREVENTS= MENU XINPUT XF86VMODE HEADLESS_PREVENTS_MSG= X11 options can't be used in headless mode HEADLESS_CMAKE_ON= -DWITH_HEADLESS:BOOL=ON HEADLESS_CMAKE_OFF= -DWITH_HEADLESS:BOOL=OFF INPUT_NDOF_CMAKE_ON= -DWITH_INPUT_NDOF:BOOL=ON INPUT_NDOF_CMAKE_OFF= -DWITH_INPUT_NDOF:BOOL=OFF JACK_CMAKE_ON= -DWITH_JACK:BOOL=ON JACK_CMAKE_OFF= -DWITH_JACK:BOOL=OFF JACK_LIB_DEPENDS= libjack.so:audio/jack LZO_CMAKE_ON= -DWITH_LZO:BOOL=ON LZO_CMAKE_OFF= -DWITH_LZO:BOOL=OFF LZMA_CMAKE_ON= -DWITH_LZMA:BOOL=ON LZMA_CMAKE_OFF= -DWITH_LZMA:BOOL=OFF MENU_USES= desktop-file-utils MOD_BOOLEAN_CMAKE_ON= -DWITH_MOD_BOOLEAN:BOOL=ON MOD_BOOLEAN_CMAKE_OFF= -DWITH_MOD_BOOLEAN:BOOL=OFF MOD_FLUID_CMAKE_ON= -DWITH_MOD_FLUID:BOOL=ON MOD_FLUID_CMAKE_OFF= -DWITH_MOD_FLUID:BOOL=OFF MOD_OCEANSIM_IMPLIES= FFTW3 MOD_OCEANSIM_CMAKE_ON= -DWITH_MOD_OCEANSIM:BOOL=ON MOD_OCEANSIM_CMAKE_OFF= -DWITH_MOD_OCEANSIM:BOOL=OFF MOD_REMESH_CMAKE_ON= -DWITH_MOD_REMESH:BOOL=ON MOD_REMESH_CMAKE_OFF= -DWITH_MOD_REMESH:BOOL=OFF MOD_SMOKE_CMAKE_ON= -DWITH_MOD_SMOKE:BOOL=ON MOD_SMOKE_CMAKE_OFF= -DWITH_MOD_SMOKE:BOOL=OFF NLS_CMAKE_ON= -DWITH_INTERNATIONAL:BOOL=ON NLS_CMAKE_OFF= -DWITH_INTERNATIONAL:BOOL=OFF # Use iconv:wchar_t to force the usage of iconv from ports. # libboost_locale.so uses libiconv_open, while we only provide # iconv_open in 10.x+ NLS_USES= gettext iconv:lib,wchar_t OPENAL_CMAKE_ON= -DWITH_OPENAL:BOOL=ON OPENAL_CMAKE_OFF= -DWITH_OPENAL:BOOL=OFF OPENAL_USES= openal:al,alut OPENCOLORIO_CMAKE_ON= -DWITH_OPENCOLORIO:BOOL=ON OPENCOLORIO_CMAKE_OFF= -DWITH_OPENCOLORIO:BOOL=OFF OPENCOLORIO_LIB_DEPENDS= libOpenColorIO.so:graphics/opencolorio \ libyaml-cpp03.so:devel/yaml-cpp03 \ libtinyxml.so:textproc/tinyxml OPENEXR_CMAKE_ON= -DWITH_IMAGE_OPENEXR:BOOL=ON OPENEXR_CMAKE_OFF= -DWITH_IMAGE_OPENEXR:BOOL=OFF OPENEXR_LIB_DEPENDS= libIlmImf.so:graphics/OpenEXR \ libHalf.so:graphics/ilmbase OPENIMAGEIO_IMPLIES= OPENEXR TIFF OPENIMAGEIO_CMAKE_ON= -DWITH_OPENIMAGEIO:BOOL=ON OPENIMAGEIO_CMAKE_OFF= -DWITH_OPENIMAGEIO:BOOL=OFF OPENIMAGEIO_LIB_DEPENDS= libOpenImageIO.so:graphics/openimageio OPENJPEG_CMAKE_ON= -DWITH_SYSTEM_OPENJPEG:BOOL=ON \ -DWITH_IMAGE_OPENJPEG:BOOL=ON OPENJPEG_CMAKE_OFF= -DWITH_IMAGE_OPENJPEG:BOOL=OFF OPENJPEG_LIB_DEPENDS= libopenjpeg.so:graphics/openjpeg15 OPENSUBDIV_CMAKE_ON= -DWITH_OPENSUBDIV:BOOL=ON OPENSUBDIV_CMAKE_OFF= -DWITH_OPENSUBDIV:BOOL=OFF OPENSUBDIV_LIB_DEPENDS= libosdCPU.so:graphics/opensubdiv PLAYER_IMPLIES= GAMEENGINE PLAYER_CMAKE_ON= -DWITH_PLAYER:BOOL=ON PLAYER_CMAKE_OFF= -DWITH_PLAYER:BOOL=OFF RAYOPTIMIZATION_CMAKE_ON= -DWITH_RAYOPTIMIZATION:BOOL=ON RAYOPTIMIZATION_CMAKE_OFF= -DWITH_RAYOPTIMIZATION:BOOL=OFF SDL_CMAKE_ON= -DWITH_SDL:BOOL=ON SDL_CMAKE_OFF= -DWITH_SDL:BOOL=OFF SDL_USE= SDL=sdl2 SNDFILE_CMAKE_ON= -DWITH_CODEC_SNDFILE:BOOL=ON SNDFILE_CMAKE_OFF= -DWITH_CODEC_SNDFILE:BOOL=OFF SNDFILE_LIB_DEPENDS= libsndfile.so:audio/libsndfile TIFF_CMAKE_ON= -DWITH_IMAGE_TIFF:BOOL=ON TIFF_CMAKE_OFF= -DWITH_IMAGE_TIFF:BOOL=OFF TIFF_LIB_DEPENDS= libtiff.so:graphics/tiff XINPUT_CMAKE_ON= -DWITH_X11_XINPUT:BOOL=ON XINPUT_CMAKE_OFF= -DWITH_X11_XINPUT:BOOL=OFF XINPUT_USE= XORG=xi XF86VMODE_CMAKE_ON= -DWITH_X11_XF86VMODE:BOOL=ON XF86VMODE_CMAKE_OFF= -DWITH_X11_XF86VMODE:BOOL=OFF XF86VMODE_USE= XORG=xi,xxf86vm .include .if defined(WITH_DEBUG) CMAKE_ARGS+= -DWITH_GHOST_DEBUG:BOOL=ON .endif post-patch-OPENCOLORIO-on: @${REINPLACE_CMD} -e 's|yaml-cpp|&03|' \ ${PATCH_WRKSRC}/build_files/cmake/Modules/FindOpenColorIO.cmake post-build: @(cd ${WRKSRC}/doc/manpage && \ ${PYTHON_CMD} blender.1.py \ ${INSTALL_WRKSRC}/bin/blender \ ${INSTALL_WRKSRC}/bin/${PORTNAME}.1) post-install-MENU-on: @-update-desktop-database -q post-install: ${INSTALL_MAN} ${INSTALL_WRKSRC}/bin/${PORTNAME}.1 \ ${STAGEDIR}${MAN1PREFIX}/man/man1 .include