<pre style='margin:0'>
Chris Jones (cjones051073) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/aee266fbf090cce970d5d4e92ddc05cc8e98ef37">https://github.com/macports/macports-ports/commit/aee266fbf090cce970d5d4e92ddc05cc8e98ef37</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit aee266fbf090cce970d5d4e92ddc05cc8e98ef37
</span>Author: Marcus Calhoun-Lopez <mcalhoun@macports.org>
AuthorDate: Sun Apr 25 14:34:19 2021 -0700
<span style='display:block; white-space:pre;color:#404040;'> janet PG: add new PortGroup
</span>---
_resources/port1.0/group/janet-1.0.tcl | 84 ++++++++++++++++++++++++++++++++++
1 file changed, 84 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/_resources/port1.0/group/janet-1.0.tcl b/_resources/port1.0/group/janet-1.0.tcl
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..c658300dd78
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/_resources/port1.0/group/janet-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,84 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- 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
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Usage:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# PortGroup janet 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# This PortGroup allows projects to be built with jpm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# (see https://janet-lang.org/docs/jpm.html).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# search in ${prefix}/lib/janet/bin and create link in ${prefix}/bin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+options janet.link_bin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default janet.link_bin yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# program to create and maintain library archives
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+options janet.compiler.ar
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default janet.compiler.ar {[janetpg::get_default_ar]}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+namespace eval janetpg {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+proc janetpg::get_default_ar {} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # no doubt that at some point, for some systems, the ar from cctools will have to be used
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return /usr/bin/ar
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# The build command jpm does not respect CFLAGS/CXXFLAGS.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# You can set the compilers, but no spaces seem to be allowed.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Hence, we cannot simply append the CFLAGS/CXXFLAGS to the compiler name.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# As a workaround, create custom compilers with CFLAGS/CXXFLAGS baked in.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+pre-configure {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # create directory
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d -m 0755 ${worksrcpath}/macports_bin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # create empty files with the correct permissions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach bin {cc cxx ar} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ close [open ${worksrcpath}/macports_bin/${bin} w 0755]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default configure.pre_args {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default configure.cmd {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /bin/echo \\\\#!/bin/bash >> ${worksrcpath}/macports_bin/cc && echo exec \\\$CC \\\$CFLAGS \\\\\"\\\\$@\\\\\" >> ${worksrcpath}/macports_bin/cc &&
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /bin/echo \\\\#!/bin/bash >> ${worksrcpath}/macports_bin/cxx && echo exec \\\$CXX \\\$CXXFLAGS \\\\\"\\\\$@\\\\\" >> ${worksrcpath}/macports_bin/cxx &&
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /bin/echo \\\\#!/bin/bash >> ${worksrcpath}/macports_bin/ar && echo exec ${janet.compiler.ar} \\\\\"\\\\$@\\\\\" >> ${worksrcpath}/macports_bin/ar
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default configure.post_args {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Build with jpm.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default build.cmd {${prefix}/bin/jpm}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default build.args {--verbose
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --offline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --compiler=${worksrcpath}/macports_bin/cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --cpp-compiler=${worksrcpath}/macports_bin/cxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --archiver=${worksrcpath}/macports_bin/ar
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default build.target {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Install with jpm.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default destroot.cmd {${prefix}/bin/jpm}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default destroot.args {--verbose
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --offline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default destroot.target {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default destroot.destdir {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+pre-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d -m 0755 ${destroot}${prefix}/lib/janet
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${janet.link_bin}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach bin [glob -nocomplain -tails -directory ${destroot}${prefix}/lib/janet/bin *] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ln -s ${prefix}/lib/janet/bin/${bin} ${destroot}${prefix}/bin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+proc janetpg::janet_setup {} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ destroot.env-append JANET_PATH=[option destroot][option prefix]/lib/janet
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-delete port:janet
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-append port:janet
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+port::register_callback janetpg::janet_setup
</span></pre><pre style='margin:0'>
</pre>