From nobody Sat Dec 28 16:35:30 2024 X-Original-To: dev-commits-ports-all@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 4YL7Jf4jm3z5jbsd; Sat, 28 Dec 2024 16:35:30 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4YL7Jf48h1z4kqt; Sat, 28 Dec 2024 16:35:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1735403730; 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=cm1aCseDY0u5b4ry6MkomFoUGXyspa9wAtEGiiLEi/g=; b=VcOIH+EMfgLLZaAWgojEsGKmAJmjX3mDyYnVQoCth4T/tBFAJgEl/lsHWpqY3PosEo6p8k FZ8psnz/aZTxOpkK3Gb8n5l69zgklzWH59dpxRzmFmO90syNqE8E4Fd20QNUhcc+a79m/x HsGVVNgZA/nXx63o/LePZTyVnDXuiNMX4qA0c7UDRyftTrsGBVSeKO5h8Jq2HSXAbq+Oc2 9PIrib+pX38vZKplDJ4LjI/Zna9dqRlyydnSLwyhEWzAY4wYWFxBNAKNVkZJvHYrXo1fxz IfPqCyYQowH8yEWnefkisDDd3e23MYNLpNGVzFQVzHXKyRz+svxeuZxcmVev3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1735403730; 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=cm1aCseDY0u5b4ry6MkomFoUGXyspa9wAtEGiiLEi/g=; b=dDkmuN271Xgn91UWgBVA0d3twsob1HO+5VehbSn5jpPpHVrfopLj4lorEJhaSYvtYocslN zbkmxzwFxKbsPAH9r+ynGHPxQFKDEi1zYOW3y13GZO2t5tOswiqn4FJS6SEoKRA2K0bHMa yXE3lQwWLwF5Ocwnjnj1VfI7lDUYdV5BjdEmWBSqNHkj9Cg2zzeYiwFRm5WCTxI96lTSyV x0I7AhWNrhUj+qt3LrZXpg/Eh0s5NLYfC/bgcuY/601L0dVRG/ot5K2YUrInNpKAV63M0e S0ATxgMqHayUonA7vg+8WlA3FV6ciePJXXPwqGaZr1NQEKp5cB4HoUs67a1gFA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1735403730; a=rsa-sha256; cv=none; b=DODPvsOEZghgtAeeQ2lu11GuFLIUVyzHZTv3X2IieNTzFTRd1XfD2sYDvvR28FiYpF3diR Onso+PNu1dioux63pLIiLRr4RmLjIOTs0godhNM3KNoASHC2J+56ny/bNFjMjvbMsRbRit kQacze+SDSnxspaKp6WOrt0prL39io/5fZ3Y06cVKtRAXWIhip6C/K6to822GHw9wWO8eF X8JYqNOC4ETLYRiMEgeCgaCodW6D5lkAZmJs5iBV2VR/Y8pRs0eoNaEAsMZDTZ5aj8IbSq pIoHnxyNhiL0jJHt7O2lo7hnK5AvbQ934KfMSBQR+4cqu+bJ/4uKIn0stx+HAw== 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 4YL7Jf3lm3zXT2; Sat, 28 Dec 2024 16:35:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4BSGZUOk076084; Sat, 28 Dec 2024 16:35:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4BSGZUJt076081; Sat, 28 Dec 2024 16:35:30 GMT (envelope-from git) Date: Sat, 28 Dec 2024 16:35:30 GMT Message-Id: <202412281635.4BSGZUJt076081@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Joseph Mingrone Subject: git: f6a75a8f9bf2 - main - devel/cl-freebsd-asdf-init: Fix output translations for CL builds List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-ports-all@freebsd.org Sender: owner-dev-commits-ports-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jrm X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f6a75a8f9bf20dbf1e9a4d5bc171d58f595c1ec1 Auto-Submitted: auto-generated The branch main has been updated by jrm: URL: https://cgit.FreeBSD.org/ports/commit/?id=f6a75a8f9bf20dbf1e9a4d5bc171d58f595c1ec1 commit f6a75a8f9bf20dbf1e9a4d5bc171d58f595c1ec1 Author: Joseph Mingrone AuthorDate: 2024-12-28 15:14:03 +0000 Commit: Joseph Mingrone CommitDate: 2024-12-28 16:30:56 +0000 devel/cl-freebsd-asdf-init: Fix output translations for CL builds ASDF uses output translations to locate compiled Common Lisp files (fasl). Before this fix, these translations were not correctly configured during port builds, causing failures for ports with Common Lisp dependencies, such as converters/cl-babel-*. Because ASDF could not locate the pre-built fasl, it attempted to write new fasl under $HOME/.cache/ during the build. Sponsored by: The FreeBSD Foundation --- devel/cl-freebsd-asdf-init/Makefile | 2 +- .../files/cl-freebsd-asdf-init.lisp.in | 67 +++++++++++----------- 2 files changed, 33 insertions(+), 36 deletions(-) diff --git a/devel/cl-freebsd-asdf-init/Makefile b/devel/cl-freebsd-asdf-init/Makefile index 157df9f225b3..bc6d38cd7fab 100644 --- a/devel/cl-freebsd-asdf-init/Makefile +++ b/devel/cl-freebsd-asdf-init/Makefile @@ -1,5 +1,5 @@ PORTNAME= cl-freebsd-asdf-init -PORTVERSION= 20241212 +PORTVERSION= 20241228 CATEGORIES= devel MASTER_SITES= # none DISTFILES= # none diff --git a/devel/cl-freebsd-asdf-init/files/cl-freebsd-asdf-init.lisp.in b/devel/cl-freebsd-asdf-init/files/cl-freebsd-asdf-init.lisp.in index faf0003d49ac..73310483809e 100644 --- a/devel/cl-freebsd-asdf-init/files/cl-freebsd-asdf-init.lisp.in +++ b/devel/cl-freebsd-asdf-init/files/cl-freebsd-asdf-init.lisp.in @@ -136,10 +136,34 @@ modify that in order to add other directories.") ;; Set up output translations -;; If we are building a port, redirect fasl files to WRKSRC. -(if (and (uiop:getenv "FBSD_ASDF_COMPILE_PORT") - (uiop:getenv "PORTNAME") - (uiop:getenv "WRKSRC")) +(let* ((freebsd-translations '(:ignore-inherited-configuration))) + ;; Create translations to point source to fasl. + (dolist (path (directory "%%PREFIX%%/lib/common-lisp/*/")) + (let* ((base-dir (pathname-directory path)) + (source (make-pathname + :directory (append base-dir (list :wild-inferiors)) + :name :wild + :type :wild)) + (ctarget (make-pathname + :directory (append + base-dir + (list (lisp-specific-fasl-subdir))))) + (target (make-pathname + :directory (append base-dir + (list (lisp-specific-fasl-subdir) + :wild-inferiors)) + :name :wild + :type :wild))) + ;; Only create translation when source is not system registry and + ;; ctarget exists. + (when (and + (not (string= *system-registry* (namestring path))) + (uiop:directory-exists-p ctarget)) + (pushnew (list source target) freebsd-translations)))) + ;; When building a port, redirect fasl files to WRKSRC. + (when (and (uiop:getenv "FBSD_ASDF_COMPILE_PORT") + (uiop:getenv "PORTNAME") + (uiop:getenv "WRKSRC")) (let* ((wrksrc (uiop:getenv "WRKSRC")) (portname (uiop:getenv "PORTNAME")) (source (make-pathname @@ -149,36 +173,9 @@ modify that in order to add other directories.") (list portname :wild-inferiors)))) (target (make-pathname :directory (append (pathname-directory wrksrc) - (list :wild-inferiors)))) - (ports-translations '(:ignore-inherited-configuration))) - (pushnew (list source target) ports-translations) - (asdf:initialize-output-translations - (cons :output-translations ports-translations))) - ;; On target systems, set up translations to point to installed fasl. - (let ((freebsd-translations '(:ignore-inherited-configuration))) - (dolist (path (directory "%%PREFIX%%/lib/common-lisp/*/")) - (let* ((base-dir (pathname-directory path)) - (source (make-pathname - :directory (append base-dir (list :wild-inferiors)) - :name :wild - :type :wild)) - (ctarget (make-pathname - :directory (append - base-dir - (list (lisp-specific-fasl-subdir))))) - (target (make-pathname - :directory (append base-dir - (list (lisp-specific-fasl-subdir) - :wild-inferiors)) - :name :wild - :type :wild))) - ;; Only create translation when source is not system registry and - ;; ctarget exists. - (when (and - (not (string= *system-registry* (namestring path))) - (uiop:directory-exists-p ctarget)) - (pushnew (list source target) freebsd-translations)))) - (asdf:initialize-output-translations - (cons :output-translations freebsd-translations)))) + (list :wild-inferiors))))) + (pushnew (list source target) freebsd-translations))) + (asdf:initialize-output-translations + (cons :output-translations freebsd-translations))) ;;;; asdf-init.lisp ends here