Index: head/graphics/seexpr/Makefile =================================================================== --- head/graphics/seexpr/Makefile (revision 402465) +++ head/graphics/seexpr/Makefile (revision 402466) @@ -1,42 +1,46 @@ # Created by: Alexey Dokuchaev # $FreeBSD$ PORTNAME= seexpr DISTVERSION= 1.0.1.2015.08.29 +PORTREVISION= 1 CATEGORIES= graphics math MAINTAINER= danfe@FreeBSD.org COMMENT= Embeddable expression evaluation language LICENSE= APACHE20 BUILD_DEPENDS= ${LOCALBASE}/share/py-sip/QtGui/QtGuimod.sip:${PORTSDIR}/x11-toolkits/py-qt4-gui USE_GITHUB= yes GH_ACCOUNT= wdas GH_TAGNAME= 36ffb818b8 USES= bison cmake compiler:c++0x python USE_QT4= moc_build qmake_build rcc_build uic_build gui opengl WRKSRC= ${WRKDIR}/SeExpr-${GH_TAGNAME_EXTRACT} CXXFLAGS+= -I${LOCALBASE}/include +.if ${MACHINE_CPU:Msse41} +CMAKE_ARGS+= -DUSE_SSE41:BOOL=ON +.endif + .include # base flex(1) v2.5.4 is not sufficient .if ${OSVERSION} < 1000033 BUILD_DEPENDS+= ${LOCALBASE}/bin/flex:${PORTSDIR}/textproc/flex .endif post-patch: @${REINPLACE_CMD} -e '//d' ${WRKSRC}/src/SeExpr/SePlatform.h @${REINPLACE_CMD} -e 's, "dl",,' ${WRKSRC}/src/SeExpr/CMakeLists.txt - @${REINPLACE_CMD} -e '/tests/d' ${WRKSRC}/CMakeLists.txt .if ${OSVERSION} < 1000033 @${REINPLACE_CMD} -e '/COMMAND/s,flex,${LOCALBASE}/bin/&,' \ ${WRKSRC}/src/build/macros.cmake .endif .include Index: head/graphics/seexpr/files/patch-CMakeLists.txt =================================================================== --- head/graphics/seexpr/files/patch-CMakeLists.txt (nonexistent) +++ head/graphics/seexpr/files/patch-CMakeLists.txt (revision 402466) @@ -0,0 +1,19 @@ +--- CMakeLists.txt.orig 2015-08-28 22:32:38 UTC ++++ CMakeLists.txt +@@ -46,7 +46,10 @@ ELSE(WIN32) + ADD_DEFINITIONS (-Wall -Wextra) + ADD_DEFINITIONS (-pthread) + +- SET( CMAKE_CXX_FLAGS "-fPIC -msse4.1") ++ SET( CMAKE_CXX_FLAGS -fPIC ) ++ IF(USE_SSE41) ++ SET( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse4.1" ) ++ ENDIF() + ENDIF(WIN32) + + ## Choose build options +@@ -99,4 +102,3 @@ ADD_SUBDIRECTORY (src/SeExpr) + ADD_SUBDIRECTORY (src/SeExprEditor) + ADD_SUBDIRECTORY (src/doc) + ADD_SUBDIRECTORY (src/demos) +-ADD_SUBDIRECTORY (src/tests) Property changes on: head/graphics/seexpr/files/patch-CMakeLists.txt ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/graphics/seexpr/files/patch-src_SeExpr_SeNoise.cpp =================================================================== --- head/graphics/seexpr/files/patch-src_SeExpr_SeNoise.cpp (nonexistent) +++ head/graphics/seexpr/files/patch-src_SeExpr_SeNoise.cpp (revision 402466) @@ -0,0 +1,34 @@ +--- src/SeExpr/SeNoise.cpp.orig 2015-08-28 22:32:38 UTC ++++ src/SeExpr/SeNoise.cpp +@@ -16,7 +16,9 @@ + */ + + #include ++#ifdef __SSE4_1__ + #include ++#endif + + #include "SeExprBuiltins.h" + namespace{ +@@ -25,14 +27,18 @@ namespace{ + #include "SeNoise.h" + namespace SeExpr{ + ++#ifdef __SSE4_1__ + inline double floorSSE(double val) { +- return _mm_cvtsd_f64(_mm_floor_sd(_mm_set_sd(0.0), _mm_set_sd(val))); ++ return _mm_floor_sd(_mm_set_sd(0.0), _mm_set_sd(val))[0]; + } + + inline double roundSSE(double val) { +- return _mm_cvtsd_f64(_mm_round_sd(_mm_set_sd(0.0), _mm_set_sd(val), _MM_FROUND_TO_NEAREST_INT)); ++ return _mm_round_sd(_mm_set_sd(0.0), _mm_set_sd(val), _MM_FROUND_TO_NEAREST_INT)[0]; + } +- ++#else ++#define floorSSE floor ++#define roundSSE round ++#endif + + //! This is the Quintic interpolant from Perlin's Improved Noise Paper + double s_curve(double t) { Property changes on: head/graphics/seexpr/files/patch-src_SeExpr_SeNoise.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property