pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/devel/muon
Module Name: pkgsrc
Committed By: micha
Date: Fri Jan 31 17:11:10 UTC 2025
Added Files:
pkgsrc/devel/muon: DESCR Makefile PLIST build.mk distinfo
pkgsrc/devel/muon/patches: patch-meson.build
patch-tests_project_meson.build
Log Message:
devel/muon: Add muon version 0.3.1
Implementation of the meson build system in C99 with minimal dependencies.
No release notes for 0.3.1
## 0.3.0
- Brand-new interpreter: https://mochiro.moe/posts/10-muon-internals/
- Lots of windows improvements
- bootstrap.bat
- Simple tests passing
- Lots of macOS improvements
- All tests passing
- Universal binary deployed by CI
- Script modules introduced: a way of writing muon modules with mostly normal
meson code.
- i18n module
- gnome module (wip)
- Embedded cross-platform samurai implementation
- Lots of bugs fixed!
- 17 contributors:
Andrea Pappacoda (1)
Andrew McNulty (11)
Eli Schwartz (1)
Filipe Laíns (4)
JCWasmx86 (1)
Michael Forney (2)
Michal Sieron (2)
Seedo Paul (27)
Sertonix (3)
Stone Tickle (497)
Thomas Adam (1)
Tokunori Ikegami (1)
Vincent Torri (12)
kzc (2)
rofl0r (1)
sewn (1)
torque (1)
To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 pkgsrc/devel/muon/DESCR pkgsrc/devel/muon/Makefile \
pkgsrc/devel/muon/PLIST pkgsrc/devel/muon/build.mk \
pkgsrc/devel/muon/distinfo
cvs rdiff -u -r0 -r1.1 pkgsrc/devel/muon/patches/patch-meson.build \
pkgsrc/devel/muon/patches/patch-tests_project_meson.build
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Added files:
Index: pkgsrc/devel/muon/DESCR
diff -u /dev/null pkgsrc/devel/muon/DESCR:1.1
--- /dev/null Fri Jan 31 17:11:10 2025
+++ pkgsrc/devel/muon/DESCR Fri Jan 31 17:11:09 2025
@@ -0,0 +1,19 @@
+muon is an implementation of the meson build system in C99 with minimal
+dependencies.
+
+Features
+========
+- muon analyze - a static analyzer for meson.build files.
+- muon fmt - a meson.build code formatter.
+- An interactive stepping debugger.
+- fast.
+
+Non-features
+============
+- bug-for-bug compatibility with meson.
+ In fact, muon aspires to be stricter than meson in cases where meson's
+ implementation seems error prone. muon uses the official meson
+ documentation as its specification.
+- cli compatibility with meson.
+ muon has different flags, subcommands, etc., and should not be
+ renamed/symlinked to meson.
Index: pkgsrc/devel/muon/Makefile
diff -u /dev/null pkgsrc/devel/muon/Makefile:1.1
--- /dev/null Fri Jan 31 17:11:10 2025
+++ pkgsrc/devel/muon/Makefile Fri Jan 31 17:11:09 2025
@@ -0,0 +1,54 @@
+# $NetBSD: Makefile,v 1.1 2025/01/31 17:11:09 micha Exp $
+
+PKGNAME= muon-0.3.1
+DISTNAME= ${PKGNAME:S/muon-//}
+CATEGORIES= devel
+MASTER_SITES= https://git.sr.ht/~lattis/muon/archive/
+DIST_SUBDIR= ${PKGNAME_NOREV}
+DISTFILES= ${DEFAULT_DISTFILES} man.tar.gz
+SITES.man.tar.gz= https://muon.build/releases/v${DISTNAME}/docs/
+
+MAINTAINER= micha%NetBSD.org@localhost
+HOMEPAGE= https://git.sr.ht/~lattis/muon
+COMMENT= Implementation of meson build system in C99 with minimal dependencies
+LICENSE= gnu-gpl-v3
+
+USE_CC_FEATURES= c99
+
+# Use external samurai
+CFLAGS+= -DBOOTSTRAP_NO_SAMU
+DEPENDS+= samurai>=1.2:../../devel/samurai
+
+# Required by some platforms for clock_gettime()
+LDFLAGS+= -lrt
+
+MUON_ARGS+= -Dlibcurl=disabled
+MUON_ARGS+= -Dlibarchive=disabled
+MUON_ARGS+= -Dlibpkgconf=enabled
+MUON_ARGS+= -Dsamurai=disabled
+MUON_ARGS+= -Dreadline=builtin
+MUON_ARGS+= -Dstatic=false
+MUON_ARGS+= -Ddocs=disabled
+MUON_ARGS+= -Dwebsite=false
+MUON_ARGS+= -Dtracy=disabled
+
+WRKSRC= ${WRKDIR}/${PKGNAME_NOREV}
+INSTALLATION_DIRS= bin ${PKGMANDIR}/man1
+
+do-configure:
+ cd ${WRKSRC} && env ${CONFIGURE_ENV} ${CONFIG_SHELL} ./bootstrap.sh bootstrap
+ cd ${WRKSRC} && env ${MAKE_ENV} ./bootstrap/muon setup ${MUON_ARGS} output
+
+do-build:
+ cd ${WRKSRC} && env ${MAKE_ENV} samu -j ${_MAKE_JOBS_N:U1} -C output
+
+do-test:
+ cd ${WRKSRC}/output && env ${TEST_ENV} ./muon test
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/output/muon ${DESTDIR}${PREFIX}/bin/muon
+ ${INSTALL_MAN} ${WRKDIR}/man/muon.1 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1
+
+.include "../../devel/pkgconf/buildlink3.mk"
+
+.include "../../mk/bsd.pkg.mk"
Index: pkgsrc/devel/muon/PLIST
diff -u /dev/null pkgsrc/devel/muon/PLIST:1.1
--- /dev/null Fri Jan 31 17:11:10 2025
+++ pkgsrc/devel/muon/PLIST Fri Jan 31 17:11:10 2025
@@ -0,0 +1,3 @@
+@comment $NetBSD: PLIST,v 1.1 2025/01/31 17:11:10 micha Exp $
+bin/muon
+man/man1/muon.1
Index: pkgsrc/devel/muon/build.mk
diff -u /dev/null pkgsrc/devel/muon/build.mk:1.1
--- /dev/null Fri Jan 31 17:11:10 2025
+++ pkgsrc/devel/muon/build.mk Fri Jan 31 17:11:10 2025
@@ -0,0 +1,74 @@
+# $NetBSD: build.mk,v 1.1 2025/01/31 17:11:10 micha Exp $
+
+# Based on devel/meson/build.mk without the cross-compilation stuff
+# (cross-compilation is not supported by muon).
+# Uses devel/samurai as build tool (instead of devel/ninja-build).
+
+MUON_REQD?= 0.3
+.for version in ${MUON_REQD}
+TOOL_DEPENDS+= muon>=${version}:../../devel/muon
+.endfor
+
+CONFIGURE_DIRS?= .
+BUILD_DIRS?= ${CONFIGURE_DIRS}
+INSTALL_DIRS?= ${CONFIGURE_DIRS}
+TEST_DIRS?= ${CONFIGURE_DIRS}
+
+.PHONY: muon-configure muon-build muon-install muon-test
+
+# pkgsrc contains multiple llvm-config executables at multiple locations.
+.if !empty(LLVM_CONFIG_PATH)
+MAKE_ENV+= LLVM_CONFIG_PATH=${LLVM_CONFIG_PATH:Q}
+.endif
+
+.include "../../mk/bsd.prefs.mk"
+
+do-configure: muon-configure
+muon-configure:
+.for d in ${CONFIGURE_DIRS}
+ cd ${WRKSRC} && cd ${d} && ${SETENV} ${MAKE_ENV} muon setup \
+ -Dprefix=${PREFIX} \
+ -Dlibdir=lib \
+ -Dlibexecdir=libexec \
+ -Dmandir=${PKGMANDIR} \
+ -Dsysconfdir=${PKG_SYSCONFDIR} \
+ -Dbuildtype=plain \
+ ${MUON_ARGS} \
+ output
+.endfor
+
+do-build: muon-build
+muon-build:
+.for d in ${BUILD_DIRS}
+ cd ${WRKSRC} && cd ${d} && ${SETENV} ${MAKE_ENV} \
+ samu -j ${_MAKE_JOBS_N:U1} -C output
+.endfor
+
+do-install: muon-install
+muon-install:
+.for d in ${INSTALL_DIRS}
+ cd ${WRKSRC} && cd ${d} && ${SETENV} ${INSTALL_ENV} ${MAKE_ENV} \
+ muon -C output install
+.endfor
+
+do-test: muon-test
+muon-test:
+.for d in ${TEST_DIRS}
+ cd ${WRKSRC} && cd ${d} && ${SETENV} ${TEST_ENV} \
+ muon -C output test
+.endfor
+
+_VARGROUPS+= muon
+_PKG_VARS.muon= MUON_REQD
+_PKG_VARS.muon+= CONFIGURE_DIRS
+_PKG_VARS.muon+= BUILD_DIRS MAKE_ENV
+_PKG_VARS.muon+= TEST_DIRS TEST_ENV
+_PKG_VARS.muon+= INSTALL_DIRS INSTALL_ENV
+_PKG_VARS.muon+= LLVM_CONFIG_PATH
+_PKG_VARS.muon+= MUON_ARGS
+_USER_VARS.muon= MAKE_JOBS PKG_SYSCONFDIR
+_USE_VARS.muon= WRKSRC PREFIX PKGMANDIR
+_USE_VARS.muon+= _MAKE_JOBS_N
+_DEF_VARS.muon= TOOL_DEPENDS
+_LISTED_VARS.muon= *_ARGS *_DEPENDS
+_SORTED_VARS.muon= *_ENV
Index: pkgsrc/devel/muon/distinfo
diff -u /dev/null pkgsrc/devel/muon/distinfo:1.1
--- /dev/null Fri Jan 31 17:11:10 2025
+++ pkgsrc/devel/muon/distinfo Fri Jan 31 17:11:10 2025
@@ -0,0 +1,10 @@
+$NetBSD: distinfo,v 1.1 2025/01/31 17:11:10 micha Exp $
+
+BLAKE2s (muon-0.3.1/0.3.1.tar.gz) = b7ef7da182dbd4d207050d13b57d006ad84384ee0dfdce56db8e69dbf1986233
+SHA512 (muon-0.3.1/0.3.1.tar.gz) = f9113d463bee6ecad6d97de0ea4ab210632e7baac265f32992036a5cab005222965615c3b3f7f0a4f2a5a880143f09d59233f43e9d6e3ae3ec700ba28f6a1bbc
+Size (muon-0.3.1/0.3.1.tar.gz) = 446185 bytes
+BLAKE2s (muon-0.3.1/man.tar.gz) = a4c684299b27f35615bf92d90a1761da8de86cdfeab5b77ac62695d611ab194e
+SHA512 (muon-0.3.1/man.tar.gz) = 1f1f054c0e2331c63245adbd1111552b331ecac337f1902490c5ba6dbe48c858787cb5a3cce00b26491b0dfac1001938b7f4461c7df098098e2202cd4021b8da
+Size (muon-0.3.1/man.tar.gz) = 8067 bytes
+SHA1 (patch-meson.build) = 3399887cc133b97fb6f2f5669ae59ec8d7bbaf8b
+SHA1 (patch-tests_project_meson.build) = dd116edbc57961fd34038197e6ec563fd6752e58
Index: pkgsrc/devel/muon/patches/patch-meson.build
diff -u /dev/null pkgsrc/devel/muon/patches/patch-meson.build:1.1
--- /dev/null Fri Jan 31 17:11:10 2025
+++ pkgsrc/devel/muon/patches/patch-meson.build Fri Jan 31 17:11:10 2025
@@ -0,0 +1,17 @@
+$NetBSD: patch-meson.build,v 1.1 2025/01/31 17:11:10 micha Exp $
+
+Disable git (no downloads during build).
+
+--- meson.build.orig 2024-11-25 14:54:48.138610678 +0000
++++ meson.build
+@@ -19,7 +19,9 @@ fs = import('fs')
+
+ # version information
+
+-git = find_program('git', required: false)
++# Disable git for pkgsrc
++git = find_program('git_disabled', required: false)
++#git = find_program('git', required: false)
+ if git.found() and fs.is_dir('.git')
+ rev = run_command(git, 'rev-parse', '--short', 'HEAD', check: true)
+ git_sha = rev.stdout().strip()
Index: pkgsrc/devel/muon/patches/patch-tests_project_meson.build
diff -u /dev/null pkgsrc/devel/muon/patches/patch-tests_project_meson.build:1.1
--- /dev/null Fri Jan 31 17:11:10 2025
+++ pkgsrc/devel/muon/patches/patch-tests_project_meson.build Fri Jan 31 17:11:10 2025
@@ -0,0 +1,19 @@
+$NetBSD: patch-tests_project_meson.build,v 1.1 2025/01/31 17:11:10 micha Exp $
+
+Fix build without git.
+
+From upstream commit 74174cbb3e9e1386982b18ffd0ab0e4fe72c98b2.
+
+--- tests/project/meson.build.orig 2024-10-07 15:19:19.000000000 +0000
++++ tests/project/meson.build
+@@ -401,8 +401,9 @@ else
+ endif
+ endif
+
++meson_tests_dir = meson.current_source_dir() / 'meson-tests'
++
+ if git.found()
+- meson_tests_dir = meson.current_source_dir() / 'meson-tests'
+ meson_tests_sha = '1e565931348f15f3f9b654f46ab4bf5fa009ca4f'
+
+ if not fs.is_dir(meson_tests_dir)
Home |
Main Index |
Thread Index |
Old Index