Index | Thread | Search

From:
joshua stein <jcs@jcs.org>
Subject:
Re: Removing llvm/18
To:
ports@openbsd.org
Date:
Sun, 15 Jun 2025 23:52:42 -0500

Download raw body.

Thread
On Mon, 16 Jun 2025 at 05:58:39 +0200, Theo Buehler wrote:
> lang/crystal		should support 19 already

here's an update


diff --git lang/crystal/Makefile lang/crystal/Makefile
index a329d31861d..61a0bad46b7 100644
--- lang/crystal/Makefile
+++ lang/crystal/Makefile
@@ -3,8 +3,8 @@ ONLY_FOR_ARCHS=	amd64
 
 USE_NOBTCFI =	Yes
 
-V =		1.15.1
-V_SHARDS =	0.18.0
+V =		1.16.2
+V_SHARDS =	0.19.1
 V_MOLINILLO =	0.2.0
 
 DIST_TUPLE =	github crystal-lang crystal ${V} . \
@@ -30,19 +30,19 @@ WANTLIB +=	yaml-0 llvm${MODCLANG_VERSION}/lib/LLVM
 # current version of Crystal there, then checking out the source for that
 # version, applying patches included in this port, and running:
 #
-# 	make crystal FLAGS="--cross-compile --target amd64-unknown-openbsd7.6"
+# 	make crystal FLAGS="--cross-compile --target amd64-unknown-openbsd7.7"
 #
 # The result will be built at .build/crystal.o
 #
 
 SITES =		https://jcs.org/distfiles/
-DISTFILES =	crystal-${V}-OpenBSD7.6.tar.gz
+DISTFILES =	crystal-${V}-OpenBSD7.7.tar.gz
 
 # Build requires llvm-config from ports, not from base.  When changing
 # MODCLANG_VERSION, keep paths in patches/ in sync here and in bootstrap
 # environment.
 MODULES =	lang/clang
-MODCLANG_VERSION = 18
+MODCLANG_VERSION = 19
 MODCLANG_RUNDEP= yes
 COMPILER =	ports-clang
 LLVM_CONFIG =	llvm-config-${MODCLANG_VERSION}
diff --git lang/crystal/distinfo lang/crystal/distinfo
index 74844eea1f4..6412fc6dcc5 100644
--- lang/crystal/distinfo
+++ lang/crystal/distinfo
@@ -1,8 +1,8 @@
-SHA256 (crystal-1.15.1-OpenBSD7.6.tar.gz) = 2FaZ69ORZscyPwEbYX+U57V5dX3uztpApLArgbeIEwc=
-SHA256 (crystal-lang-crystal-1.15.1.tar.gz) = crMvLaCQWcqWMxvhJM9hHTxr1tqA9SzVUd9Zv+FObr0=
+SHA256 (crystal-1.16.2-OpenBSD7.7.tar.gz) = m506O/bEi3hEfxWCvKnWy2C84QF0cA+C99OFQIsxMfo=
+SHA256 (crystal-lang-crystal-1.16.2.tar.gz) = TwMnYaQBjG+88WSbhmIX2esvMTlZnHD8ttrINxSDnF4=
 SHA256 (crystal-lang-crystal-molinillo-v0.2.0.tar.gz) = 4jHPJBGmoRoVOJg8f7UrGeZQrMMzi9PN9v2xPWRjhho=
-SHA256 (crystal-lang-shards-v0.18.0.tar.gz) = Rqgwr9kpKAc112XlnYwnrJupLt3elkeufT/IWt3DjMU=
-SIZE (crystal-1.15.1-OpenBSD7.6.tar.gz) = 10620483
-SIZE (crystal-lang-crystal-1.15.1.tar.gz) = 3814922
+SHA256 (crystal-lang-shards-v0.19.1.tar.gz) = Kknn/6QCXgs+h3RiD6jbwifT0eR2IR/vougWbcq/grU=
+SIZE (crystal-1.16.2-OpenBSD7.7.tar.gz) = 11768984
+SIZE (crystal-lang-crystal-1.16.2.tar.gz) = 3719814
 SIZE (crystal-lang-crystal-molinillo-v0.2.0.tar.gz) = 23959
-SIZE (crystal-lang-shards-v0.18.0.tar.gz) = 79910
+SIZE (crystal-lang-shards-v0.19.1.tar.gz) = 83440
diff --git lang/crystal/patches/patch-bin_crystal lang/crystal/patches/patch-bin_crystal
index e2728537613..d998f0d4e59 100644
--- lang/crystal/patches/patch-bin_crystal
+++ lang/crystal/patches/patch-bin_crystal
@@ -7,12 +7,12 @@ Index: bin/crystal
  
  ################## https://github.com/mkropat/sh-realpath #####################
  #
-@@ -188,6 +188,8 @@ esac
+@@ -193,6 +193,8 @@ export CRYSTAL_EXEC_PATH
  
  if [ -x "$CRYSTAL_DIR/${CRYSTAL_BIN}" ]; then
    __warning_msg "Using compiled compiler at ${CRYSTAL_DIR#"$PWD/"}/${CRYSTAL_BIN}"
-+  export LD_LIBRARY_PATH=/usr/local/llvm18/lib
-+  export LLVM_CONFIG=/usr/local/llvm18/bin/llvm-config
++  export LD_LIBRARY_PATH=/usr/local/llvm19/lib
++  export LLVM_CONFIG=/usr/local/llvm19/bin/llvm-config
    exec "$CRYSTAL_DIR/${CRYSTAL_BIN}" "$@"
  elif (! $PARENT_CRYSTAL_EXISTS); then
    __error_msg 'You need to have a crystal executable in your path! or set CRYSTAL env variable'
diff --git lang/crystal/patches/patch-src_compiler_crystal_compiler_cr lang/crystal/patches/patch-src_compiler_crystal_compiler_cr
index 5bdf2cff4d2..78f39b0c069 100644
--- lang/crystal/patches/patch-src_compiler_crystal_compiler_cr
+++ lang/crystal/patches/patch-src_compiler_crystal_compiler_cr
@@ -8,7 +8,7 @@ Index: src/compiler/crystal/compiler.cr
          end
  
 +        if program.has_flag?("openbsd")
-+          link_flags += " -L/usr/local/llvm18/lib"
++          link_flags += " -L/usr/local/llvm19/lib"
 +        end
 +
          {DEFAULT_LINKER, %(#{DEFAULT_LINKER} "${@}" -o #{Process.quote_posix(output_filename)} #{link_flags} #{program.lib_flags(@cross_compile)}), object_names}
diff --git lang/crystal/pkg/PLIST lang/crystal/pkg/PLIST
index d503c1b6a2f..71eed5581ed 100644
--- lang/crystal/pkg/PLIST
+++ lang/crystal/pkg/PLIST
@@ -41,6 +41,15 @@ lib/crystal/compiler/crystal/
 lib/crystal/compiler/crystal.cr
 lib/crystal/compiler/crystal/annotatable.cr
 lib/crystal/compiler/crystal/codegen/
+lib/crystal/compiler/crystal/codegen/abi/
+lib/crystal/compiler/crystal/codegen/abi.cr
+lib/crystal/compiler/crystal/codegen/abi/aarch64.cr
+lib/crystal/compiler/crystal/codegen/abi/arm.cr
+lib/crystal/compiler/crystal/codegen/abi/avr.cr
+lib/crystal/compiler/crystal/codegen/abi/wasm32.cr
+lib/crystal/compiler/crystal/codegen/abi/x86.cr
+lib/crystal/compiler/crystal/codegen/abi/x86_64.cr
+lib/crystal/compiler/crystal/codegen/abi/x86_win64.cr
 lib/crystal/compiler/crystal/codegen/asm.cr
 lib/crystal/compiler/crystal/codegen/ast.cr
 lib/crystal/compiler/crystal/codegen/cache_dir.cr
@@ -279,9 +288,9 @@ lib/crystal/compiler/crystal/tools/playground/public/vendor/materialize-v0.97.5/
 lib/crystal/compiler/crystal/tools/playground/public/vendor/materialize-v0.97.5/css/materialize.min.css
 lib/crystal/compiler/crystal/tools/playground/public/vendor/materialize-v0.97.5/js/
 lib/crystal/compiler/crystal/tools/playground/public/vendor/materialize-v0.97.5/js/materialize.min.js
-lib/crystal/compiler/crystal/tools/playground/public/vendor/octicons-19.5.0/
-lib/crystal/compiler/crystal/tools/playground/public/vendor/octicons-19.5.0/octicons.css
-lib/crystal/compiler/crystal/tools/playground/public/vendor/octicons-19.5.0/octicons.svg
+lib/crystal/compiler/crystal/tools/playground/public/vendor/octicons-${MODCLANG_VERSION}.5.0/
+lib/crystal/compiler/crystal/tools/playground/public/vendor/octicons-${MODCLANG_VERSION}.5.0/octicons.css
+lib/crystal/compiler/crystal/tools/playground/public/vendor/octicons-${MODCLANG_VERSION}.5.0/octicons.svg
 lib/crystal/compiler/crystal/tools/playground/server.cr
 lib/crystal/compiler/crystal/tools/playground/views/
 lib/crystal/compiler/crystal/tools/playground/views/_about.html
@@ -387,6 +396,7 @@ lib/crystal/crystal/once.cr
 lib/crystal/crystal/pe.cr
 lib/crystal/crystal/pointer_linked_list.cr
 lib/crystal/crystal/pointer_pairing_heap.cr
+lib/crystal/crystal/print_buffered.cr
 lib/crystal/crystal/rw_lock.cr
 lib/crystal/crystal/scheduler.cr
 lib/crystal/crystal/small_deque.cr
@@ -417,6 +427,7 @@ lib/crystal/crystal/system/thread.cr
 lib/crystal/crystal/system/thread_condition_variable.cr
 lib/crystal/crystal/system/thread_linked_list.cr
 lib/crystal/crystal/system/thread_mutex.cr
+lib/crystal/crystal/system/thread_wait_group.cr
 lib/crystal/crystal/system/time.cr
 lib/crystal/crystal/system/unix/
 lib/crystal/crystal/system/unix.cr
@@ -568,11 +579,26 @@ lib/crystal/fiber/context/interpreted.cr
 lib/crystal/fiber/context/wasm32.cr
 lib/crystal/fiber/context/x86_64-microsoft.cr
 lib/crystal/fiber/context/x86_64-sysv.cr
+lib/crystal/fiber/execution_context/
+lib/crystal/fiber/execution_context.cr
+lib/crystal/fiber/execution_context/global_queue.cr
+lib/crystal/fiber/execution_context/isolated.cr
+lib/crystal/fiber/execution_context/monitor.cr
+lib/crystal/fiber/execution_context/multi_threaded/
+lib/crystal/fiber/execution_context/multi_threaded.cr
+lib/crystal/fiber/execution_context/multi_threaded/scheduler.cr
+lib/crystal/fiber/execution_context/runnables.cr
+lib/crystal/fiber/execution_context/scheduler.cr
+lib/crystal/fiber/execution_context/single_threaded.cr
+lib/crystal/fiber/list.cr
+lib/crystal/fiber/pointer_linked_list_node.cr
+lib/crystal/fiber/stack.cr
 lib/crystal/fiber/stack_pool.cr
 lib/crystal/file/
 lib/crystal/file.cr
 lib/crystal/file/error.cr
 lib/crystal/file/info.cr
+lib/crystal/file/match.cr
 lib/crystal/file/preader.cr
 lib/crystal/file/tempfile.cr
 lib/crystal/file_utils.cr
@@ -614,6 +640,7 @@ lib/crystal/http/client/response.cr
 lib/crystal/http/common.cr
 lib/crystal/http/content.cr
 lib/crystal/http/cookie.cr
+lib/crystal/http/cookies.cr
 lib/crystal/http/formdata/
 lib/crystal/http/formdata.cr
 lib/crystal/http/formdata/builder.cr
@@ -1470,7 +1497,7 @@ lib/crystal/llvm/enums/
 lib/crystal/llvm/enums.cr
 lib/crystal/llvm/enums/atomic.cr
 lib/crystal/llvm/ext/
-lib/crystal/llvm/ext/find-llvm-config
+lib/crystal/llvm/ext/find-llvm-config.sh
 lib/crystal/llvm/ext/llvm-versions.txt
 lib/crystal/llvm/ext/llvm_ext.cc
 lib/crystal/llvm/ext/llvm_ext.o
@@ -1575,7 +1602,9 @@ lib/crystal/oauth2/client.cr
 lib/crystal/oauth2/error.cr
 lib/crystal/oauth2/oauth2.cr
 lib/crystal/oauth2/session.cr
+lib/crystal/object/
 lib/crystal/object.cr
+lib/crystal/object/properties.cr
 lib/crystal/openssl/
 lib/crystal/openssl.cr
 lib/crystal/openssl/algorithm.cr