Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] New package: mercury-22.01_1, mercury-libs-22.01_1, mercury-tools-22.01_1
@ 2022-04-28 22:58 AlaskanEmily
  2022-04-29  8:38 ` AlaskanEmily
                   ` (62 more replies)
  0 siblings, 63 replies; 64+ messages in thread
From: AlaskanEmily @ 2022-04-28 22:58 UTC (permalink / raw)
  To: ml

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

There is a new 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

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: 6060 bytes --]

From fe88276f81497b13a2cdb871a0f969a432787e1d Mon Sep 17 00:00:00 2001
From: AlaskanEmily <emily@alaskanemily.net>
Date: Thu, 28 Apr 2022 15:07:33 -0700
Subject: [PATCH] New packages: 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 | 150 +++++++++++++++++++++++++++++++++++++++
 3 files changed, 152 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..d85895a1cabd
--- /dev/null
+++ b/srcpkgs/mercury/template
@@ -0,0 +1,150 @@
+# 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"
+homepage="https://mercurylang.org/"
+distfiles="http://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
+	*i686*|*x86_64*|*arm*)
+		_LLDS_GRADE=asm_fast ;;
+	*)
+		_LLDS_GRADE=none ;;
+esac
+
+_LIBGRADES="hlc.gc,hlc.gc.ssdebug,hlc.gc.memprof,${_LLDS_GRADE}.gc,${_LLDS_GRADE}.gc.stseg,${_LLDS_GRADE}.gc.stseg.decldebug,${_LLDS_GRADE}.gc.stseg.profdeep"
+
+# The parallel grades have some issues on musl systems.
+if [ "$XBPS_LIBC" != musl ] ; then
+	_LIBGRADES="${_LIBGRADES},hlc.gc.par,${_LLDS_GRADE}.gc.stseg.par"
+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() {
+	make PARALLEL="${makejobs}" DESTDIR=$(pwd)
+	make PARALLEL="${makejobs}" DESTDIR=$(pwd) install
+}
+
+mercury-libs_package() {
+	license="custom:LGPL-2.0-only-linking-exception"
+	short_desc+=" - runtime libraries"
+	noverifyrdeps=yes
+	noshlibprovides=yes
+	pkg_install() {
+		vmkdir /usr/lib/mercury/lib
+		vcopy usr/lib/mercury/lib/libgc*.so  /usr/lib/mercury/lib
+		vlicense COPYING.LIB
+		for GRADE in $(echo $_LIBGRADES | sed 's/,/ /g') ; do
+			GRADE=$(usr/bin/canonical_grade --grade $GRADE)
+			# 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/mdb.1
+		vman usr/share/man/man1/mprof.1
+		vman usr/share/man/man1/mprof_merge_runs.1
+		vman usr/share/man/man1/mtags.1
+		vlicense COPYING
+		vbin usr/bin/mcov
+		vbin usr/bin/mdb
+		vbin usr/bin/mdprof
+		vbin usr/bin/mercury_profile
+		vbin usr/bin/mprof
+		vbin usr/bin/mprof_merge_runs
+		vbin usr/bin/mtags
+		vbin usr/bin/mtc
+		vbin usr/bin/mtc_diff
+		vbin usr/bin/mtc_union
+	}
+}
+
+do_install() {
+	vmkdir /usr/lib/mercury/lib
+	vmkdir /usr/lib/mercury/conf
+	vman usr/share/man/man1/c2init.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
+	vlicense COPYING
+	vbin usr/bin/c2init
+	vbin usr/bin/canonical_grade
+	vbin usr/bin/mdemangle
+	vbin usr/bin/mercury_compile
+	vbin usr/bin/mercury_config
+	vbin usr/bin/mfiltercc
+	vbin usr/bin/mfilterjavac
+	vbin usr/bin/mgnuc
+	vbin usr/bin/mkinit
+	vbin usr/bin/ml
+	vbin usr/bin/mmake
+	vbin usr/bin/mmc
+	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/libgc*.a /usr/lib/mercury/lib
+	for GRADE in $(echo $_LIBGRADES | sed 's/,/ /g') ; do
+		GRADE=$(usr/bin/canonical_grade --grade $GRADE)
+		# 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
+}

^ permalink raw reply	[flat|nested] 64+ messages in thread

end of thread, other threads:[~2022-08-02 13:48 UTC | newest]

Thread overview: 64+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-28 22:58 [PR PATCH] New package: mercury-22.01_1, mercury-libs-22.01_1, mercury-tools-22.01_1 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 ` [PR PATCH] [Updated] " AlaskanEmily
2022-08-02  3:13 ` AlaskanEmily
2022-08-02  3:44 ` AlaskanEmily
2022-08-02 13:47 ` [PR PATCH] [Merged]: " leahneukirchen
2022-08-02 13:48 ` leahneukirchen

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).