Date: 3 Nov 2000 14:08:06 -0000 From: okazaki@be.to To: FreeBSD-gnats-submit@freebsd.org Subject: ports/22574: [New port] devel/pcl-cvs-emacs Message-ID: <20001103140806.405.qmail@dolphin.be.to>
next in thread | raw e-mail | index | archive | help
>Number: 22574 >Category: ports >Synopsis: [New port] devel/pcl-cvs-emacs >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-ports >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Fri Nov 03 06:10:00 PST 2000 >Closed-Date: >Last-Modified: >Originator: OKAZAKI Tetsurou >Release: FreeBSD 4.1-STABLE i386 >Organization: Unknown >Environment: GNU Emacs 19.34 >Description: Master port of PCL-CVS, an Emacs-based front-end to CVS. This PR requires ports/22572 (devel/elib-emacs). >How-To-Repeat: If you(committer) usually use emacs20 but emacs19, please do the following steps to test this port. 1) Install emacs19, custom-emacs, elib-emacs under /usr/local/Emacs19 to avoid conflicts with already installed emacs20. $ cd ${PORTSDIR}/editor/emacs $ make LOCALBASE=/usr/local/Emacs19 PREFIX=/usr/local/Emacs19 install $ cd ${PORTSDIR}/editor/custom-emacs $ make LOCALBASE=/usr/local/Emacs19 PREFIX=/usr/local/Emacs19 install $ cd ${PORTSDIR}/devel/elib-emacs $ make LOCALBASE=/usr/local/Emacs19 PREFIX=/usr/local/Emacs19 install 4) If you already installed diff-mode.el under /usr/local, make a symbolic link to it in the emacs19 site-lisp directory. $ cd /usr/local/Emacs19/share/emacs/site-lisp $ ln -s /usr/local/share/emacs/site-lisp/diff-mode.el . or install it under the same prefix with emacs19. $ cd ${PORTSDIR}/textproc/diff-mode.el $ make LOCALBASE=/usr/local/Emacs19 PREFIX=/usr/local/Emacs19 install 5) Install pcl-cvs-emacs under the same prefix with emacs19. $ cd ${PORTSDIR}/devel/pcl-cvs-emacs $ make LOCALBASE=/usr/local/Emacs19 PREFIX=/usr/local/Emacs19 package 6) Start emacs19 with minimal settings. $ /usr/local/Emacs19/bin/emacs -q -nw 7) then eval "(require 'pcl-cvs-setup)" in the *scratch* buffer. >Fix: Use the shar below to import the port. # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # pcl-cvs-emacs # pcl-cvs-emacs/files # pcl-cvs-emacs/files/patch-aa # pcl-cvs-emacs/Makefile # pcl-cvs-emacs/pkg-comment # pcl-cvs-emacs/pkg-descr # pcl-cvs-emacs/pkg-plist # pcl-cvs-emacs/pkg-message # pcl-cvs-emacs/distinfo # echo c - pcl-cvs-emacs mkdir -p pcl-cvs-emacs > /dev/null 2>&1 echo c - pcl-cvs-emacs/files mkdir -p pcl-cvs-emacs/files > /dev/null 2>&1 echo x - pcl-cvs-emacs/files/patch-aa sed 's/^X//' >pcl-cvs-emacs/files/patch-aa << 'END-of-pcl-cvs-emacs/files/patch-aa' X--- cvs-compat.el.orig Mon Mar 6 06:32:21 2000 X+++ cvs-compat.el Wed Nov 1 17:30:04 2000 X@@ -30,6 +30,19 @@ X (require 'cl) X X ;;;; X+;;;; :-Keywords X+;;;; X+ X+(eval-and-compile X+ (funcall (lambda (keys) X+ (let ((keywords keys)) X+ (while keywords X+ (or (boundp (car keywords)) X+ (set (car keywords) (car keywords))) X+ (setq keywords (cdr keywords))))) X+ '(:dense :inherit :postproc :show))) X+ X+;;;; X ;;;; String Processing X ;;;; X X@@ -66,6 +79,18 @@ X (defmacro with-current-buffer (buf &rest body) X `(save-current-buffer (set-buffer ,buf) ,@body))) X X+;; doesn't exist in Emacs < 20.1 X+(unless (fboundp 'with-temp-buffer) X+ (defmacro with-temp-buffer (&rest body) X+ (let ((temp-buffer (make-symbol "temp-buffer"))) X+ `(let ((,temp-buffer X+ (get-buffer-create (generate-new-buffer-name " *temp*")))) X+ (unwind-protect X+ (with-current-buffer ,temp-buffer X+ ,@body) X+ (and (buffer-name ,temp-buffer) X+ (kill-buffer ,temp-buffer))))))) X+ X ;;;; X ;;;; Keymaps X ;;;; X@@ -113,6 +138,19 @@ X (defmacro defface (sym val str &rest rest) X `(defvar ,sym (make-face ',sym) ,str))) X X+(load "bytecomp" nil t) X+(unless (fboundp 'byte-compile-file-form-custom-declare-variable) X+ ;; Bind defcustom'ed variables. X+ (put 'custom-declare-variable 'byte-hunk-handler X+ 'byte-compile-file-form-custom-declare-variable) X+ (defun byte-compile-file-form-custom-declare-variable (form) X+ (if (memq 'free-vars byte-compile-warnings) X+ (setq byte-compile-bound-variables X+ (cons (nth 1 (nth 1 form)) byte-compile-bound-variables))) X+ form)) X+ X+;;(setq byte-compile-warnings '(free-vars unresolved callargs redefine)) X+ X ;;;; X ;;;; missing functions in XEmacs X ;;;; X@@ -134,6 +172,12 @@ X (unless (fboundp 'read-directory-name) X (defalias 'read-directory-name 'read-file-name)) X X+;; doesn't exist in Emacs < 20.1 nor XEmacs < 20.3 X+(unless (fboundp 'functionp) X+ (defun functionp (object) X+ (or (subrp object) (byte-code-function-p object) X+ (eq (car-safe object) 'lambda) X+ (and (symbolp object) (fboundp object))))) X X (provide 'cvs-compat) X ;;; cvs-compat.el ends here END-of-pcl-cvs-emacs/files/patch-aa echo x - pcl-cvs-emacs/Makefile sed 's/^X//' >pcl-cvs-emacs/Makefile << 'END-of-pcl-cvs-emacs/Makefile' X# New ports collection makefile for: pcl-cvs for GNU Emacs 19 X# Date created: 18 Apr 2000 X# Whom: OKAZAKI Tetsurou X# X# $FreeBSD$ X# X XPORTNAME= pcl-cvs XPORTVERSION= 2.9.9 XCATEGORIES= devel elisp XMASTER_SITES= ftp://rum.cs.yale.edu/pub/monnier/pcl-cvs/ XPKGNAMESUFFIX= -${EMACS_PORT_NAME} X XMAINTAINER?= okazaki@be.to X X# startup el filename XPORT_SETUPEL= pcl-cvs-setup.el X# document install directory by install-doc target XPORTDOCDIR?= share/doc/pcl-cvs X X# This is a master port. XPORTCLASS?= master X X# emacs port setup X.if (${PORTCLASS} == "master") XEMACS_PORT_NAME= emacs X.endif X X# target name for make build XALL_TARGET?= elcfiles info XINSTALL_TARGET?= install_el install_elc install_info XINSTALL_TARGET+= install_startup X X.include <bsd.port.pre.mk> X X.if ${EMACS_VER} == "19.34" XEASY_MMODE= easy-mmode.el XEXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} XDISTFILES= ${EXTRACT_ONLY} ${EASY_MMODE} XELIB_SETUP= '(if (locate-library "elib-startup") (require '\''elib-startup))' X.endif X XPLIST_SUB+= PORTDOCDIR=${PORTDOCDIR} \ X PORT_SETUPEL=${PORT_SETUPEL} XMAKE_ARGS+= EMACS="${EMACS_CMD} -q --no-site-file" \ X CP="${INSTALL_DATA}" \ X MAKEINFO="makeinfo --no-split" \ X MKDIR="${MKDIR}" \ X prefix="${PREFIX}" \ X lispdir="${PREFIX}/${EMACS_SITE_LISPDIR}" \ X startupfile="${PORT_SETUPEL}" X XRUN_DEPENDS+= ${LOCALBASE}/${EMACS_SITE_LISPDIR}/diff-mode.el:${PORTSDIR}/textproc/diff-mode.el X X.if defined(EMACS_PORT_NAME) XELIB_PORTDIR= ${PORTSDIR}/devel/elib-${EMACS_PORT_NAME} XBUILD_DEPENDS+= ${LOCALBASE}/${EMACS_SITE_LISPDIR}/elib/cookie.el:${ELIB_PORTDIR} XRUN_DEPENDS+= ${LOCALBASE}/${EMACS_SITE_LISPDIR}/elib/cookie.el:${ELIB_PORTDIR} X.if (${EMACS_VER} == "19.34") X# depends on custom: emacs-19.34 or mule-19.34 XBUILD_DEPENDS+= ${LOCALBASE}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT_NAME} XRUN_DEPENDS+= ${LOCALBASE}/${EMACS_LIBDIR_WITH_VER}/site-lisp/custom.el:${PORTSDIR}/editors/custom-${EMACS_PORT_NAME} X.endif X.else X.BEGIN: X @${ECHO} "Error: Bad port." X @${ECHO} "You must define EMACS_PORT_NAME." X @${FALSE} X.endif X Xpost-extract: X.if defined(EASY_MMODE) X ${CP} ${_DISTDIR}${EASY_MMODE} ${WRKSRC} X.endif X Xpre-build: X ${RM} ${WRKSRC}/pcl-cvs.info* X Xpost-build: X ${ECHO} "(provide 'pcl-cvs-startup)" >> ${WRKSRC}/pcl-cvs-startup.el X Xpre-install: X.if defined(ELIB_SETUP) && !empty(ELIB_SETUP) X ${ECHO} ${ELIB_SETUP} >> ${INSTALL_WRKSRC}/${PORT_SETUPEL} X.endif X Xpost-install: X ${ECHO} "(provide 'pcl-cvs-setup)" >> ${INSTALL_WRKSRC}/${PORT_SETUPEL} X @${MAKE} setupel-install X.if !defined(NOPORTDOCS) X @${MAKE} doc-install X.endif X @${CAT} ${PKGMESSAGE} X Xdoc-install: X ${MKDIR} ${PREFIX}/${PORTDOCDIR} X cd ${INSTALL_WRKSRC} && \ X for i in ChangeLog FAQ NEWS README TODO; do \ X ${INSTALL_DATA} $${i} ${PREFIX}/${PORTDOCDIR}/ ; \ X done X Xsetupel-install: X ${INSTALL_DATA} ${INSTALL_WRKSRC}/${PORT_SETUPEL} \ X ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/ X X.include <bsd.port.post.mk> END-of-pcl-cvs-emacs/Makefile echo x - pcl-cvs-emacs/pkg-comment sed 's/^X//' >pcl-cvs-emacs/pkg-comment << 'END-of-pcl-cvs-emacs/pkg-comment' XAn Emacs-based front-end to CVS END-of-pcl-cvs-emacs/pkg-comment echo x - pcl-cvs-emacs/pkg-descr sed 's/^X//' >pcl-cvs-emacs/pkg-descr << 'END-of-pcl-cvs-emacs/pkg-descr' XPCL-CVS is a front-end to CVS. It integrates the most frequently Xused CVS commands into emacs. X XFor VC users, PCL-CVS can be thought of as a VC-dired specially designed Xfor CVS. PCL-CVS is not a replacement for VC and is supposed to interact Xwell with it. It provides a global view of your project and allows Xexecution of cvs commands on several files at a time. X X PCL-CVS is installed the following directory tree: X PREFIX/share/emacs/site-lisp/pcl-cvs/ --- pcl-cvs END-of-pcl-cvs-emacs/pkg-descr echo x - pcl-cvs-emacs/pkg-plist sed 's/^X//' >pcl-cvs-emacs/pkg-plist << 'END-of-pcl-cvs-emacs/pkg-plist' X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/cvs-compat.el X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/cvs-compat.elc X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/cvs-edit.el X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/cvs-edit.elc X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/cvs-log.el X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/cvs-log.elc X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/cvs-status.el X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/cvs-status.elc X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/pcl-cvs-defs.el X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/pcl-cvs-defs.elc X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/pcl-cvs-info.el X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/pcl-cvs-info.elc X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/pcl-cvs-parse.el X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/pcl-cvs-parse.elc X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/pcl-cvs-startup.el X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/pcl-cvs-util.el X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/pcl-cvs-util.elc X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/pcl-cvs.el X%%EMACS_LIBDIR%%/site-lisp/pcl-cvs/pcl-cvs.elc X%%EMACS_LIBDIR_WITH_VER%%/site-lisp/%%PORT_SETUPEL%% X@dirrm %%EMACS_LIBDIR%%/site-lisp/pcl-cvs X%%PORTDOCDIR%%/ChangeLog X%%PORTDOCDIR%%/FAQ X%%PORTDOCDIR%%/NEWS X%%PORTDOCDIR%%/README X%%PORTDOCDIR%%/TODO X@dirrm %%PORTDOCDIR%% X@unexec install-info --delete %D/info/pcl-cvs.info %D/info/dir Xinfo/pcl-cvs.info X@exec install-info %D/info/pcl-cvs.info %D/info/dir END-of-pcl-cvs-emacs/pkg-plist echo x - pcl-cvs-emacs/pkg-message sed 's/^X//' >pcl-cvs-emacs/pkg-message << 'END-of-pcl-cvs-emacs/pkg-message' XTo use pcl-cvs, put the following setup into your ~/.emacs: X X (require 'pcl-cvs-setup) X END-of-pcl-cvs-emacs/pkg-message echo x - pcl-cvs-emacs/distinfo sed 's/^X//' >pcl-cvs-emacs/distinfo << 'END-of-pcl-cvs-emacs/distinfo' XMD5 (pcl-cvs-2.9.9.tar.gz) = b4511b9eae0bf2ee033f37705cb5f1f9 XMD5 (easy-mmode.el) = 59baa701f3fafcf2a8f47ea58785722b END-of-pcl-cvs-emacs/distinfo exit >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20001103140806.405.qmail>