From nobody Fri Oct 14 17:07:44 2022 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Mpt9r6sFvz4fsYs; Fri, 14 Oct 2022 17:07:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Mpt9r5jgfz3KsG; Fri, 14 Oct 2022 17:07:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1665767264; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kzxf4w+Uv8MyA4xVVG/uFL/iQIhex0IBY87hCQ7dwx4=; b=Bay2UeUC6L/BpVpfXw9OwaOdnHJYS8cBRg4PMExzax/NOu3J0l45LU8OzbnjqdpVXNdADE bEVSgSRhHMm4RuoTgUndrIGxHCD6tAAIDNsWDAkUYMZtfvm2nCv8kiHTu+puF1Da4Q18cd 6V5THSSN4XzcGtYBE1Q5646RI/Lp0woCs7sbKHFUefDF3kioH3CuQumuUGSybKRCzWVUMe x2cnyDij7l1PNHvNwJJskOlXHir25s6Yh83lyaVbVWKkVWX+6EdQCk7RSIfnzj3G3IrTnD 39h7KUBMK2jqPUr3iNm9YRdflUF4UtqXNZy68MtbnnnXVpAOPEAqMEWcgKjeXg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Mpt9r4nNgzr95; Fri, 14 Oct 2022 17:07:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 29EH7iKr013648; Fri, 14 Oct 2022 17:07:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 29EH7i08013647; Fri, 14 Oct 2022 17:07:44 GMT (envelope-from git) Date: Fri, 14 Oct 2022 17:07:44 GMT Message-Id: <202210141707.29EH7i08013647@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Adam Weinberger Subject: git: 9d241a90370c - main - Mk: Add USES=luajit List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-main@freebsd.org X-BeenThere: dev-commits-ports-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adamw X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9d241a90370c9410d997be37db5e3a5657bdb4ca Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1665767264; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kzxf4w+Uv8MyA4xVVG/uFL/iQIhex0IBY87hCQ7dwx4=; b=PI0FDX83YnBm7OeFtcv3/AKfCDh+au9W9TWlNFxjipyTnHV7hOW1uiv92jEJsP400W4aTQ JdQZi9SA1Cq68W7CmHkk1UpfFcKMFyfB0WC6pr9DTBEOQd3amqsgPtyj688dwbqXHQrhQq tS8PHwyBmA1cATagYImGiiZLNSWjj2WhA192282NXtyWhQN+IlOHNDASkq6LIz0zHpSc+Z xqG2tcudRXzDPsWM5D4ymJuvPjKtx2QTtOWd8S7S1uWrbPqsJ9iXGGqCQhxpWejHdKKShZ H/8tf18bBMmvr8gTM4eUWWhGEhvRCmOSEklCXPpux4SNZNsgim3vyhpBhUy5fg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1665767264; a=rsa-sha256; cv=none; b=j/Tw9B7Js08FIaNAKDNQF1dmzUgskcJ5JDsreHIciNrSPKETYwPRs2pSH8nhA01Wx0Pct6 +QkuUwktL7hJ+iKYbcylhD28bU4HbJEi2/JvRbG38hlCL0jnX6SwynPjcVKlF3Nj9ihDHd VpODho8sJnUTiNSLOvMJTbopvYx+Bu3XnHRqKPJLFa/uBkFOzW4fr58jkKhkJTty0obgc6 No2NVV0nSRDNyTKFloBH65mIPA+ApHU50O8DiqDOIJz3edd7j+ClkXMzK/FAEbGr1IG8eL UkZLUaki3aVWergCASbSWBFwFnQmL6LhFFpCmhCs6I8TRRyYzlzux1FMXogl3Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by adamw: URL: https://cgit.FreeBSD.org/ports/commit/?id=9d241a90370c9410d997be37db5e3a5657bdb4ca commit 9d241a90370c9410d997be37db5e3a5657bdb4ca Author: Adam Weinberger AuthorDate: 2022-10-14 16:50:39 +0000 Commit: Adam Weinberger CommitDate: 2022-10-14 17:07:39 +0000 Mk: Add USES=luajit USES=luajit centralizes luajit dependencies via bsd.default-versions.mk (defaulting to luajit-devel). Ports currently depend on: lang/luajit: 42 lang/luajit-devel: 0 lang/luajit-openresty: 51 The difficulty here is that: - They all conflict with each other - Upstream is very clear about not intending for users to use the version in lang/luajit at all, and wants all luajit users to use lang/luajit-devel - luajit-openresty is very aggressive about being drop-in compatible with luajit-devel (though not the other direction) For the vast majority of situations, USES=luajit will be sufficient. Ports that use openresty's API additions can specify USES=luajit:openresty. I'm adding this into head very early in the 2022Q4 cycle so that there's ample time to address the default. It's a difficult decision. osa, the maintainer of luajit and luajit-devel, prefers that the default be luajit, but I went the other direction because it's in direct conflict with upstream's clear stated intention. It's not a simple decision; see the review below for a little discussion on it. The TL;DR here is that this defaults to the one luajit version that no port currently depends on. However, this version is what OpenBSD, Homebrew, Ubuntu, Debian, Fedora, MacPorts, and Arch default to (and none of them even provide the stale version lang/luajit provides). This will bring FreeBSD in line with nearly every other OS package system, and with upstream's intention. See also PRs 225342, 257051. Reviewed by: bapt, tcberner Approved by: portmgr (bapt, tcberner) Differential Revision: https://reviews.freebsd.org/D36947 --- Mk/Uses/luajit.mk | 27 +++++++++++++++++++++++++++ Mk/bsd.default-versions.mk | 9 ++++++--- 2 files changed, 33 insertions(+), 3 deletions(-) diff --git a/Mk/Uses/luajit.mk b/Mk/Uses/luajit.mk new file mode 100644 index 000000000000..75e54407d484 --- /dev/null +++ b/Mk/Uses/luajit.mk @@ -0,0 +1,27 @@ +# Select your favorite luajit runtime +# Feature: luajit +# Usage: USES= luajit[:version] +# MAINTAINER: adamw@FreeBSD.org + +.if !defined(_INCLUDE_USES_LUAJIT_MK) +_INCLUDE_USES_LUAJIT_MK=yes + +.if !empty(luajit_ARGS) +LUAJIT_VER= ${luajit_ARGS} +.else +LUAJIT_VER= ${LUAJIT_DEFAULT} +.endif + +# When adding a version, please keep the comment in +# Mk/bsd.default-versions.mk in sync +VALID_LUAJIT_VER= luajit luajit-devel luajit-openresty + +.if empty(VALID_LUAJIT_VER:M${LUAJIT_DEFAULT}) +IGNORE= Invalid luajit default version ${LUAJIT_DEFAULT}: valid versions are ${VALID_LUAJIT_VER} +.elif empty(VALID_LUAJIT_VER:M${LUAJIT_VER}) +IGNORE= Invalid luajit version ${LUAJIT_VER}: valid versions are ${VALID_LUAJIT_VER} +.endif + +LIB_DEPENDS= libluajit-5.1.so:lang/${LUAJIT_VER} + +.endif diff --git a/Mk/bsd.default-versions.mk b/Mk/bsd.default-versions.mk index bbf3d5880c70..5a36e0b9c4d0 100644 --- a/Mk/bsd.default-versions.mk +++ b/Mk/bsd.default-versions.mk @@ -17,9 +17,10 @@ _INCLUDE_BSD_DEFAULT_VERSIONS_MK= yes LOCALBASE?= /usr/local -. for lang in APACHE BDB COROSYNC EMACS FIREBIRD FORTRAN FPC GCC GHOSTSCRIPT GL GO \ - IMAGEMAGICK JAVA LAZARUS LIBRSVG2 LINUX LLVM LUA MONO MYSQL NINJA NODEJS PERL5 \ - PGSQL PHP PYTHON PYTHON2 PYTHON3 RUBY RUST SAMBA SSL TCLTK VARNISH +. for lang in APACHE BDB COROSYNC EMACS FIREBIRD FORTRAN FPC GCC \ + GHOSTSCRIPT GL GO IMAGEMAGICK JAVA LAZARUS LIBRSVG2 LINUX LLVM \ + LUA LUAJIT MONO MYSQL NINJA NODEJS PERL5 PGSQL PHP PYTHON \ + PYTHON2 PYTHON3 RUBY RUST SAMBA SSL TCLTK VARNISH . if defined(${lang}_DEFAULT) ERROR+= "The variable ${lang}_DEFAULT is set and it should only be defined through DEFAULT_VERSIONS+=${lang:tl}=${${lang}_DEFAULT} in /etc/make.conf" . endif @@ -86,6 +87,8 @@ LLVM_DEFAULT?= 90 . endif # Possible values: 5.1, 5.2, 5.3, 5.4 LUA_DEFAULT?= 5.2 +# Possible values: luajit, luajit-devel, luajit-openresty +LUAJIT_DEFAULT?= luajit-devel # Possible values: 5.10, 5.20, 6.8 MONO_DEFAULT= 5.10 # Possible values: 5.6, 5.7, 8.0, 10.3m, 10.4m, 10.5m, 5.7p, 5.7w