Index: head/graphics/OpenEXR/Makefile =================================================================== --- head/graphics/OpenEXR/Makefile (revision 383630) +++ head/graphics/OpenEXR/Makefile (revision 383631) @@ -1,101 +1,94 @@ # Created by: nork@FreeBSD.org # $FreeBSD$ PORTNAME= OpenEXR PORTVERSION= 2.2.0 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= graphics devel MASTER_SITES= SAVANNAH/openexr/:dist \ LOCAL/mandree/:test DISTNAME= openexr-${DISTVERSION} DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:dist \ openexr-2.2.0-comp_dwa-test-images.tar.xz:test MAINTAINER= mandree@FreeBSD.org COMMENT= High dynamic-range (HDR) image file format LICENSE= BSD3CLAUSE # exact version required to avoid hard-to-debug issues LIB_DEPENDS= libImath-2_2.so.12:${PORTSDIR}/graphics/ilmbase WRKSRC= ${WRKDIR}/${DISTNAME} USES= compiler:features gmake libtool pathfix pkgconfig GNU_CONFIGURE= yes CONFIGURE_ARGS+=--disable-ilmbasetest --enable-imfexamples USE_LDCONFIG= yes CPPFLAGS+= -I. -I../IlmImf # must be linked with -l{thr|pthread} explicitly LDFLAGS+= -lpthread PORTDOCS= * PORTEXAMPLES= * DOCSRCDIR1= ${WRKSRC} DOC_FILES1= AUTHORS ChangeLog NEWS README DOCSRCDIR2= ${WRKSRC}/doc DOCSDIR2= ${DOCSDIR}/doc DOC_FILES2= *.pdf OPTIONS_DEFINE= DOCS EXAMPLES LARGE_STACK LARGE_STACK_DESC= Enable sys-dependant large stack optimizations OPTIONS_SUB= yes LARGE_STACK_CONFIGURE_ENABLE= large-stack .include - -# If default compiler is GCC, upgrade it because -# g++ 4.2 is too old to auto-upgrade 0xffffffffffffffffl to -# a long long integer constant - and has likely more issues. -.if ${COMPILER_TYPE} == gcc -USE_GCC= yes -.endif MAJORVER= 2_2 VER= 22 PLIST_SUB= MAJORVER=${MAJORVER} PLIST_SUB+= VER=${VER} post-patch: @${REINPLACE_CMD} -e 's|== x|= x|g' ${WRKSRC}/configure @${REINPLACE_CMD} \ -e 's|$$(datadir)/doc/OpenEXR-@OPENEXR_VERSION@/examples|$$(prefix)/share/examples/${PORTNAME}|' \ ${WRKSRC}/IlmImfExamples/Makefile.in @${REINPLACE_CMD} -e 's|$$(datadir)/doc/OpenEXR-@OPENEXR_VERSION@||' \ -e 's|$$(EXTRA_DIST)||' \ ${WRKSRC}/doc/Makefile.am ${WRKSRC}/doc/Makefile.in # too many reports about compilation failures, so sanity check C++ # library _ilm_libcxx=${COMPILER_FEATURES:Mlib*c++} pre-configure: @${OBJDUMP} -p ${LOCALBASE}/lib/libImath.so \ | ${EGREP} -q '^[[:space:]]*NEEDED[[:space:]]+${_ilm_libcxx:C/\+/\\+/g}\.' \ || { ${ECHO_CMD} "*** Your ilmbase package uses a different C++ standard library than ***" ; \ ${ECHO_CMD} "*** OpenEXR would. Please recompile and reinstall ilmbase with the ***" ; \ ${ECHO_CMD} "*** same C++ std. library before trying to build OpenEXR. Abort. ***" ; \ exit 1; } .if ! ${PORT_OPTIONS:MEXAMPLES} EXTRA_PATCHES+=${FILESDIR}/extra-patch-IlmImfExamples__Makefile.in .endif regression-test regression test check: build @(cd ${WRKSRC}; ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${_MAKE_JOBS} check) post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libIlmImf-${MAJORVER}.so.${VER} ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libIlmImfUtil-${MAJORVER}.so.${VER} @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${DOC_FILES1:S|^|${DOCSRCDIR1}/|} ${STAGEDIR}${DOCSDIR} @${MKDIR} ${STAGEDIR}${DOCSDIR2} ${INSTALL_DATA} ${DOC_FILES2:S|^|${DOCSRCDIR2}/|} ${STAGEDIR}${DOCSDIR2} .include Index: head/graphics/OpenEXR/files/patch-IlmImf_ImfFastHuf.cpp =================================================================== --- head/graphics/OpenEXR/files/patch-IlmImf_ImfFastHuf.cpp (nonexistent) +++ head/graphics/OpenEXR/files/patch-IlmImf_ImfFastHuf.cpp (revision 383631) @@ -0,0 +1,47 @@ +--- IlmImf/ImfFastHuf.cpp.orig 2014-08-10 08:23:56.000000000 +0400 ++++ IlmImf/ImfFastHuf.cpp 2015-04-08 00:10:07.536640000 +0300 +@@ -107,7 +107,7 @@ + for (int i = 0; i <= MAX_CODE_LEN; ++i) + { + codeCount[i] = 0; +- base[i] = 0xffffffffffffffffL; ++ base[i] = 0xffffffffffffffffULL; + offset[i] = 0; + } + +@@ -352,7 +352,7 @@ + + for (int i = 0; i <= MAX_CODE_LEN; ++i) + { +- if (base[i] != 0xffffffffffffffffL) ++ if (base[i] != 0xffffffffffffffffULL) + { + _ljBase[i] = base[i] << (64 - i); + } +@@ -362,7 +362,7 @@ + // Unused code length - insert dummy values + // + +- _ljBase[i] = 0xffffffffffffffffL; ++ _ljBase[i] = 0xffffffffffffffffULL; + } + } + +@@ -417,7 +417,7 @@ + + int minIdx = TABLE_LOOKUP_BITS; + +- while (minIdx > 0 && _ljBase[minIdx] == 0xffffffffffffffffL) ++ while (minIdx > 0 && _ljBase[minIdx] == 0xffffffffffffffffULL) + minIdx--; + + if (minIdx < 0) +@@ -427,7 +427,7 @@ + // Set the min value such that the table is never tested. + // + +- _tableMin = 0xffffffffffffffffL; ++ _tableMin = 0xffffffffffffffffULL; + } + else + { Property changes on: head/graphics/OpenEXR/files/patch-IlmImf_ImfFastHuf.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 Index: head/graphics/OpenEXR/files/patch-IlmImf__ImfSystemSpecific.cpp =================================================================== --- head/graphics/OpenEXR/files/patch-IlmImf__ImfSystemSpecific.cpp (revision 383630) +++ head/graphics/OpenEXR/files/patch-IlmImf__ImfSystemSpecific.cpp (revision 383631) @@ -1,25 +1,29 @@ ---- IlmImf/ImfSystemSpecific.cpp.orig 2014-08-10 04:23:57 UTC -+++ IlmImf/ImfSystemSpecific.cpp -@@ -35,6 +35,9 @@ - #include "ImfSystemSpecific.h" - #include "ImfNamespace.h" - #include "OpenEXRConfig.h" -+#if defined(IMF_HAVE_SSE2) && defined(__GNUC__) -+#include -+#endif - - OPENEXR_IMF_INTERNAL_NAMESPACE_SOURCE_ENTER - -@@ -44,11 +47,7 @@ namespace { +--- IlmImf/ImfSystemSpecific.cpp.orig 2014-08-10 08:23:57.000000000 +0400 ++++ IlmImf/ImfSystemSpecific.cpp 2015-04-09 00:08:50.100958000 +0300 +@@ -44,11 +44,23 @@ // Helper functions for gcc + SSE enabled void cpuid(int n, int &eax, int &ebx, int &ecx, int &edx) { -- __asm__ __volatile__ ( ++#if __i386__ + __asm__ __volatile__ ( - "cpuid" - : /* Output */ "=a"(eax), "=b"(ebx), "=c"(ecx), "=d"(edx) - : /* Input */ "a"(n) -- : /* Clobber */); -+ __cpuid(n, eax, ebx, ecx, edx); ++ "xchgl %%ebx,%k1\n" ++ "cpuid\n" ++ "xchgl %%ebx,%k1" \ ++ : /* Output */ "=a"(eax), "=&r"(ebx), "=c"(ecx), "=d"(edx) ++ : /* Input */ "0"(n) + : /* Clobber */); ++#else ++ __asm__ __volatile__ ( ++ "xchgq %%rbx,%q1\n" ++ "cpuid\n" ++ "xchgq %%rbx,%q1" \ ++ : /* Output */ "=a"(eax), "=&r"(ebx), "=c"(ecx), "=d"(edx) ++ : /* Input */ "0"(n) ++ : /* Clobber */); ++#endif } #else // IMF_HAVE_SSE2 && __GNUC__