From 7c4142628a397f7863f346635591dbe92b667b45 Mon Sep 17 00:00:00 2001 From: Josselin Poiret Date: Wed, 17 Nov 2021 14:43:48 +0000 Subject: gnu: system: Improve location of some configuration warnings. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/bootloader.scm (%warn-target-field-deprecation): Remove it. * gnu/bootloader.scm (warn-target-field-deprecation): Use define-with-syntax-properties. * gnu/system.scm (ensure-setuid-program-list): Ditto. Also rename the 'location' variable to 'properties'. Signed-off-by: Ludovic Courtès --- gnu/bootloader.scm | 16 +++++++--------- gnu/system.scm | 11 ++++++----- 2 files changed, 13 insertions(+), 14 deletions(-) (limited to 'gnu') diff --git a/gnu/bootloader.scm b/gnu/bootloader.scm index d1c72c0c85..9cf5457873 100644 --- a/gnu/bootloader.scm +++ b/gnu/bootloader.scm @@ -183,8 +183,13 @@ record." ;; The record contains bootloader independant ;; configuration used to fill bootloader configuration file. -(define-syntax-rule (warn-target-field-deprecation value) - (%warn-target-field-deprecation value (current-source-location))) +(define-with-syntax-properties (warn-target-field-deprecation + (value properties)) + (when value + (warning (source-properties->location properties) + (G_ "the 'target' field is deprecated, please use 'targets' \ +instead~%"))) + value) (define-record-type* bootloader-configuration make-bootloader-configuration @@ -213,13 +218,6 @@ record." (serial-speed bootloader-configuration-serial-speed ;integer | #f (default #f))) -(define (%warn-target-field-deprecation value location) - (when value - (warning (source-properties->location location) - (G_ "the 'target' field is deprecated, please use 'targets' \ -instead~%"))) - value) - (define-deprecated (bootloader-configuration-target config) bootloader-configuration-targets (%bootloader-configuration-target config)) diff --git a/gnu/system.scm b/gnu/system.scm index 17653682c5..73e6b58f2a 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -1073,16 +1073,17 @@ use 'plain-file' instead~%") ;; TODO: Remove when glibc@2.23 is long gone. ("GUIX_LOCPATH" . "/run/current-system/locale"))) -(define-syntax-rule (ensure-setuid-program-list lst) - "Ensure LST is a list of records and warn otherwise." - (%ensure-setuid-program-list lst (current-source-location))) +;; Ensure LST is a list of records and warn otherwise. +(define-with-syntax-properties (ensure-setuid-program-list (lst properties)) + (%ensure-setuid-program-list lst properties)) -(define (%ensure-setuid-program-list lst location) +;; We want to be able to use defines, so define a procedure. +(define (%ensure-setuid-program-list lst properties) (define warned? #f) (define (warn-once) (unless warned? - (warning (source-properties->location location) + (warning (source-properties->location properties) (G_ "representing setuid programs with file-like objects is \ deprecated; use 'setuid-program' instead~%")) (set! warned? #t))) -- cgit v1.2.3