<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>