# Created by: Randall Hopper # $FreeBSD$ PORTNAME= osg PORTVERSION= 3.3.0 PORTREVISION= 3 CATEGORIES= graphics MASTER_SITES= http://trac.openscenegraph.org/downloads/developer_releases/ \ http://mirror.amdmi3.ru/distfiles/ DISTNAME= OpenSceneGraph-${PORTVERSION} PKGNAMESUFFIX= -devel MAINTAINER= amdmi3@FreeBSD.org COMMENT= C++ OpenGL scene graph library for real-time rendering LICENSE= OSGPL LICENSE_NAME= OpenSceneGraph Public License LICENSE_FILE= ${WRKSRC}/LICENSE.txt LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept LIB_DEPENDS= libjpeg.so:${PORTSDIR}/graphics/jpeg \ libpng.so:${PORTSDIR}/graphics/png \ libtiff.so:${PORTSDIR}/graphics/tiff CONFLICTS= osg-[0-9]* USES= cmake:outsource pkgconfig zip USE_GL= gl glu USE_XORG= x11 USE_LDCONFIG= yes PLIST_SUB= OSG_VERSION=${PORTVERSION} \ OSG_SHLIBVER=110 \ OPENTHREADS_VERSION=${PORTVERSION} \ OPENTHREADS_SHLIBVER=14 PORTSCOUT= limitw:1,odd OPTIONS_DEFINE= CURL FREETYPE GDAL GIF INVENTOR JASPER XINE GTA \ VNC OPENEXR FFMPEG SVG PDF SDL NVTT QT4 XRANDR \ LUA V8 PYTHON OPTIONS_DEFAULT=FREETYPE GIF FFMPEG XRANDR GDAL_DESC= GDAL support INVENTOR_DESC= SGI OpenInventor support GTA_DESC= GTA file format support VNC_DESC= LibVNCServer support SDL_DESC= Use SDL (joystick support in present3d) NVTT_DESC= Use NVidia texture tools LUA_DESC= Lua script engine support V8_DESC= V8 script engine support PYTHON_DESC= Python script engine support OPTIONS_SUB= yes CURL_LIB_DEPENDS= libcurl.so:${PORTSDIR}/ftp/curl FREETYPE_LIB_DEPENDS= libfreetype.so:${PORTSDIR}/print/freetype2 GDAL_LIB_DEPENDS= libgdal.so:${PORTSDIR}/graphics/gdal GIF_LIB_DEPENDS= libgif.so:${PORTSDIR}/graphics/giflib INVENTOR_LIB_DEPENDS= libInventor.so:${PORTSDIR}/graphics/inventor JASPER_LIB_DEPENDS= libjasper.so:${PORTSDIR}/graphics/jasper XINE_LIB_DEPENDS= libxine.so:${PORTSDIR}/multimedia/libxine GTA_LIB_DEPENDS= libgta.so:${PORTSDIR}/devel/libgta VNC_LIB_DEPENDS= libvncserver.so:${PORTSDIR}/net/libvncserver OPENEXR_LIB_DEPENDS= libIlmImf.so:${PORTSDIR}/graphics/OpenEXR FFMPEG_LIB_DEPENDS= libavcodec.so:${PORTSDIR}/multimedia/ffmpeg SVG_LIB_DEPENDS= librsvg-2.so:${PORTSDIR}/graphics/librsvg2 PDF_LIB_DEPENDS= libpoppler-glib.so:${PORTSDIR}/graphics/poppler-glib SDL_USE= SDL=sdl NVTT_LIB_DEPENDS= libnvtt.so:${PORTSDIR}/graphics/nvidia-texture-tools XRANDR_CMAKE_ON= -DOSGVIEWER_USE_XRANDR:BOOL=ON XRANDR_CMAKE_OFF= -DOSGVIEWER_USE_XRANDR:BOOL=OFF QT4_USE= QT4=corelib,gui,opengl,qmake_build,moc_build,uic_build,rcc_build QT4_CMAKE_ON= -DOSG_USE_QT=ON QT4_CMAKE_OFF= -DOSG_USE_QT=OFF LUA_USES= lua:51 V8_LIB_DEPENDS= libv8.so:${PORTSDIR}/lang/v8 PYTHON_USE= PYTHON=2 .include # GUI toolkits are only needed for building examples, which are not even installed FORCE_IGNORE= FLTK GLUT FOX Qt3 Qt5Widgets wxWidgets OpenAL GtkGl # only for examples FORCE_IGNORE+= COLLADA Performer OurDCMTK XUL FBX # not in ports FORCE_IGNORE+= OpenVRML # ports version too old FORCE_IGNORE+= ITK # ports version doesn't build on 10.x FORCE_REQUIRE= Threads OpenGL X11 JPEG PNG TIFF ZLIB # common & lightweight # options that affect FIND_PACKAGE .if ${PORT_OPTIONS:MCURL} FORCE_REQUIRE+= CURL .else FORCE_IGNORE+= CURL .endif .if ${PORT_OPTIONS:MFREETYPE} FORCE_REQUIRE+= FreeType .else FORCE_IGNORE+= FreeType .endif .if ${PORT_OPTIONS:MGDAL} FORCE_REQUIRE+= GDAL .else FORCE_IGNORE+= GDAL .endif .if ${PORT_OPTIONS:MGIF} FORCE_REQUIRE+= GIFLIB .else FORCE_IGNORE+= GIFLIB .endif .if ${PORT_OPTIONS:MINVENTOR} FORCE_REQUIRE+= Inventor .else FORCE_IGNORE+= Inventor .endif .if ${PORT_OPTIONS:MJASPER} FORCE_REQUIRE+= Jasper .else FORCE_IGNORE+= Jasper .endif .if ${PORT_OPTIONS:MXINE} FORCE_REQUIRE+= Xine .else FORCE_IGNORE+= Xine .endif .if ${PORT_OPTIONS:MGTA} FORCE_REQUIRE+= GTA .else FORCE_IGNORE+= GTA .endif .if ${PORT_OPTIONS:MVNC} FORCE_REQUIRE+= LibVNCServer .else FORCE_IGNORE+= LibVNCServer .endif .if ${PORT_OPTIONS:MOPENEXR} FORCE_REQUIRE+= OpenEXR .else FORCE_IGNORE+= OpenEXR .endif .if ${PORT_OPTIONS:MFFMPEG} FORCE_REQUIRE+= FFmpeg .else FORCE_IGNORE+= FFmpeg .endif .if ${PORT_OPTIONS:MSDL} FORCE_REQUIRE+= SDL .else FORCE_IGNORE+= SDL .endif .if ${PORT_OPTIONS:MNVTT} FORCE_REQUIRE+= NVTT .else FORCE_IGNORE+= NVTT .endif .if ${PORT_OPTIONS:MLUA} FORCE_REQUIRE+= Lua51 .else FORCE_IGNORE+= Lua51 .endif .if ${PORT_OPTIONS:MV8} FORCE_REQUIRE+= V8 .else FORCE_IGNORE+= V8 .endif .if ${PORT_OPTIONS:MPYTHON} FORCE_REQUIRE+= PythonLibs .else FORCE_IGNORE+= PythonLibs .endif # options that affect PKG_CHECK_MODULES .if ${PORT_OPTIONS:MSVG} FORCE_REQUIRE+= RSVG .else FORCE_IGNORE+= RSVG .endif .if ${PORT_OPTIONS:MPDF} FORCE_REQUIRE+= Poppler-glib .else FORCE_IGNORE+= Poppler-glib .endif .if ${PORT_OPTIONS:MSVG} || ${PORT_OPTIONS:MPDF} USE_GNOME= cairo .endif # other options .if ${PORT_OPTIONS:MXRANDR} USE_XORG+= xrandr .endif post-patch: @${FIND} ${WRKSRC}/CMakeModules -type f -print0 | ${XARGS} -0 \ ${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' @${REINPLACE_CMD} -e '/FIND_LIBRARY.*DL_LIBRARY/ d' \ ${WRKSRC}/CMakeLists.txt .for p in ${FORCE_REQUIRE} @${REINPLACE_CMD} -e '/FIND_PACKAGE.*${p}/ s|)$$| REQUIRED&|' \ ${WRKSRC}/CMakeLists.txt .endfor .for p in ${FORCE_IGNORE} @${REINPLACE_CMD} -e '/FIND_PACKAGE.*${p}/ s|^|#|' \ ${WRKSRC}/CMakeLists.txt .endfor .include