[134849] trunk/dports/science

michaelld at macports.org michaelld at macports.org
Wed Apr 8 11:14:18 PDT 2015


Revision: 134849
          https://trac.macports.org/changeset/134849
Author:   michaelld at macports.org
Date:     2015-04-08 11:14:18 -0700 (Wed, 08 Apr 2015)
Log Message:
-----------
volk: new port.

Added Paths:
-----------
    trunk/dports/science/volk/
    trunk/dports/science/volk/Portfile
    trunk/dports/science/volk/files/
    trunk/dports/science/volk/files/patch-build.diff

Added: trunk/dports/science/volk/Portfile
===================================================================
--- trunk/dports/science/volk/Portfile	                        (rev 0)
+++ trunk/dports/science/volk/Portfile	2015-04-08 18:14:18 UTC (rev 134849)
@@ -0,0 +1,165 @@
+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
+# $Id$
+
+PortSystem          1.0
+PortGroup           cmake 1.0
+PortGroup           github 1.0
+
+github.setup        gnuradio volk 528caa1ec03281a3013e1655c8e2546b71bda8d5
+version             20150407
+checksums           rmd160 6c212e914e35e1b198be27ecae341838ae766a0f \
+                    sha256 fad182bf5cddfd0d8be7db9d440e1a49f736a8d36d56cc9d513a9dc4d7e05714
+
+# the gnuradio release and legacy stillprovide volk
+
+conflicts           gnuradio-legacy gnuradio
+
+categories          science comms
+maintainers         michaelld openmaintainer
+description         Vector-Optimized Library of Kernels
+long_description    ${description}
+license             GPL-3
+platforms           darwin
+
+# override githib PortGroup homepage setting
+
+homepage            http://libvolk.org/
+
+depends_build-append port:pkgconfig
+depends_lib-append	 port:boost
+
+# do VPATH (out of source tree) build
+
+cmake.out_of_source yes
+
+# remove top-level library path, such that internal libraries are used
+# instead of any already-installed ones.
+
+configure.ldflags-delete -L${prefix}/lib
+
+# specify the Python dependencies; these are checked for at configure,
+# then used for building, but not at runtime.
+
+depends_build-append \
+    port:python27 \
+    port:py27-cheetah
+
+# override default version string to be MacPorts-specific
+# git / "devel" only for now
+
+set VOLK_VERSION_INFO "git-[string range ${github.version} 0 7](${version})"
+
+configure.args-append \
+    -DVOLK_GIT_COUNT="MacPorts" \
+    -DVOLK_GIT_HASH="${VOLK_VERSION_INFO}"
+
+# install CMake files into this directory
+
+configure.args-append \
+    -DCMAKE_MODULES_DIR=${prefix}/share/cmake
+
+# specify the Python version to use
+
+configure.args-append \
+    -DPYTHON_EXECUTABLE=${prefix}/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 \
+    -DVOLK_PYTHON_DIR=${frameworks_dir}/Python.framework/Versions/2.7/lib/python2.7/site-packages
+
+default_variants +docs +orc
+
+variant docs description "Install Volk documentation" {
+
+    depends_build-append \
+        port:doxygen
+
+    configure.args-append \
+        -DDOXYGEN_EXECUTABLE=${prefix}/bin/doxygen
+}
+
+if {![variant_isset docs]} {
+
+    configure.args-append \
+        -DDOXYGEN_EXECUTABLE=
+
+}
+
+variant orc description "Install Volk with support for ORC" {
+
+    depends_lib-append \
+        port:orc
+
+    configure.args-append \
+        -DORCC_EXECUTABLE=${prefix}/bin/orcc \
+        -DORC_INCLUDE_DIR=${prefix}/include/orc-0.4 \
+        -DORC_LIBRARY_DIR=${prefix}/lib
+
+}
+
+if {![variant_isset orc]} {
+
+    configure.args-append \
+        -DORCC_EXECUTABLE= \
+        -DORC_INCLUDE_DIR= \
+        -DORC_LIBRARY_DIR=
+
+}
+
+variant cxx11 description "Compile Volk using C++11 compliance" {
+
+    # require C++11
+
+    configure.cxxflags-append -std=c++11
+
+    if {${configure.cxx_stdlib} eq "libstdc++"} {
+
+        # *clang* when using libstdc++ do not seem to support C++11;
+        # C++11 support seems to need GCC 4.7+ when using libstdc++;
+        # could use C++0x support on GCC4.[56], but just ignore it since
+        # there are newer compilers already in place as defaults.
+
+        # Blacklist GCC compilers not supporting C++11 and all CLANG.
+        # This is probably not necessary, but it's good practice.
+
+        compiler.blacklist-append *clang* {*gcc-3*} {*gcc-4.[0-6]}
+
+        # and whitelist those we do want to use. wish there were a better way.
+        # these will be used in the order provided.
+
+        compiler.whitelist macports-gcc-4.9 macports-gcc-4.8 macports-gcc-4.7
+
+    } else {
+
+        # using libc++;
+        # Blacklist Clang not supporting C++11 in some form and all GCC.
+
+        compiler.blacklist-append *gcc* {clang < 500}
+
+    }
+}
+
+pre-extract {
+
+    # tell the user to force deactivate gnuradio-(devel,next) if one
+    # is active and version is before Volk was split off (20150329 for
+    # devel and next).
+
+    set not_found [catch {set installed [lindex [registry_active gnuradio-devel] 0]}]
+    if {${not_found}} {
+        set not_found [catch {set installed [lindex [registry_active gnuradio-next] 0]}]
+    }
+    if (!${not_found}) {
+
+        set _portname [lindex ${installed} 0]
+        set _version [lindex ${installed} 1]
+
+        if {[vercmp ${_version} 20150329] < 0} {
+
+            ui_msg "\nVolk is currently installed by the port '${_portname}'."
+            ui_msg "Use the command"
+            ui_msg "  sudo port -f deactivate ${_portname}"
+            ui_msg "to deactivate the port owning volk, then proceed with"
+            ui_msg "  sudo port upgrade ${_portname}\n"
+            return -code error "Port Needs Deactivation"
+
+        }
+    }
+}


Property changes on: trunk/dports/science/volk/Portfile
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:eol-style
   + native

Added: trunk/dports/science/volk/files/patch-build.diff
===================================================================
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20150408/8b9e980d/attachment.html>


More information about the macports-changes mailing list