here's a diff to use the relatively new DIST_TUPLE mechanism to tidy up fetch/extract. ok?
(I was looking at the port to see if it could be updated to use llvm 18; chromium browsers will soon switch to llvm 19, and this will be the only thing left using 17 - which takes about 3.5h to build - but hitting a "can't reopen enum and add more constants to it" error when trying to generate a new bootstrap on OpenBSD). Index: Makefile =================================================================== RCS file: /cvs/ports/lang/crystal/Makefile,v diff -u -p -r1.27 Makefile --- Makefile 27 Aug 2024 13:55:33 -0000 1.27 +++ Makefile 23 Dec 2024 12:01:43 -0000 @@ -6,6 +6,11 @@ USE_NOBTCFI = Yes V = 1.13.2 V_SHARDS = 0.18.0 V_MOLINILLO = 0.2.0 + +DIST_TUPLE = github crystal-lang crystal ${V} . \ + github crystal-lang shards v${V_SHARDS} shards-${V_SHARDS} \ + github crystal-lang crystal-molinillo v${V_MOLINILLO} shards-${V_SHARDS}/lib/molinillo + COMMENT = statically typed object oriented language DISTNAME = crystal-${V} CATEGORIES = lang @@ -25,19 +30,13 @@ WANTLIB += yaml-0 # 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.5" +# make crystal FLAGS="--cross-compile --target amd64-unknown-openbsd7.6" # # The result will be built at .build/crystal.o # -SITES = https://github.com/crystal-lang/crystal/archive/ -SITES.a = https://jcs.org/distfiles/ -SITES.b = https://github.com/crystal-lang/shards/archive/ -SITES.c = https://github.com/crystal-lang/crystal-molinillo/archive/ -DISTFILES = crystal-${V}{${V}}.tar.gz -DISTFILES.a = crystal-${V}-OpenBSD7.6.tar.gz -DISTFILES.b = shards-${V}{v${V_SHARDS}}.tar.gz -DISTFILES.c = crystal-molinillo-${V}{v${V_MOLINILLO}}.tar.gz +SITES = https://jcs.org/distfiles/ +DISTFILES = crystal-${V}-OpenBSD7.6.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 @@ -57,12 +56,6 @@ USE_GMAKE = Yes ALL_TARGET = crystal release=1 TEST_TARGET = smoke_test SUBST_VARS = MODCLANG_VERSION - -post-extract: - mv ${WRKDIR}/shards-${V_SHARDS} ${WRKSRC}/ - mkdir ${WRKSRC}/shards-${V_SHARDS}/lib - mv ${WRKDIR}/crystal-molinillo-${V_MOLINILLO} \ - ${WRKSRC}/shards-${V_SHARDS}/lib/molinillo do-build: mkdir -p ${WRKSRC}/.build Index: distinfo =================================================================== RCS file: /cvs/ports/lang/crystal/distinfo,v diff -u -p -r1.14 distinfo --- distinfo 27 Aug 2024 13:55:33 -0000 1.14 +++ distinfo 23 Dec 2024 12:01:43 -0000 @@ -1,8 +1,8 @@ SHA256 (crystal-1.13.2-OpenBSD7.6.tar.gz) = qzmlylaK5m20xfa/2+QaZxAt+avm37Ua71fQ5thcWVQ= -SHA256 (crystal-1.13.2.tar.gz) = xTczbBD/DZzTZz4ZUWVmfkeL6S4KjMZmS97FuWB0XEs= -SHA256 (crystal-molinillo-1.13.2.tar.gz) = 4jHPJBGmoRoVOJg8f7UrGeZQrMMzi9PN9v2xPWRjhho= -SHA256 (shards-1.13.2.tar.gz) = Rqgwr9kpKAc112XlnYwnrJupLt3elkeufT/IWt3DjMU= +SHA256 (crystal-lang-crystal-1.13.2.tar.gz) = xTczbBD/DZzTZz4ZUWVmfkeL6S4KjMZmS97FuWB0XEs= +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.13.2-OpenBSD7.6.tar.gz) = 10272541 -SIZE (crystal-1.13.2.tar.gz) = 3687101 -SIZE (crystal-molinillo-1.13.2.tar.gz) = 23959 -SIZE (shards-1.13.2.tar.gz) = 79910 +SIZE (crystal-lang-crystal-1.13.2.tar.gz) = 3687101 +SIZE (crystal-lang-crystal-molinillo-v0.2.0.tar.gz) = 23959 +SIZE (crystal-lang-shards-v0.18.0.tar.gz) = 79910