Re: lang/crystal: unbreak, update to 1.0.0

2021-06-07 Thread Charlene Wendling
On Mon, 7 Jun 2021 08:11:31 -0500
joshua stein  wrote:

> I sent an earlier version to the maintainer and pinged them on IRC 
> but got no response.

I've built and run-tested that update with a basic hello world, and met
no issues. 

OK cwen@



Re: lang/crystal: unbreak, update to 1.0.0

2021-06-07 Thread Gleydson Soares
On Mon, Jun 07, 2021 at 08:11:31AM -0500, joshua stein wrote:
> I sent an earlier version to the maintainer and pinged them on IRC 
> but got no response.

it seems that maintainer timeouts.
since it works for you, go for it, OK gsoares

> 
> 
> diff --git lang/crystal/Makefile lang/crystal/Makefile
> index 406341bee4a..99e0d5c4fc3 100644
> --- lang/crystal/Makefile
> +++ lang/crystal/Makefile
> @@ -1,12 +1,11 @@
>  # $OpenBSD: Makefile,v 1.10 2021/05/13 23:52:00 jca Exp $
>  
> -BROKEN = needs an update to support llvm-11
> -
>  # Hopefully ${CLANG_ARCHS} at some point.
>  ONLY_FOR_ARCHS=  amd64
>  
> -V =  0.30.1
> -V_SHARDS =   0.9.0
> +V =  1.0.0
> +V_SHARDS =   0.14.1
> +V_MOLINILLO =0.2.0
>  COMMENT =statically typed object oriented language
>  DISTNAME =   crystal-${V}
>  CATEGORIES = lang
> @@ -18,18 +17,27 @@ MAINTAINER =  Wesley Moxam 
>  PERMIT_PACKAGE = Yes
>  
>  WANTLIB += ${COMPILER_LIBCXX} c event_core event_extra gc iconv
> -WANTLIB += m pcre yaml
> +WANTLIB += m pcre crypto ssl yaml-0 z
> +
> +#
> +# crystal-X-OpenBSDX.X.tar.gz is an archive of a bootstrap compiler object
> +# (crystal.o) which can be cross-compiled on another platform by installing 
> the
> +# current version of Crystal there, then checking out the source for that
> +# version and running:
> +#
> +#make crystal FLAGS="--cross-compile --target amd64-unknown-openbsd6.9"
> +#
> +# The result will be built at .build/crystal.o
> +#
>  
> -# Requires a bootstrap compiler object (crystal.o) which can be built by:
> -# .build/crystal build --cross-compile \
> -#--target amd64-unknown-openbsd`uname -r` src/compiler/crystal.cr \
> -#-D i_know_what_im_doing
>  MASTER_SITES =   https://github.com/crystal-lang/crystal/archive/
> -MASTER_SITES0 =  https://wmoxam.com/public/
> +MASTER_SITES0 =  https://jcs.org/distfiles/
>  MASTER_SITES1 =  https://github.com/crystal-lang/shards/archive/
> +MASTER_SITES2 =  
> https://github.com/crystal-lang/crystal-molinillo/archive/
>  DISTFILES =  crystal-${V}{${V}}.tar.gz \
> - crystal-${V}-OpenBSD6.5.tar.gz:0 \
> - shards-${V}{v${V_SHARDS}}.tar.gz:1
> + crystal-${V}-OpenBSD6.9.tar.gz:0 \
> + shards-${V}{v${V_SHARDS}}.tar.gz:1 \
> + crystal-molinillo-${V}{v${V_MOLINILLO}}.tar.gz:2
>  
>  # Build requires llvm-config from ports, not from base
>  COMPILER =   ports-clang
> @@ -49,6 +57,10 @@ ALL_TARGET =   crystal release=1
>  
>  NO_TEST =Yes
>  
> +post-extract:
> + mv ${WRKDIR}/shards-${V_SHARDS} ${WRKSRC}/
> + mv ${WRKDIR}/crystal-molinillo-${V_MOLINILLO} ${WRKSRC}/
> +
>  do-build:
>   mkdir -p ${WRKSRC}/.build
>   # Link the compiler from the pre-built bootstrap object
> @@ -57,27 +69,21 @@ do-build:
>   cd ${WRKSRC} && ${CXX} -rdynamic -o ${WRKBUILD}/.build/crystal \
>   ${WRKSRC}/../crystal.o \
>   ${WRKSRC}/src/llvm/ext/llvm_ext.o \
> - ${WRKSRC}/src/ext/sigfault.o \
> + ${WRKSRC}/src/ext/libcrystal.a \
>   -L${LOCALBASE}/lib \
>   `(${LLVM_CONFIG} --libs --system-libs --ldflags 2> /dev/null)` \
>   -lz -lpcre -lgc -lpthread -levent_core -levent_extra -lssl \
> - -lcrypto -liconv
> - # Use the compiler to re-compile the compiler
> - touch ${WRKSRC}/src/compiler/crystal.cr
> - cd ${WRKSRC}; \
> - ulimit -s 5120 -d 4096000 && \
> - CRYSTAL_CONFIG_PATH="lib:${TRUEPREFIX}/lib/crystal" \
> - CXX=${CXX} LLVM_CONFIG=${LLVM_CONFIG} \
> - ${MAKE_PROGRAM} ${ALL_TARGET}
> - cd ${WRKSRC}/../shards-${V_SHARDS} && \
> - ${MAKE_PROGRAM} CRYSTAL=${WRKSRC}/.build/crystal \
> - CRYSTAL_PATH=${WRKSRC}/src CRFLAGS=--release
> + -lcrypto -liconv -lc++abi
> + cd ${WRKSRC}/shards-${V_SHARDS} && \
> + env CRYSTAL_PATH=lib:${WRKSRC}/src \
> + CRYSTAL=${WRKSRC}/.build/crystal \
> + ${MAKE_PROGRAM}
>  
>  do-install:
>   ${INSTALL_DATA_DIR} ${PREFIX}/lib/crystal
>   ${INSTALL_PROGRAM} ${WRKSRC}/.build/crystal ${PREFIX}/bin
>   cd ${WRKSRC}/src && pax -rw . ${PREFIX}/lib/crystal/
> - ${INSTALL_PROGRAM} ${WRKSRC}/../shards-${V_SHARDS}/bin/shards \
> + ${INSTALL_PROGRAM} ${WRKSRC}/shards-${V_SHARDS}/bin/shards \
>   ${PREFIX}/bin
>  
>  .include 
> diff --git lang/crystal/distinfo lang/crystal/distinfo
> index 5cf9a544801..3d3e9e90d8c 100644
> --- lang/crystal/distinfo
> +++ lang/crystal/distinfo
> @@ -1,6 +1,8 @@
> -SHA256 (crystal-0.30.1-OpenBSD6.5.tar.gz) = 
> xbFY8RkhoDFnsK++X5C3YFsSNS7arkwwu1yBsrCR6vY=
> -SHA256 (crystal-0.30.1.tar.gz) = D/wA+lSSnCUzvAvLieCwAd06vEcMzIfjV2BHpc2vwGI=
> -SHA256 (shards-0.30.1.tar.gz) = kPIwyHzHuUyoReb+NPJSPtyttWLXFdqvmGA+36KpTWU=
> -SIZE (crystal-0.30.1-OpenBSD6.5.tar.gz) = 7035204
> -SIZE (crystal-0.30.1.tar.gz) = 2153037
> -SIZE (shards-0.30.1.tar.gz) = 41280

lang/crystal: unbreak, update to 1.0.0

2021-06-07 Thread joshua stein
I sent an earlier version to the maintainer and pinged them on IRC 
but got no response.


diff --git lang/crystal/Makefile lang/crystal/Makefile
index 406341bee4a..99e0d5c4fc3 100644
--- lang/crystal/Makefile
+++ lang/crystal/Makefile
@@ -1,12 +1,11 @@
 # $OpenBSD: Makefile,v 1.10 2021/05/13 23:52:00 jca Exp $
 
-BROKEN =   needs an update to support llvm-11
-
 # Hopefully ${CLANG_ARCHS} at some point.
 ONLY_FOR_ARCHS=amd64
 
-V =0.30.1
-V_SHARDS = 0.9.0
+V =1.0.0
+V_SHARDS = 0.14.1
+V_MOLINILLO =  0.2.0
 COMMENT =  statically typed object oriented language
 DISTNAME = crystal-${V}
 CATEGORIES =   lang
@@ -18,18 +17,27 @@ MAINTAINER =Wesley Moxam 
 PERMIT_PACKAGE =   Yes
 
 WANTLIB += ${COMPILER_LIBCXX} c event_core event_extra gc iconv
-WANTLIB += m pcre yaml
+WANTLIB += m pcre crypto ssl yaml-0 z
+
+#
+# crystal-X-OpenBSDX.X.tar.gz is an archive of a bootstrap compiler object
+# (crystal.o) which can be cross-compiled on another platform by installing the
+# current version of Crystal there, then checking out the source for that
+# version and running:
+#
+#  make crystal FLAGS="--cross-compile --target amd64-unknown-openbsd6.9"
+#
+# The result will be built at .build/crystal.o
+#
 
-# Requires a bootstrap compiler object (crystal.o) which can be built by:
-# .build/crystal build --cross-compile \
-#  --target amd64-unknown-openbsd`uname -r` src/compiler/crystal.cr \
-#  -D i_know_what_im_doing
 MASTER_SITES = https://github.com/crystal-lang/crystal/archive/
-MASTER_SITES0 =https://wmoxam.com/public/
+MASTER_SITES0 =https://jcs.org/distfiles/
 MASTER_SITES1 =https://github.com/crystal-lang/shards/archive/
+MASTER_SITES2 =
https://github.com/crystal-lang/crystal-molinillo/archive/
 DISTFILES =crystal-${V}{${V}}.tar.gz \
-   crystal-${V}-OpenBSD6.5.tar.gz:0 \
-   shards-${V}{v${V_SHARDS}}.tar.gz:1
+   crystal-${V}-OpenBSD6.9.tar.gz:0 \
+   shards-${V}{v${V_SHARDS}}.tar.gz:1 \
+   crystal-molinillo-${V}{v${V_MOLINILLO}}.tar.gz:2
 
 # Build requires llvm-config from ports, not from base
 COMPILER = ports-clang
@@ -49,6 +57,10 @@ ALL_TARGET = crystal release=1
 
 NO_TEST =  Yes
 
+post-extract:
+   mv ${WRKDIR}/shards-${V_SHARDS} ${WRKSRC}/
+   mv ${WRKDIR}/crystal-molinillo-${V_MOLINILLO} ${WRKSRC}/
+
 do-build:
mkdir -p ${WRKSRC}/.build
# Link the compiler from the pre-built bootstrap object
@@ -57,27 +69,21 @@ do-build:
cd ${WRKSRC} && ${CXX} -rdynamic -o ${WRKBUILD}/.build/crystal \
${WRKSRC}/../crystal.o \
${WRKSRC}/src/llvm/ext/llvm_ext.o \
-   ${WRKSRC}/src/ext/sigfault.o \
+   ${WRKSRC}/src/ext/libcrystal.a \
-L${LOCALBASE}/lib \
`(${LLVM_CONFIG} --libs --system-libs --ldflags 2> /dev/null)` \
-lz -lpcre -lgc -lpthread -levent_core -levent_extra -lssl \
-   -lcrypto -liconv
-   # Use the compiler to re-compile the compiler
-   touch ${WRKSRC}/src/compiler/crystal.cr
-   cd ${WRKSRC}; \
-   ulimit -s 5120 -d 4096000 && \
-   CRYSTAL_CONFIG_PATH="lib:${TRUEPREFIX}/lib/crystal" \
-   CXX=${CXX} LLVM_CONFIG=${LLVM_CONFIG} \
-   ${MAKE_PROGRAM} ${ALL_TARGET}
-   cd ${WRKSRC}/../shards-${V_SHARDS} && \
-   ${MAKE_PROGRAM} CRYSTAL=${WRKSRC}/.build/crystal \
-   CRYSTAL_PATH=${WRKSRC}/src CRFLAGS=--release
+   -lcrypto -liconv -lc++abi
+   cd ${WRKSRC}/shards-${V_SHARDS} && \
+   env CRYSTAL_PATH=lib:${WRKSRC}/src \
+   CRYSTAL=${WRKSRC}/.build/crystal \
+   ${MAKE_PROGRAM}
 
 do-install:
${INSTALL_DATA_DIR} ${PREFIX}/lib/crystal
${INSTALL_PROGRAM} ${WRKSRC}/.build/crystal ${PREFIX}/bin
cd ${WRKSRC}/src && pax -rw . ${PREFIX}/lib/crystal/
-   ${INSTALL_PROGRAM} ${WRKSRC}/../shards-${V_SHARDS}/bin/shards \
+   ${INSTALL_PROGRAM} ${WRKSRC}/shards-${V_SHARDS}/bin/shards \
${PREFIX}/bin
 
 .include 
diff --git lang/crystal/distinfo lang/crystal/distinfo
index 5cf9a544801..3d3e9e90d8c 100644
--- lang/crystal/distinfo
+++ lang/crystal/distinfo
@@ -1,6 +1,8 @@
-SHA256 (crystal-0.30.1-OpenBSD6.5.tar.gz) = 
xbFY8RkhoDFnsK++X5C3YFsSNS7arkwwu1yBsrCR6vY=
-SHA256 (crystal-0.30.1.tar.gz) = D/wA+lSSnCUzvAvLieCwAd06vEcMzIfjV2BHpc2vwGI=
-SHA256 (shards-0.30.1.tar.gz) = kPIwyHzHuUyoReb+NPJSPtyttWLXFdqvmGA+36KpTWU=
-SIZE (crystal-0.30.1-OpenBSD6.5.tar.gz) = 7035204
-SIZE (crystal-0.30.1.tar.gz) = 2153037
-SIZE (shards-0.30.1.tar.gz) = 41280
+SHA256 (crystal-1.0.0-OpenBSD6.9.tar.gz) = 
uurii6KU+6R9n7u9Bh8RsTrULa2bW8QO+iOD39Cyjuo=
+SHA256 (crystal-1.0.0.tar.gz) = a4XJE5qJFzLB8QY4AwY1/52+TmgYytgaXb1y20CRMBk=
+SHA256 (crystal-molinillo-1.0.0.tar.gz) = 
4jHPJBGmoRoVOJg8f7UrGeZQrMMzi9PN9v2xPWRjhho=
+SHA256