;; Routines to do devscripts-compatible emacs routines. ;; copyright 2002 Junichi Uekawa. ;; This file is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation; either version 2, or (at your option) ;; any later version. ;; ;; readme-debian.el is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; ;; You should have received a copy of the GNU General Public License ;; along with your Debian installation, in /usr/share/common-licenses/GPL ;; If not, write to the Free Software Foundation, 675 Mass Ave, ;; Cambridge, MA 02139, USA. (require 'devscripts) (require 'pbuilder-log-view-mode) (defgroup pbuilder nil "PBuilder mode" :group 'tools :prefix "pbuilder-mode-") (defcustom pbuilder-path "/usr/sbin/pbuilder" "*Path to pbuilder." :group 'pbuilder :type 'file) (defcustom pbuilder-user-mode-linux-path "/usr/bin/pbuilder-user-mode-linux" "*Path to pbuilder-user-mode-linux." :group 'pbuilder :type 'file) (defcustom pdebuild-path "/usr/bin/pdebuild" "*Path to pdebuild." :group 'pbuilder :type 'file) (defcustom pdebuild-user-mode-linux-path "/usr/bin/pdebuild-user-mode-linux" "*Path to pdebuild-user-mode-linux." :group 'pbuilder :type 'file) (defcustom debuild-pbuilder-path "/usr/bin/debuild-pbuilder" "*Path to `debuild-pbuilder'." :group 'pbuilder :type 'file) (defconst pbuilder-mode-version "$Id: pbuilder-mode.el,v 1.3 2007-07-14 09:26:05 dancer Exp $" "Version of pbuilder mode.") (defun pdebuild () "Run pdebuild in the current directory." (interactive) (let* ((pdebuild-buffer (concat "*pdebuild*" default-directory)) (pdebuild-process (concat "pdebuild-process-" default-directory)) (package-name (devscripts-internal-get-debian-package-name))) (switch-to-buffer pdebuild-buffer) (toggle-read-only 0) (kill-region (point-min) (point-max)) (compilation-mode) (pbuilder-log-view-add package-name pdebuild-buffer (start-process pdebuild-process pdebuild-buffer pdebuild-path)))) (defun pdebuild-user-mode-linux () "Run pdebuild-user-mode-linux in the current directory." (interactive) (let* ((pdebuild-buffer (concat "*pdebuild*" default-directory)) (pdebuild-process (concat "pdebuild-process-" default-directory)) (package-name (devscripts-internal-get-debian-package-name))) (switch-to-buffer pdebuild-buffer) (toggle-read-only 0) (kill-region (point-min) (point-max)) (compilation-mode) (pbuilder-log-view-add package-name pdebuild-buffer (start-process pdebuild-process pdebuild-buffer pdebuild-user-mode-linux-path)) (set-buffer-process-coding-system 'dos 'dos))) (defun debuild-pbuilder () "Run `debuild-pbuilder' in the current directory." (interactive) (let* ((pdebuild-name (concat "debuild-pbuilder" default-directory)) (pdebuild-buffer (concat "*" pdebuild-name "*" )) (pdebuild-process (concat "debuild-pbuilder-process-" default-directory)) (package-name (devscripts-internal-get-debian-package-name))) (switch-to-buffer pdebuild-buffer) (toggle-read-only 0) (kill-region (point-min) (point-max)) (pbuilder-log-view-add package-name (apply 'make-comint pdebuild-name debuild-pbuilder-path nil debuild-option-list) (get-process pdebuild-name)))) (defun pbuilder-build (filename) "Run pbuilder build for a given FILENAME. Uses `devscripts-mode-gain-root-command' as command to gain root." (interactive "f.dsc File name: ") (let* ((pbuilder-buffer (concat "*pbuilder-build*" filename)) (pbuilder-process (concat "pbuilder-build-process-" filename))) (switch-to-buffer pbuilder-buffer) (toggle-read-only 0) (kill-region (point-min) (point-max)) (compilation-mode) (insert "start compile\n") (pbuilder-log-view-add (file-name-sans-extension (file-name-nondirectory filename)) pbuilder-buffer (start-process pbuilder-process pbuilder-buffer devscripts-mode-gain-root-command pbuilder-path "build" (expand-file-name filename))))) (defun pbuilder-user-mode-linux-build (filename) "Run pbuilder-user-mode-linux build for a given FILENAME. " (interactive "f.dsc File name: ") (let* ((pbuilder-buffer (concat "*pbuilder-uml-build*" filename)) (pbuilder-process (concat "pbuilder-uml-build-process-" filename))) (switch-to-buffer pbuilder-buffer) (toggle-read-only 0) (kill-region (point-min) (point-max)) (compilation-mode) (insert "start compile\n") (pbuilder-log-view-add (file-name-sans-extension (file-name-nondirectory filename)) pbuilder-buffer (start-process pbuilder-process pbuilder-buffer pbuilder-user-mode-linux-path "build" (expand-file-name filename))) (set-buffer-process-coding-system 'dos 'dos))) (provide 'pbuilder-mode)