Interesting.
I downloaded the sources from here: https://snapshot.debian.org/package/cry ... %2Bdfsg-1/
and again, didn't find anything that would successfully bootstrap this.
debian/changelog says:
So I looked up bug822275, and there is this commentary:
Looking in the source dir of this 0.34.0 version, there is only one C/C++ file, that is the llvm_ext.cc, which doesn't contain very much at all, everything else is Crystal.
Again debian/rules doesn't seem to shed any light on how this is compiled so I assume it just is just running make inside the source dir.
Doing so gives me an error that it can't find llvm-config. Running LLVM_CONFIG=/usr/bin/llvm-config-14 make instead gives me a bunch of errors compiling llvm_ext.cc, indicating I'd probably need an older LLVM.
So I just quickly hacked the Makefile to prevent it trying to build llvm_ext.cc to see what would happen.
It invoked bin/crystal, which is a shell script that tries to find crystal, which found my system-installed crystal-1.6.0.
After doing apt remove crystal, trying the make again results in the message "You need to have a crystal executable in your path!"
So it would seem to me that in order to build this 0.34.0 version, they had to do some bootstrapping manually (perhaps following the bootstrap-script I originally mentioned, which no longer works), and maybe the details of how this was done have been lost.
I might try installing some old Debian versions in VMs, and see if the bootstrap-script works anywhere there.
I downloaded the sources from here: https://snapshot.debian.org/package/cry ... %2Bdfsg-1/
and again, didn't find anything that would successfully bootstrap this.
debian/changelog says:
Code:
crystal (0.34.0+dfsg-1) unstable; urgency=medium * Initial release (Closes: #822275). -- David Suárez <david.sephirot@gmail.com> Fri, 10 Apr 2020 17:26:40 +0200[1] just links to https://github.com/olbat/crystal which doesn't seem to have any additional commits beyond upstream.From: Luc Sarzyniec <debian@olbat.net>
To: submit@bugs.debian.org
Subject: RFP: crystal -- Compiler of the Crystal object-oriented programming language
Date: Fri, 22 Apr 2016 23:46:18 +0200
Package: wnpp
Severity: wishlist
* Package name : crystal
Version : 0.15.0
Upstream Author : Manas Technology Solutions <info@manas.com.ar>
* URL : http://crystal-lang.org/
* License : Apache-2.0
Programming Lang: Crystal
Description : Compiler of the Crystal object-oriented programming language
The Crystal's language syntax is inspired by Ruby, the language is statically
type-checked but does not require that the type of variables or method
arguments be specified.
The project's sources are hosted on GitHub [0].
I started to work on the Debian packaging of the project [1], but I still have
some issues to address. The first one: the compiler is written in Crystal so
crystal has to be specified in the package's build dependencies - I don't
really know how to handle it. This work may be used as a base to build
something cleaner.
Looking in the source dir of this 0.34.0 version, there is only one C/C++ file, that is the llvm_ext.cc, which doesn't contain very much at all, everything else is Crystal.
Again debian/rules doesn't seem to shed any light on how this is compiled so I assume it just is just running make inside the source dir.
Doing so gives me an error that it can't find llvm-config. Running LLVM_CONFIG=/usr/bin/llvm-config-14 make instead gives me a bunch of errors compiling llvm_ext.cc, indicating I'd probably need an older LLVM.
So I just quickly hacked the Makefile to prevent it trying to build llvm_ext.cc to see what would happen.
It invoked bin/crystal, which is a shell script that tries to find crystal, which found my system-installed crystal-1.6.0.
After doing apt remove crystal, trying the make again results in the message "You need to have a crystal executable in your path!"
So it would seem to me that in order to build this 0.34.0 version, they had to do some bootstrapping manually (perhaps following the bootstrap-script I originally mentioned, which no longer works), and maybe the details of how this was done have been lost.
I might try installing some old Debian versions in VMs, and see if the bootstrap-script works anywhere there.
Statistics: Posted by tycode — 2024-11-20 08:26