From owner-svn-ports-all@freebsd.org Tue Jul 2 15:41:46 2019 Return-Path: Delivered-To: svn-ports-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 02C4715D6C9C; Tue, 2 Jul 2019 15:41:46 +0000 (UTC) (envelope-from danfe@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) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9A65D8B3D9; Tue, 2 Jul 2019 15:41:45 +0000 (UTC) (envelope-from danfe@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 744142640F; Tue, 2 Jul 2019 15:41:45 +0000 (UTC) (envelope-from danfe@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x62Ffjj9086177; Tue, 2 Jul 2019 15:41:45 GMT (envelope-from danfe@FreeBSD.org) Received: (from danfe@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x62FfiaS086175; Tue, 2 Jul 2019 15:41:44 GMT (envelope-from danfe@FreeBSD.org) Message-Id: <201907021541.x62FfiaS086175@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: danfe set sender to danfe@FreeBSD.org using -f From: Alexey Dokuchaev Date: Tue, 2 Jul 2019 15:41:44 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r505685 - in head/cad/lepton-eda: . files X-SVN-Group: ports-head X-SVN-Commit-Author: danfe X-SVN-Commit-Paths: in head/cad/lepton-eda: . files X-SVN-Commit-Revision: 505685 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 9A65D8B3D9 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.996,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Jul 2019 15:41:46 -0000 Author: danfe Date: Tue Jul 2 15:41:44 2019 New Revision: 505685 URL: https://svnweb.freebsd.org/changeset/ports/505685 Log: - Restrict Python run-time dependency to version 2.7 because supplied scripts use the old syntax (print statement, etc.) - Add a patch to fix regressions of transition to Guile 2.2 Submitted by: maintainer Upstream bug: https://github.com/lepton-eda/lepton-eda/issues/440 Added: head/cad/lepton-eda/files/patch-m4_geda-guile.m4 (contents, props changed) head/cad/lepton-eda/files/patch-schematic_scheme_gschem_action.scm (contents, props changed) Modified: head/cad/lepton-eda/Makefile Modified: head/cad/lepton-eda/Makefile ============================================================================== --- head/cad/lepton-eda/Makefile Tue Jul 2 15:24:50 2019 (r505684) +++ head/cad/lepton-eda/Makefile Tue Jul 2 15:41:44 2019 (r505685) @@ -2,7 +2,7 @@ PORTNAME= lepton-eda PORTVERSION= 1.9.7 -PORTREVISION= 1 +PORTREVISION= 2 DISTVERSIONSUFFIX= -20181211 CATEGORIES= cad @@ -18,9 +18,9 @@ LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ libpng.so:graphics/png \ libstroke.so:devel/libstroke -USES= autoreconf desktop-file-utils gettext-tools gnome groff:build \ - libtool localbase makeinfo pathfix perl5 pkgconfig python:run \ - shared-mime-info shebangfix +USES= autoreconf desktop-file-utils gettext-tools gnome \ + groff:build libtool localbase makeinfo pathfix perl5 \ + pkgconfig python:2.7,run shared-mime-info shebangfix USE_GITHUB= yes USE_GNOME= cairo gtk20 USE_LDCONFIG= yes @@ -52,10 +52,6 @@ OPTIONS_SUB= yes NLS_CONFIGURE_ENABLE= nls NLS_USES= gettext-runtime - -post-patch: - @${REINPLACE_CMD} -e 's,guile-2\.0,guile-2.2,' \ - ${WRKSRC}/m4/geda-guile.m4 # work around for errors while running # build-tools/icon-theme-installer: Added: head/cad/lepton-eda/files/patch-m4_geda-guile.m4 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/lepton-eda/files/patch-m4_geda-guile.m4 Tue Jul 2 15:41:44 2019 (r505685) @@ -0,0 +1,26 @@ +--- m4/geda-guile.m4.orig 2018-12-11 19:24:41 UTC ++++ m4/geda-guile.m4 +@@ -34,9 +34,20 @@ AC_DEFUN([AX_CHECK_GUILE], + GUILE_MIN_MINOR=`echo ${GUILE_MIN_VER} | sed -e 's;[[^\.]]*\.;;' -e 's;\..*;;g'` + GUILE_MIN_TEENY=`echo ${GUILE_MIN_VER} | sed -e 's;.*\.;;'` + +- PKG_CHECK_MODULES(GUILE, [guile-2.0 >= $GUILE_MIN_VER], +- [GUILE_PKG_NAME=guile-2.0], +- [AC_MSG_ERROR([you need at least version ${GUILE_MIN_VER} of guile])]) ++ _found_pkg_config_guile=yes ++ PKG_CHECK_MODULES(GUILE, [guile-2.2 >= $GUILE_MIN_VER], ++ [GUILE_PKG_NAME=guile-2.2], [_found_pkg_config_guile=no]) ++ ++ if test "${_found_pkg_config_guile}" = "no" ; then ++ PKG_CHECK_MODULES(GUILE, [guile-2.0 >= $GUILE_MIN_VER], ++ [_found_pkg_config_guile=yes ++ GUILE_PKG_NAME=guile-2.0], ++ [_found_pkg_config_guile=no]) ++ fi ++ ++ if test "${_found_pkg_config_guile}" = "no" ; then ++ AC_MSG_ERROR([you need at least version ${GUILE_MIN_VER} of guile]) ++ fi + + AC_SUBST([GUILE_PKG_NAME]) + Added: head/cad/lepton-eda/files/patch-schematic_scheme_gschem_action.scm ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/lepton-eda/files/patch-schematic_scheme_gschem_action.scm Tue Jul 2 15:41:44 2019 (r505685) @@ -0,0 +1,102 @@ +--- schematic/scheme/gschem/action.scm.orig 2018-12-11 19:24:41 UTC ++++ schematic/scheme/gschem/action.scm +@@ -1,6 +1,7 @@ + ;; Lepton EDA Schematic Capture + ;; Scheme API + ;; Copyright (C) 2013 Peter Brett ++;; Copyright (C) 2017-2019 Lepton EDA Contributors + ;; + ;; This program is free software; you can redistribute it and/or modify + ;; it under the terms of the GNU General Public License as published by +@@ -21,11 +22,10 @@ + #:use-module (gschem core gettext) + #:use-module (gschem window) + #:use-module (gschem hook) ++ #:use-module (geda log) + #:use-module (ice-9 optargs) + #:export-syntax (define-action)) + +-(or (defined? 'define-syntax) +- (use-modules (ice-9 syncase))) + + (define last-action (make-fluid)) + (define current-action-position (make-fluid)) +@@ -33,18 +33,25 @@ + ;; Define an eval-in-currentmodule procedure + (define (eval-cm expr) (eval expr (current-module))) + +-;; Evaluates a gschem action. A gschem action is expected to be a ++;; Evaluates a lepton-schematic action. An action is expected to be a + ;; symbol naming a thunk variable in the current module. + ;; + ;; The special-case symbol repeat-last-command causes the last action + ;; executed to be repeated. + (define-public (eval-action! action) + (define (invalid-action-error) +- (error (_ "~S is not a valid gschem action.") action)) ++ (log! 'warning (_ "[~A] is not a valid lepton-schematic action.") action)) ++ (define (no-last-action-error) ++ (log! 'message (_ "There is no last action to repeat."))) + + (define (eval-action!/recursive a) + + (cond ++ ;; The action is #f when the user hits "." (repeat last action) ++ ;; and there is no last action to repeat. ++ ((eq? a #f) ++ (no-last-action-error)) ++ + ;; Handle repeat-last-command + ((equal? 'repeat-last-command a) + ;; N.b. must call eval-action! rather than +@@ -107,29 +114,30 @@ + ;; The action is a magical procedure that does nothing but call + ;; eval-action! *on itself*. This allows you to invoke an action + ;; just by calling it like a normal function. +- (letrec ((action (lambda () (eval-action! action)))) ++ (let ((unique-tag (list #f))) ++ (letrec ((action (case-lambda ++ (() (eval-action! action)) ++ ((x) unique-tag)))) + +- ;; The action data is stored in procedure properties -- most +- ;; importantly, the actual thunk that the action wraps +- (let ((sp! (lambda (k v) (set-procedure-property! action k v)))) +- (sp! 'gschem-cookie %cookie) +- (sp! 'gschem-thunk thunk) +- (sp! 'gschem-properties '())) ++ ;; The action data is stored in procedure properties -- most ++ ;; importantly, the actual thunk that the action wraps ++ (let ((sp! (lambda (k v) (set-procedure-property! action k v)))) ++ (sp! 'gschem-cookie %cookie) ++ (sp! 'gschem-thunk thunk) ++ (sp! 'gschem-properties '())) + +- ;; Deal with any properties. props should contain arguments in +- ;; pairs, where the first element of each pair is a keyword naming +- ;; a procedure property (e.g. #:icon) and the second element in +- ;; the corresponding value (e.g. "insert-text"). +- (let loop ((lst props)) +- (and (< 1 (length lst)) +- (set-action-property! action +- (keyword->symbol (list-ref lst 0)) +- (list-ref lst 1)) +- (loop (list-tail lst 2)))) +- +- ++ ;; Deal with any properties. props should contain arguments in ++ ;; pairs, where the first element of each pair is a keyword naming ++ ;; a procedure property (e.g. #:icon) and the second element in ++ ;; the corresponding value (e.g. "insert-text"). ++ (let loop ((lst props)) ++ (and (< 1 (length lst)) ++ (set-action-property! action ++ (keyword->symbol (list-ref lst 0)) ++ (list-ref lst 1)) ++ (loop (list-tail lst 2)))) + +- action)) ++ action))) + + (define (action-thunk action) + (procedure-property action 'gschem-thunk))