From owner-svn-ports-all@freebsd.org Mon Dec 19 06:37:21 2016 Return-Path: Delivered-To: svn-ports-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A8746C870E6; Mon, 19 Dec 2016 06:37:21 +0000 (UTC) (envelope-from jbeich@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6AE661C2D; Mon, 19 Dec 2016 06:37:21 +0000 (UTC) (envelope-from jbeich@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id uBJ6bK1i009910; Mon, 19 Dec 2016 06:37:20 GMT (envelope-from jbeich@FreeBSD.org) Received: (from jbeich@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id uBJ6bK2G009908; Mon, 19 Dec 2016 06:37:20 GMT (envelope-from jbeich@FreeBSD.org) Message-Id: <201612190637.uBJ6bK2G009908@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jbeich set sender to jbeich@FreeBSD.org using -f From: Jan Beich Date: Mon, 19 Dec 2016 06:37:20 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r428907 - in head/graphics/colmap: . files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 19 Dec 2016 06:37:21 -0000 Author: jbeich Date: Mon Dec 19 06:37:20 2016 New Revision: 428907 URL: https://svnweb.freebsd.org/changeset/ports/428907 Log: graphics/colmap: always build SIMD support Added: head/graphics/colmap/files/patch-vlfeat-rtcpu (contents, props changed) Modified: head/graphics/colmap/Makefile (contents, props changed) Modified: head/graphics/colmap/Makefile ============================================================================== --- head/graphics/colmap/Makefile Mon Dec 19 04:34:49 2016 (r428906) +++ head/graphics/colmap/Makefile Mon Dec 19 06:37:20 2016 (r428907) @@ -3,7 +3,7 @@ PORTNAME= colmap DISTVERSION= 2.1-0 # synthetic tag DISTVERSIONSUFFIX= -g55fbe10 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= graphics MAINTAINER= jbeich@FreeBSD.org @@ -40,18 +40,12 @@ CXXFLAGS+= -D_GLIBCXX_USE_C99 -D_GLIBCXX LDFLAGS+= -Wl,--as-needed # gflags, glu, xi, xmu TEST_TARGET= test ARGS="-V" -OPTIONS_DEFINE= DOCS OPENMP -OPTIONS_DEFAULT= OPENMP ${MACHINE_CPU:tu} +OPTIONS_DEFINE= DOCS OPENMP SIMD +OPTIONS_DEFAULT= OPENMP SIMD # XXX ports/215138: exclude still broken OPTIONS_EXCLUDE= ${OPTIONS_EXCLUDE_${OPSYS}_${OSREL}} # not OSREL:R OPTIONS_EXCLUDE_FreeBSD_10.1= OPENMP -OPTIONS_GROUP= SIMD -OPTIONS_GROUP_SIMD= ${OPTIONS_GROUP_SIMD_${MACHINE_ARCH}} -# Keep in sync with src/ext/VLFeat/CMakeLists.txt -OPTIONS_GROUP_SIMD_amd64= ${OPTIONS_GROUP_SIMD_i386} -OPTIONS_GROUP_SIMD_i386= SSE2 AVX - DOCS_BUILD_DEPENDS= sphinx-build:textproc/py-sphinx DOCS_USES= gmake DOCS_PORTDOCS= * @@ -61,15 +55,10 @@ OPENMP_CMAKE_BOOL= OPENMP_ENABLED # XXX ports/199603 + ports/210337 OPENMP_VARS= OPENMP=gcc- -.for _simd in ${OPTIONS_GROUP_SIMD} -${_simd}_DESC= ${MMX_DESC:S/MMX/${_simd}/} -${_simd}_CMAKE_BOOL= HAS_${_simd}_EXTENSION -${_simd}_CFLAGS= -m${_simd:tl} -.endfor +SIMD_CMAKE_BOOL= SIMD_ENABLED post-patch: @${REINPLACE_CMD} -e 's/Qt5OpenGL/Qt5Widgets/' \ - -e '/CheckSSEExtensions/d' \ ${WRKSRC}/CMakeLists.txt @${REINPLACE_CMD} -e '/install.*test/d' \ ${WRKSRC}/cmake/CMakeHelper.cmake Added: head/graphics/colmap/files/patch-vlfeat-rtcpu ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/graphics/colmap/files/patch-vlfeat-rtcpu Mon Dec 19 06:37:20 2016 (r428907) @@ -0,0 +1,83 @@ +build: don't force SSE2/AVX, enable at runtime instead + +--- CMakeLists.txt.orig 2016-12-07 13:47:54 UTC ++++ CMakeLists.txt +@@ -16,8 +16,6 @@ include(CheckCXXCompilerFlag) + # the CMake policies in this file + include(${CMAKE_SOURCE_DIR}/cmake/CMakeHelper.cmake NO_POLICY_SCOPE) + +-include(${CMAKE_SOURCE_DIR}/cmake/CheckSSEExtensions.cmake) +- + if(EXISTS ${CMAKE_SOURCE_DIR}/LocalConfig.cmake) + include(${CMAKE_SOURCE_DIR}/LocalConfig.cmake) + endif() +@@ -29,6 +27,7 @@ endif() + + enable_testing() + ++option(SIMD_ENABLED "Wether to enable SIMD optimizations" ON) + option(OPENMP_ENABLED "Whether to enable OpenMP" ON) + option(LTO_ENABLED "Whether to enable link-time optimization" ON) + option(CUDA_ENABLED "Whether to enable CUDA, if available" ON) +--- src/ext/VLFeat/CMakeLists.txt.orig 2016-12-07 13:47:54 UTC ++++ src/ext/VLFeat/CMakeLists.txt +@@ -1,8 +1,27 @@ +-if(IS_MSVC OR NOT HAS_AVX_EXTENSION) +- add_definitions(-DVL_DISABLE_AVX) ++set(VLFEAT_SOURCE_FILES) ++ ++if(CMAKE_SYSTEM_PROCESSOR MATCHES "[ix].?86|amd64|AMD64") ++ set(IS_X86 TRUE) + endif() + +-if(IS_MSVC OR NOT HAS_SSE2_EXTENSION) ++if(SIMD_ENABLED AND IS_X86 AND NOT IS_MSVC) ++ set(SSE2_SOURCES ++ imopv_sse2.c ++ imopv_sse2.h ++ mathop_sse2.c ++ mathop_sse2.h) ++ set(AVX_SOURCES ++ mathop_avx.c ++ mathop_avx.h) ++ ++ list(APPEND VLFEAT_SOURCE_FILES ${AVX_SOURCES} ${SSE2_SOURCES}) ++ ++ set_source_files_properties(${AVX_SOURCES} ++ PROPERTIES COMPILE_FLAGS "-mavx") ++ set_source_files_properties(${SSE2_SOURCES} ++ PROPERTIES COMPILE_FLAGS "-msse2") ++else() ++ add_definitions(-DVL_DISABLE_AVX) + add_definitions(-DVL_DISABLE_SSE2) + endif() + +@@ -10,7 +29,7 @@ if(NOT OPENMP_ENABLED OR NOT OPENMP_FOUN + add_definitions(-DVL_DISABLE_OPENMP) + endif() + +-set(VLFEAT_SOURCE_FILES ++list(APPEND VLFEAT_SOURCE_FILES + aib.c + aib.h + array.c +@@ -44,8 +63,6 @@ set(VLFEAT_SOURCE_FILES + ikmeans_lloyd.tc + imopv.c + imopv.h +- imopv_sse2.c +- imopv_sse2.h + kdtree.c + kdtree.h + kmeans.c +@@ -56,10 +73,6 @@ set(VLFEAT_SOURCE_FILES + liop.h + mathop.c + mathop.h +- mathop_avx.c +- mathop_avx.h +- mathop_sse2.c +- mathop_sse2.h + mser.c + mser.h + pgm.c