<pre style='margin:0'>
Renee Otten (reneeotten) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/5c6790d7ec5a0c0dfd27a831fc1374a581640d0a">https://github.com/macports/macports-ports/commit/5c6790d7ec5a0c0dfd27a831fc1374a581640d0a</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 5c6790d7ec5 hyprlang: new port in devel
</span>5c6790d7ec5 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 5c6790d7ec5a0c0dfd27a831fc1374a581640d0a
</span>Author: Sergey Fedorov <vital.had@gmail.com>
AuthorDate: Mon Mar 25 21:16:01 2024 +0800

<span style='display:block; white-space:pre;color:#404040;'>    hyprlang: new port in devel
</span>---
 devel/hyprlang/Portfile                            | 55 ++++++++++++++++++++++
 .../0001-config.cpp-fix-environ-for-Apple.patch    | 27 +++++++++++
 2 files changed, 82 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/hyprlang/Portfile b/devel/hyprlang/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..93851e3b966
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/hyprlang/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,55 @@
</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           cmake 1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           compiler_blacklist_versions 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        hyprwm hyprlang 0.5.0 v
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories          devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license             LGPL-2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers         {@barracuda156 gmail.com:vital.had} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description         The hypr configuration language is an extremely efficient, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    yet easy to work with, configuration language \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    for applications.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description    {*}${description}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage            https://hyprland.org/hyprlang
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  5d309779fdf2e9d4037daf69c2569e714e9558e4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  c59e705f2c2ff9ea4e2b183fdf0bc20a62b7162604a657d6352716a1fd5061b2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    54809
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.tarball_from archive
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# The port requires C++23, and builds either on macOS 13+ with clangs,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# or on old systems which can use libstdc++ with modern gcc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# libc++ of macOS 12 cannot handle it, and unfortunately
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Macports does not support building against libstdc++ anymore
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# on modern systems. In particular, on macOS 12
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# clang-17 fails at linking with this kind of error:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://stackoverflow.com/questions/58923623/stdto-chars-compile-but-not-linking-on-macos-clang
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# gcc13 is broken with libc++ at the moment:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://trac.macports.org/ticket/68592
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# gcc12 fails due to missing <expected>. gcc10-bootstrap also cannot build it,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# complaining about missing <format>.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Looks like we need to wait until Macports can supply a modern C++ runtime
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# for systems lacking it. Currently macports-libcxx uses clang-11 headers,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# which is too old. A manual solution would be to switch to libstdc++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# and build everything against it, with gcc13+.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms           {darwin < 11} {darwin > 23}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/hyprwm/hyprlang/commit/b3e430f81f3364c5dd1a3cc9995706a4799eb3fa
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   0001-config.cpp-fix-environ-for-Apple.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Requires C++23, but at the moment we need this trickery:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.cxx_standard       2020
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist-append   {clang} {macports-clang-1[1-6]}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${configure.cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    compiler.blacklist-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            macports-gcc-13
</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;'>+configure.pre_args-replace \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DCMAKE_BUILD_WITH_INSTALL_RPATH:BOOL=ON \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DCMAKE_BUILD_WITH_INSTALL_RPATH:BOOL=OFF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.run            yes
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/hyprlang/files/0001-config.cpp-fix-environ-for-Apple.patch b/devel/hyprlang/files/0001-config.cpp-fix-environ-for-Apple.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..cd57f6adea2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/hyprlang/files/0001-config.cpp-fix-environ-for-Apple.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,27 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From eabd4dcb26710d4b3a1b4ccafcfdb68faeb72460 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Sergey Fedorov <vital.had@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sun, 24 Mar 2024 10:10:11 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] config.cpp: fix environ for Apple
</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;'>+ src/config.cpp | 6 ++++++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 6 insertions(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/config.cpp src/config.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index dd4a0ce..94c908a 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/config.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/config.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10,7 +10,13 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cstring>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ using namespace Hyprlang;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <crt_externs.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define environ (*_NSGetEnviron())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern "C" char** environ;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // defines
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ inline constexpr const char* ANONYMOUS_KEY = "__hyprlang_internal_anonymous_key";
</span></pre><pre style='margin:0'>

</pre>