Github messages for voidlinux
 help / color / mirror / Atom feed
From: AlaskanEmily <AlaskanEmily@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] New package: mercury-22.01_1, mercury-libs-22.01_1, mercury-tools-22.01_1
Date: Tue, 02 Aug 2022 05:11:55 +0200	[thread overview]
Message-ID: <20220802031155.et4ueoVC6VBY-lCK0hDhf1Xzq2ud_cIR524VE95citY@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-36905@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 1351 bytes --]

There is an updated pull request by AlaskanEmily against master on the void-packages repository

https://github.com/AlaskanEmily/void-packages master
https://github.com/void-linux/void-packages/pull/36905

New package: mercury-22.01_1, mercury-libs-22.01_1, mercury-tools-22.01_1
#### Testing the changes
- I tested the changes in this PR: **YES**

#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
#### Local build testing
- I built this PR locally for my native architecture, (x86_64-glibc)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - x86_64-musl
  - i686-glibc

I have marked the parallel toolchain options disabled for musl, as in the last those have had issues and I have not tested that configuration enough to be sure it works properly.


A patch file from https://github.com/void-linux/void-packages/pull/36905.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-master-36905.patch --]
[-- Type: text/x-diff, Size: 5903 bytes --]

From ad69cd0ccbe74295ea30c71ad89054682f4d13b2 Mon Sep 17 00:00:00 2001
From: AlaskanEmily <emily@alaskanemily.net>
Date: Sun, 3 Jul 2022 17:14:20 -0700
Subject: [PATCH] New package: mercury-22.01_1, mercury-libs-22.01_1,
 mercury-tools-22.01_1

---
 srcpkgs/mercury-libs     |   1 +
 srcpkgs/mercury-tools    |   1 +
 srcpkgs/mercury/template | 135 +++++++++++++++++++++++++++++++++++++++
 3 files changed, 137 insertions(+)
 create mode 120000 srcpkgs/mercury-libs
 create mode 120000 srcpkgs/mercury-tools
 create mode 100644 srcpkgs/mercury/template

diff --git a/srcpkgs/mercury-libs b/srcpkgs/mercury-libs
new file mode 120000
index 000000000000..899d2a75a9aa
--- /dev/null
+++ b/srcpkgs/mercury-libs
@@ -0,0 +1 @@
+mercury
\ No newline at end of file
diff --git a/srcpkgs/mercury-tools b/srcpkgs/mercury-tools
new file mode 120000
index 000000000000..899d2a75a9aa
--- /dev/null
+++ b/srcpkgs/mercury-tools
@@ -0,0 +1 @@
+mercury
\ No newline at end of file
diff --git a/srcpkgs/mercury/template b/srcpkgs/mercury/template
new file mode 100644
index 000000000000..fe8960440aee
--- /dev/null
+++ b/srcpkgs/mercury/template
@@ -0,0 +1,135 @@
+# Template file for 'mercury'
+pkgname=mercury
+version=22.01
+revision=1
+wrksrc="mercury-srcdist-${version}"
+hostmakedepends="flex bison gettext texinfo"
+depends="mercury-libs>=${version}_${revision}"
+short_desc="Logic/Functional Programming Language"
+maintainer="Emily McDonough <emily@alaskanemily.net>"
+license="GPL-2.0-only, custom:LGPL-2.0-only-linking-exception"
+homepage="https://mercurylang.org/"
+distfiles="https://dl.mercurylang.org/release/mercury-srcdist-${version}.tar.xz"
+checksum=4ab0734aaa66808c91ffe7f54c7d818bdc4f0247aa255932e1e3d50610db4150
+nocross="Mercury cannot be cross-compiled to different architectures"
+noverifyrdeps=yes
+noshlibprovides=yes
+shlib_requires="libc.so.6"
+
+# asm_fast is preferable, but does not work on all architectures.
+case "$XBPS_MACHINE" in
+	*x86_64*|*arm*)
+		_LLDS_GRADE=asm_fast ;;
+	*i686*)
+		_LLDS_GRADE=reg ;;
+	*)
+		_LLDS_GRADE=none ;;
+esac
+
+_LIBGRADES="hlc.gc,hlc.gc.ssdebug,hlc.gc.memprof,${_LLDS_GRADE}.gc,${_LLDS_GRADE}.gc.stseg,${_LLDS_GRADE}.gc.decldebug.stseg,${_LLDS_GRADE}.gc.profdeep.stseg"
+
+# The parallel grades have some issues on musl systems.
+if [ "$XBPS_LIBC" != musl ] ; then
+	_LIBGRADES="${_LIBGRADES},hlc.par.gc,${_LLDS_GRADE}.par.gc.stseg"
+fi
+
+do_configure() {
+	# Prefer the low-level C grade as default, unless it is none.
+	if [ "${_LLDS_GRADE}" != "none" ] ; then
+		DEFAULT_GRADES="${_LLDS_GRADE}.gc.stseg"
+	else
+		DEFAULT_GRADES=hlc.gc
+	fi
+
+	./configure --prefix=/usr/ \
+		--enable-new-mercuryfile-struct \
+		--enable-gc-mmap --enable-gc-munmap \
+		--without-readline --with-editline \
+		--enable-libgrades="${_LIBGRADES}" --with-llds-base-grade="${_LLDS_GRADE}" --with-default-grade="${DEFAULT_GRADES}"
+}
+
+do_build() {
+	# The Mercury makefiles do most of the actual compilation in the 'install'
+	# rule. The 'DESTDIR' makefile variable is used to have the makefile
+	# install to the build directory instead, and then copy the files in
+	# do_install().
+	make PARALLEL="${makejobs}" DESTDIR=$(pwd)
+	make PARALLEL="${makejobs}" DESTDIR=$(pwd) install
+}
+
+do_install() {
+	vmkdir usr/lib/mercury/lib
+	vmkdir usr/lib/mercury/conf
+	vman usr/share/man/man1/c2init.1
+	vman usr/share/man/man1/mdb.1
+	vman usr/share/man/man1/mercury_config.1
+	vman usr/share/man/man1/mgnuc.1
+	vman usr/share/man/man1/ml.1
+	vman usr/share/man/man1/mmake.1
+	vman usr/share/man/man1/mmc.1
+	vman usr/share/man/man1/mtags.1
+	for BIN in c2init canonical_grade mdb mdemangle mercury_compile mercury_config mfiltercc mfilterjavac mgnuc mkinit ml mmake mmc mtags ; do
+		vbin usr/bin/$BIN
+	done
+	vcopy usr/lib/mercury/conf/Mercury.config usr/lib/mercury/conf/Mercury.config
+	vcopy usr/lib/mercury/conf/mercury_conf.h usr/lib/mercury/conf/mercury_conf.h
+	vcopy usr/lib/mercury/ints usr/lib/mercury/ints
+	vcopy usr/lib/mercury/inc usr/lib/mercury/inc
+	vcopy usr/lib/mercury/ints usr/lib/mercury/ints
+	vcopy usr/lib/mercury/mdb usr/lib/mercury/mdb
+	vcopy usr/lib/mercury/mmake usr/lib/mercury/mmake
+	vcopy usr/lib/mercury/lib/lib*gc*.a usr/lib/mercury/lib
+	for GRADE in $(echo $_LIBGRADES | sed 's/,/ /g') ; do
+		# Skip pregen, we don't need that after bootstrapping.
+		if test "$GRADE" != hlc.gc.pregen ; then
+			vmkdir usr/lib/mercury/lib/$GRADE
+			vmkdir usr/lib/mercury/modules/$GRADE
+			vcopy usr/lib/mercury/lib/$GRADE/inc usr/lib/mercury/lib/$GRADE
+			vcopy usr/lib/mercury/lib/$GRADE/lib*.a usr/lib/mercury/lib/$GRADE
+			vcopy usr/lib/mercury/modules/$GRADE/*.init usr/lib/mercury/modules/$GRADE
+			# Copy the shared libraries for profiling and debug grades.
+			case $GRADE in
+				*prof*|*debug*)
+					vcopy usr/lib/mercury/lib/$GRADE/lib*.so usr/lib/mercury/lib/$GRADE
+				;;
+			esac
+		fi
+	done
+}
+
+mercury-libs_package() {
+	short_desc+=" - runtime libraries"
+	noverifyrdeps=yes
+	noshlibprovides=yes
+	pkg_install() {
+		vmkdir usr/lib/mercury/lib
+		vcopy usr/lib/mercury/lib/lib*gc*.so usr/lib/mercury/lib
+		vlicense COPYING.LIB
+		for GRADE in $(echo $_LIBGRADES | sed 's/,/ /g') ; do
+			# Ignore profiling and debug grades for the runtime libraries.
+			# Also skip pregen, we don't need that after bootstrapping.
+			case $GRADE in
+				*prof*|*debug*|hlc.gc.pregen)
+					;;
+				*)
+					vmkdir usr/lib/mercury/lib/$GRADE
+					vcopy usr/lib/mercury/lib/$GRADE/lib*.so usr/lib/mercury/lib/$GRADE
+					;;
+			esac
+		done
+	}
+}
+
+mercury-tools_package() {
+	depends="mercury-libs>=${version}_${revision}"
+	short_desc+=" - extra tools"
+	noverifyrdeps=yes
+	noshlibprovides=yes
+	pkg_install() {
+		vman usr/share/man/man1/mprof.1
+		vman usr/share/man/man1/mprof_merge_runs.1
+		for BIN in mcov mdprof mercury_profile mprof mprof_merge_runs mtc mtc_diff mtc_union ; do
+			vbin usr/bin/$BIN
+		done
+	}
+}

  parent reply	other threads:[~2022-08-02  3:11 UTC|newest]

Thread overview: 64+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-28 22:58 [PR PATCH] " AlaskanEmily
2022-04-29  8:38 ` AlaskanEmily
2022-04-30  1:54 ` [PR PATCH] [Updated] " AlaskanEmily
2022-04-30  3:47 ` [PR REVIEW] " wangp
2022-04-30  3:47 ` wangp
2022-04-30  3:47 ` wangp
2022-04-30  6:22 ` AlaskanEmily
2022-04-30  6:22 ` AlaskanEmily
2022-04-30  6:23 ` AlaskanEmily
2022-04-30  8:41 ` wangp
2022-05-06  1:53 ` [PR PATCH] [Updated] " AlaskanEmily
2022-05-09  6:44 ` [PR REVIEW] " AlaskanEmily
2022-05-09  6:44 ` AlaskanEmily
2022-05-15 15:50 ` AlaskanEmily
2022-05-16  1:05 ` wangp
2022-05-24 23:16 ` [PR REVIEW] " classabbyamp
2022-05-24 23:16 ` classabbyamp
2022-05-24 23:16 ` classabbyamp
2022-05-24 23:16 ` classabbyamp
2022-05-24 23:16 ` classabbyamp
2022-05-24 23:20 ` classabbyamp
2022-05-25  0:45 ` AlaskanEmily
2022-05-25  0:48 ` classabbyamp
2022-05-25  0:48 ` classabbyamp
2022-05-25  0:49 ` AlaskanEmily
2022-05-25  0:52 ` classabbyamp
2022-05-25 15:59 ` leahneukirchen
2022-05-25 16:01 ` leahneukirchen
2022-05-25 18:42 ` [PR REVIEW] " paper42
2022-05-25 18:42 ` paper42
2022-05-30 23:36 ` [PR PATCH] [Updated] " AlaskanEmily
2022-05-30 23:37 ` [PR REVIEW] " AlaskanEmily
2022-05-30 23:37 ` AlaskanEmily
2022-05-30 23:37 ` AlaskanEmily
2022-05-30 23:37 ` AlaskanEmily
2022-05-31  0:37 ` classabbyamp
2022-05-31  0:37 ` classabbyamp
2022-05-31  0:37 ` classabbyamp
2022-05-31  0:37 ` classabbyamp
2022-05-31  0:37 ` classabbyamp
2022-05-31  0:37 ` classabbyamp
2022-05-31  0:37 ` classabbyamp
2022-06-11 20:36 ` AlaskanEmily
2022-07-04  0:37 ` [PR PATCH] [Updated] " AlaskanEmily
2022-07-04  0:39 ` AlaskanEmily
2022-07-04  0:41 ` AlaskanEmily
2022-07-04  0:42 ` AlaskanEmily
2022-07-04  0:44 ` [PR REVIEW] " AlaskanEmily
2022-07-04  0:44 ` AlaskanEmily
2022-07-04  0:44 ` AlaskanEmily
2022-07-04  0:44 ` AlaskanEmily
2022-07-04  0:44 ` AlaskanEmily
2022-07-19 20:24 ` leahneukirchen
2022-07-23  0:07 ` AlaskanEmily
2022-07-23  0:45 ` AlaskanEmily
2022-07-23  0:45 ` AlaskanEmily
2022-07-23  2:27 ` [PR PATCH] [Updated] " AlaskanEmily
2022-07-23  3:38 ` AlaskanEmily
2022-07-29 12:53 ` leahneukirchen
2022-08-02  3:11 ` AlaskanEmily [this message]
2022-08-02  3:13 ` [PR PATCH] [Updated] " AlaskanEmily
2022-08-02  3:44 ` AlaskanEmily
2022-08-02 13:47 ` [PR PATCH] [Merged]: " leahneukirchen
2022-08-02 13:48 ` leahneukirchen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220802031155.et4ueoVC6VBY-lCK0hDhf1Xzq2ud_cIR524VE95citY@z \
    --to=alaskanemily@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).