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: Mon, 04 Jul 2022 02:41:35 +0200 [thread overview]
Message-ID: <20220704004135.zXzAepI_vBR4nUMKeiRZEtwIkPJSzkIg55rlzOVLgCw@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: 5902 bytes --]
From da570c8ec767dad60184d9ac39a3831aec37823b 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..1534ceb03b8f
--- /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/libgc*.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/libgc*.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
+ }
+}
next prev parent reply other threads:[~2022-07-04 0:41 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 [this message]
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
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=20220704004135.zXzAepI_vBR4nUMKeiRZEtwIkPJSzkIg55rlzOVLgCw@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).