aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--graphics/luxrender/Makefile64
-rw-r--r--graphics/luxrender/distinfo5
-rw-r--r--graphics/luxrender/files/patch-CMakeLists.txt56
-rw-r--r--graphics/luxrender/pkg-plist1
4 files changed, 89 insertions, 37 deletions
diff --git a/graphics/luxrender/Makefile b/graphics/luxrender/Makefile
index fb0e5fc59d93..54150719c3ba 100644
--- a/graphics/luxrender/Makefile
+++ b/graphics/luxrender/Makefile
@@ -6,8 +6,7 @@
#
PORTNAME= luxrender
-PORTVERSION= 0.6.1
-PORTREVISION= 1
+PORTVERSION= 0.7.1
CATEGORIES= graphics
MASTER_SITES= http://src.luxrender.net/lux/archive/ \
http://freebsd.nsu.ru/distfiles/luxrender/
@@ -17,50 +16,49 @@ DIST_SUBDIR= ${PORTNAME}
MAINTAINER= danfe@FreeBSD.org
COMMENT= A physically based and unbiased rendering system
+LICENSE= GPLv3
+
+BUILD_DEPENDS= ${LOCALBASE}/lib/libfreeimage.a:${PORTSDIR}/graphics/freeimage
LIB_DEPENDS= boost_thread.4:${PORTSDIR}/devel/boost-libs \
- IlmImf.6:${PORTSDIR}/graphics/OpenEXR
+ png.6:${PORTSDIR}/graphics/png \
+ IlmImf.6:${PORTSDIR}/graphics/OpenEXR \
-HG_NODEID= 36533b0843bd
+HG_NODEID= 9206b3ba7011
USE_BZIP2= yes
+USE_BISON= build
USE_CMAKE= yes
-USE_WX= 2.8
-CMAKE_ARGS= -DwxWidgets_CONFIG_EXECUTABLE="${WX_CONFIG}"
CMAKE_VERBOSE= yes
WRKSRC= ${WRKDIR}/lux-${HG_NODEID}
+MAKE_JOBS_SAFE= yes
+
+DESKTOP_ENTRIES="LuxRender" "${COMMENT}" "${PORTNAME}" "${PORTNAME}" \
+ "Application;Graphics;3DGraphics;" ${FALSE}
-DESKTOP_ENTRIES="LuxRender" "${COMMENT}" "luxrender" "luxrender" \
- "Application;Graphics;3DGraphics;" false
+OPTIONS= QT4 "Build Qt4 GUI executable" on \
+ WX "Build wxWidgets GUI executable" off
-.include <bsd.port.pre.mk>
+.include <bsd.port.options.mk>
+
+.if defined(WITH_QT4)
+USE_QT_VER= 4
+QT_COMPONENTS= moc_build qmake_build rcc_build uic_build corelib gui
+PLIST_FILES+= bin/luxrender
+.endif
-.if ${OSVERSION} < 700000
-BROKEN= does not configure on 6.X
-.elif ${ARCH} == "i386" || ${ARCH} == "sparc64"
-BROKEN= does not build
+.if defined(WITH_WX)
+USE_WX= 2.8+
+PLIST_FILES+= bin/luxrenderwx
.endif
post-patch:
-# Respect our CFLAGS, do not append `64' suffix to `lib' on amd64, do not
-# install vendor .desktop file
- @${REINPLACE_CMD} -e \
- 's,^ADD_DEFINITIONS(-O3 -msse2 -mfpmath=sse -ftree-vectorize -funroll-loops -Wall ,ADD_DEFINITIONS(, ; /LIB_SUFFIX 64/d ; \
- /luxrender.desktop/d' ${WRKSRC}/CMakeLists.txt
+# Prevent appending `64' suffix to `lib' directory on amd64, do not install
+# vendor .desktop file, disable build of Python extension for now
+ @${REINPLACE_CMD} -e '/LIB_SUFFIX 64/d ; /luxrender\.desktop/d ; \
+ 89,95d ; 803,837d' ${WRKSRC}/CMakeLists.txt
+# Adjust for libpng 1.4 new API
@${REINPLACE_CMD} -e \
's|png_set_gray_1_2_4_to_8|png_set_expand_gray_1_2_4_to_8|' \
- -e 's|int_p_NULL|NULL|g' \
- ${WRKSRC}/core/cimg.h
-
-post-configure:
-# Fix CXX_FLAGS in generated files
- @${REINPLACE_CMD} -e \
- 's,-pthread;-D_THREAD_SAFE,-pthread -D_THREAD_SAFE,' \
- ${WRKSRC}/CMakeFiles/lux.dir/flags.make \
- ${WRKSRC}/CMakeFiles/luxconsole.dir/flags.make \
- ${WRKSRC}/CMakeFiles/luxconsole.dir/link.txt \
- ${WRKSRC}/CMakeFiles/luxmerger.dir/flags.make \
- ${WRKSRC}/CMakeFiles/luxmerger.dir/link.txt \
- ${WRKSRC}/CMakeFiles/luxrender.dir/flags.make \
- ${WRKSRC}/CMakeFiles/luxrender.dir/link.txt
+ -e 's|int_p_NULL|NULL|g' ${WRKSRC}/core/external/cimg.h
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff --git a/graphics/luxrender/distinfo b/graphics/luxrender/distinfo
index ed945be09c70..6fbd8acdcd42 100644
--- a/graphics/luxrender/distinfo
+++ b/graphics/luxrender/distinfo
@@ -1,3 +1,2 @@
-MD5 (luxrender/36533b0843bd.tar.bz2) = 1c2702bbce97dd7dc95adbd16b0bbed7
-SHA256 (luxrender/36533b0843bd.tar.bz2) = b1fd735d17923ccae36b6438aa04b15feb5902c7fe965f440a133248fac98919
-SIZE (luxrender/36533b0843bd.tar.bz2) = 1346360
+SHA256 (luxrender/9206b3ba7011.tar.bz2) = 8af12fbebf29e62f3203b02fe28a11304f7d48f23f87e7a053c804149cbfcc56
+SIZE (luxrender/9206b3ba7011.tar.bz2) = 1998376
diff --git a/graphics/luxrender/files/patch-CMakeLists.txt b/graphics/luxrender/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..b41562841128
--- /dev/null
+++ b/graphics/luxrender/files/patch-CMakeLists.txt
@@ -0,0 +1,56 @@
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -842,18 +841,6 @@
+
+ #############################################################################
+ #############################################################################
+-########################### Find OpenGL ##########################
+-#############################################################################
+-#############################################################################
+-SET(OPENGL_LIBRARY ${CMAKE_ROOT}/Modules/FindOpenGL.cmake)
+-INCLUDE(${CMAKE_ROOT}/Modules/FindOpenGL.cmake)
+-
+-MESSAGE(STATUS "OpenGL include directory: " ${OPENGL_INCLUDE_DIR})
+-
+-INCLUDE_DIRECTORIES(SYSTEM ${OPENGL_INCLUDE_DIR})
+-
+-#############################################################################
+-#############################################################################
+ ######################### wxWidgets LIBRARIES SETUP #########################
+ #############################################################################
+ #############################################################################
+@@ -864,6 +851,11 @@
+ FIND_PACKAGE(wxWidgets)
+
+ IF(wxWidgets_FOUND)
++ SET(OPENGL_LIBRARY ${CMAKE_ROOT}/Modules/FindOpenGL.cmake)
++ INCLUDE(${CMAKE_ROOT}/Modules/FindOpenGL.cmake)
++ MESSAGE(STATUS "OpenGL include directory: " ${OPENGL_INCLUDE_DIR})
++ INCLUDE_DIRECTORIES(SYSTEM ${OPENGL_INCLUDE_DIR})
++
+ # Include wxWidgets macros
+ INCLUDE(${wxWidgets_USE_FILE})
+ MESSAGE( STATUS "wxWidgets include directory: " ${wxWidgets_INCLUDE_DIRS} )
+@@ -955,16 +947,14 @@
+
+ #############################################################################
+
+-#Install target
++#Install targets
+ IF(wxWidgets_FOUND)
+- INSTALL(TARGETS luxrender luxrenderwx luxconsole luxmerger
+- RUNTIME DESTINATION bin
+- )
+-ELSE(wxWidgets_FOUND)
+- INSTALL(TARGETS luxrender luxconsole luxmerger
+- RUNTIME DESTINATION bin
+- )
++ INSTALL(TARGETS luxrenderwx RUNTIME DESTINATION bin)
+ ENDIF(wxWidgets_FOUND)
++IF(QT4_FOUND)
++ INSTALL(TARGETS luxrender RUNTIME DESTINATION bin)
++ENDIF(QT4_FOUND)
++INSTALL(TARGETS luxconsole luxmerger RUNTIME DESTINATION bin)
+
+ #Install API/Library
+ INSTALL(FILES ${CMAKE_SOURCE_DIR}/core/api.h DESTINATION include/luxrender/)
diff --git a/graphics/luxrender/pkg-plist b/graphics/luxrender/pkg-plist
index 04bf435d7176..ccb94bfb0c3d 100644
--- a/graphics/luxrender/pkg-plist
+++ b/graphics/luxrender/pkg-plist
@@ -1,6 +1,5 @@
bin/luxconsole
bin/luxmerger
-bin/luxrender
include/luxrender/api.h
@dirrm include/luxrender
lib/liblux.a