<pre style='margin:0'>
Kurt Hindenburg (kurthindenburg) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/8b21edc53f13aec1a80e829ce1bcabc809b2b288">https://github.com/macports/macports-ports/commit/8b21edc53f13aec1a80e829ce1bcabc809b2b288</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 8b21edc shc: new port shell script compiler
</span>8b21edc is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 8b21edc53f13aec1a80e829ce1bcabc809b2b288
</span>Author: Kurt Hindenburg <khindenburg@macports.org>
AuthorDate: Thu Feb 9 10:05:07 2017 -0500
<span style='display:block; white-space:pre;color:#404040;'> shc: new port shell script compiler
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> closes https://trac.macports.org/ticket/53416
</span>---
devel/shc/Portfile | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/shc/Portfile b/devel/shc/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..66386c5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/shc/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,31 @@
</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;'>+PortSystem 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup github 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup neurobin shc 3.9.3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license GPL-3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers {khindenburg @kurthindenburg} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description Shell Script Compiler
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description SHC is a generic shell script compiler. It takes a script,\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ which is specified on the command line and produces C source code. \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ The generated source code is then compiled and linked to produce a stripped\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ binary. The compiled binary will still be dependent on the shell specified \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ in the first line of the shell code (i.e shebang: #!/bin/sh or such), \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ thus shc does not create completely independent binaries. \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ shc itself is not a compiler such as cc, it rather encodes and encrypts \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ a shell script and generates C source code with the added expiration\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ capability. It then uses the system compiler to compile a stripped binary \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ which behaves exactly like the original script. Upon execution, the \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ compiled binary will decrypt and execute the code with the shells' -c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ option.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 9390a387be6d3ebd6e6a62981bbb23296372b74e \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 b0c5fd28e734bfaf3bcc320ef78d5857a4a2d4bfc19b9530698a1e134431eb8f
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Do not grab alpha releases
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.regex (\[0-9\]+\\.\[0-9\]+\\.\[0-9\]+)${extract.suffix}
</span></pre><pre style='margin:0'>
</pre>