GNU bug report logs - #56806
[PATCH 0/9] Add the Haxe language and tools.

Previous Next

Package: guix-patches;

Reported by: John Kehayias <john.kehayias <at> protonmail.com>

Date: Thu, 28 Jul 2022 04:07:02 UTC

Severity: normal

Tags: patch

Done: 宋文武 <iyzsong <at> envs.net>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: 宋文武 <iyzsong <at> envs.net>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#56806: closed ([PATCH 0/9] Add the Haxe language and tools.)
Date: Wed, 03 Aug 2022 06:54:03 +0000
[Message part 1 (text/plain, inline)]
Your message dated Wed, 03 Aug 2022 14:53:43 +0800
with message-id <878ro5rf60.fsf <at> envs.net>
and subject line Re: bug#56806: [PATCH 0/9] Add the Haxe language and tools.
has caused the debbugs.gnu.org bug report #56806,
regarding [PATCH 0/9] Add the Haxe language and tools.
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
56806: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=56806
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: John Kehayias <john.kehayias <at> protonmail.com>
To: Guix-patches <guix-patches <at> gnu.org>
Subject: [PATCH 0/9] Add the Haxe language and tools.
Date: Thu, 28 Jul 2022 04:06:27 +0000
Hi Guix,

Incoming is a patch series to add the Haxe [0] language and tools, including the language/VM Neko [1] that it is built with and the Haxe VM Hashlink [2]. It starts with OCaml that these are built on top of, and includes some other needed packages. Here is a breakdown of what the patches do:

Patch 1-4: Add needed OCaml dependencies. I relied on the importer and fixed up the builds, descriptions, licenses, etc. I haven't packaged any OCaml before (or know anything about it), but everything appeared to work and I followed our existing packages.

Patch 5 & 6: Add 2 small libraries, minimp3 and mikktspace.

Minimp3 is a single header library, though also included the extended version (so, 2 headers). The repo has a lot of other files for what looks like tests, but wasn't sure how to easily run them with all the files and scripts and a lack of instructions. I left that as a TODO for the future.

Mikktspace is a header and C file. There is no makefile or instructions, so upon discussion on #guix I built a shared library manually. It works for what I needed and means Hashlink can be completely unbundled.

Patch 7-9: Add Neko (language/VM used to build Haxe), the Haxe toolkit, and the Haxe VM Hashlink.

Haxe: this builds the compiler and library manager, haxelib. Perhaps these could be separated, but it seemed to make more sense to keep them together as intended by upstream. haxelib-src is a bare origin to use rather than Haxe's haxelib submodule. There was also a manual change so that the default location haxelib will suggest for libraries is user writeable: ~/.haxe/lib (rather than /usr/lib/haxe/lib).

Hashlink: unbundled the included libraries with Guix packages. I left a comment about there being a CMake build that seemed perhaps incomplete (there is bug reports on confusion of how to build with CMake) and is also where the tests seemed to be. I could get the CMake build to build, but it didn't build everything needed and didn't seem to be fully linked. The tests may also need network access as they want to call haxelib (typically would download haxe libraries). Tests disabled until future updates can sort this out.

I've run guix lint on all and have built and used Haxe and Hashlink. Everything seems to run well, it can download Haxe libraries to then build, the Hashlink VM works to run e.g. SDL graphics code; even building to JS with Haxe works just fine. I used [3] as an example of a non-trivial Haxe package, using the Heaps.io game engine [4]; everything worked without modification.

I put Neko (since it is used to build Haxe) and the Haxe packages in a new module (gnu packages haxe). Perhaps in the future someone may want a haxe-build-system to manage libraries with Guix, but so far everything works well with how Haxe wants it to.

Hope everything looks good, let me know any needed changes.

John

[0] https://haxe.org/

[1] https://nekovm.org/

[2] https://hashlink.haxe.org/

[3] https://github.com/deepnight/gameBase

[4] https://heaps.io/


[Message part 3 (message/rfc822, inline)]
From: 宋文武 <iyzsong <at> envs.net>
To: John Kehayias <john.kehayias <at> protonmail.com>
Cc: 56806-done <at> debbugs.gnu.org
Subject: Re: bug#56806: [PATCH 0/9] Add the Haxe language and tools.
Date: Wed, 03 Aug 2022 14:53:43 +0800
John Kehayias <john.kehayias <at> protonmail.com> writes:

> Hi Guix,
>
> Incoming is a patch series to add the Haxe [0] language and tools,
> including the language/VM Neko [1] that it is built with and the Haxe
> VM Hashlink [2]. It starts with OCaml that these are built on top of,
> and includes some other needed packages. 
> [...]

Look great to me, pushed, thank you!

I only removed 'XML-Light' from the synopsis of ocaml-xml-light.


This bug report was last modified 3 years and 5 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.