From dbb523cbb3f4e0b161707d8375f1a0d1887ad22b Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Tue, 31 Aug 2010 20:17:10 +0100 Subject: [PATCH 01/12] Include additional keywords found in Arduino version 0018. --- arduino-mode.el | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/arduino-mode.el b/arduino-mode.el index 0f434b5..d6291b4 100644 --- a/arduino-mode.el +++ b/arduino-mode.el @@ -49,15 +49,18 @@ (c-lang-defconst c-simple-stmt-kwds arduino (append '("pinMode" "digitalWrite" "digitalRead" ; Digital I/O - "analogRead" "analogWrite" ; Analog I/O - "shiftOut" "pulseIn" ; Advanced I/O - "millis" "delay" "delayMicroseconds" ; Time - "min" "max" "abs" "constrain" "map" "pow" "sq" "sqrt" "sin" ; Math + "analogReference" "analogRead" "analogWrite" ; Analog I/O + "tone" "noTone" "shiftOut" "pulseIn" ; Advanced I/O + "millis" "micros" "delay" "delayMicroseconds" ; Time + "min" "max" "abs" "constrain" "map" "pow" "sq" "sqrt" ; Math "sin" "cos" "tan" ; Trigonometry "randomSeed" "random" ; Random Numbers + "lowByte" "highByte" "bitRead" "bitWrite" "bitSet" ; Bits and Bytes + "bitClear" "bit" "attachInterrupt" "detachInterrupt" ; External Interrupts "interrupts" "noInterrupts" ; Interrupts - "begin" "available" "read" "flush" "print" "println") ; Serial Communication + "begin" "end" "available" "read" "flush" "print" "println" ; Serial Communication + "write") (c-lang-const c-simple-stmt-kwds))) (c-lang-defconst c-primary-expr-kwds From 41789bcdd88e171b198b112398dd14458d991717 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Tue, 31 Aug 2010 22:04:08 +0100 Subject: [PATCH 02/12] Add convenience function arduino-upload to flash a chip. --- arduino-mode.el | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/arduino-mode.el b/arduino-mode.el index d6291b4..d3a6c50 100644 --- a/arduino-mode.el +++ b/arduino-mode.el @@ -109,6 +109,15 @@ Each list item should be a regexp matching a single identifier." :group 'arduino (easy-menu-define arduino-menu arduino-mode-map "Arduino Mode Commands" (cons "Arduino" (c-lang-const c-mode-menu arduino))) +(defun arduino-upload () + "Upload a sketch to an Arduino board. + +You will need a suitable Makefile. See URL +`http://mjo.tc/atelier/2009/02/arduino-cli.html'." + (interactive) + (make-local-variable 'compile-command) + (compile "make -k upload")) + ;;;###autoload (add-to-list 'auto-mode-alist '("\\.pde\\'" . arduino-mode)) From 220b5ca1f618b5382316d93c3d445ae1c0b2f4e1 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Sun, 5 Sep 2010 18:54:13 +0100 Subject: [PATCH 03/12] New keywords shiftIn and peek in arduino 0019. --- arduino-mode.el | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arduino-mode.el b/arduino-mode.el index d3a6c50..4333d5e 100644 --- a/arduino-mode.el +++ b/arduino-mode.el @@ -50,7 +50,7 @@ (c-lang-defconst c-simple-stmt-kwds arduino (append '("pinMode" "digitalWrite" "digitalRead" ; Digital I/O "analogReference" "analogRead" "analogWrite" ; Analog I/O - "tone" "noTone" "shiftOut" "pulseIn" ; Advanced I/O + "tone" "noTone" "shiftIn" "shiftOut" "pulseIn" ; Advanced I/O "millis" "micros" "delay" "delayMicroseconds" ; Time "min" "max" "abs" "constrain" "map" "pow" "sq" "sqrt" ; Math "sin" "cos" "tan" ; Trigonometry @@ -60,7 +60,7 @@ "attachInterrupt" "detachInterrupt" ; External Interrupts "interrupts" "noInterrupts" ; Interrupts "begin" "end" "available" "read" "flush" "print" "println" ; Serial Communication - "write") + "write" "peek") (c-lang-const c-simple-stmt-kwds))) (c-lang-defconst c-primary-expr-kwds From a409aa0c2199c9ce5f288644426298ee3d2b5639 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Mon, 6 Sep 2010 23:57:54 +0100 Subject: [PATCH 04/12] Automatically create a skeleton Makefile. --- arduino-mode.el | 34 ++++++++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/arduino-mode.el b/arduino-mode.el index 4333d5e..ccecdfc 100644 --- a/arduino-mode.el +++ b/arduino-mode.el @@ -109,14 +109,44 @@ Each list item should be a regexp matching a single identifier." :group 'arduino (easy-menu-define arduino-menu arduino-mode-map "Arduino Mode Commands" (cons "Arduino" (c-lang-const c-mode-menu arduino))) +(defcustom arduino-makefile-name "Makefile" + "Name of Makefile used to compile and upload Arduino sketches." + :type 'string + :group 'arduino) + (defun arduino-upload () "Upload a sketch to an Arduino board. You will need a suitable Makefile. See URL `http://mjo.tc/atelier/2009/02/arduino-cli.html'." (interactive) - (make-local-variable 'compile-command) - (compile "make -k upload")) + (if (file-exists-p arduino-makefile-name) + (progn + (make-local-variable 'compile-command) + (compile (concat "make -f " arduino-makefile-name " -k upload"))) + (if (y-or-n-p (concat "No Makefile `" arduino-makefile-name + "' exists. Create it? ")) + (let ((arduino-project-name + (file-name-nondirectory + (file-name-sans-extension (buffer-file-name))))) + (find-file-other-window arduino-makefile-name) + (insert "# Customise the following values as required: + +TARGET = " arduino-project-name " +ARDUINO_LIBS = + +MCU = atmega328p +F_CPU = 16000000 +ARDUINO_PORT = /dev/ttyUSB* +AVRDUDE_ARD_BAUDRATE = 57600 +ARDUINO_DIR = /usr/share/arduino + +# If you do not already have Arduino.mk, find it at +# http://mjo.tc/atelier/2009/02/arduino-cli.html +include /usr/share/arduino/Arduino.mk +") + (message "Edit the Makefile as required and re-run arduino-upload.")) + (message (concat "No Makefile `" arduino-makefile-name "' exists. Uploading cancelled."))))) ;;;###autoload (add-to-list 'auto-mode-alist '("\\.pde\\'" . arduino-mode)) From 1e0afb732d4f45e084728120922952365dfa7956 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Tue, 7 Sep 2010 00:25:09 +0100 Subject: [PATCH 05/12] Add to languages customisation group. --- arduino-mode.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/arduino-mode.el b/arduino-mode.el index ccecdfc..42e2eb4 100644 --- a/arduino-mode.el +++ b/arduino-mode.el @@ -67,7 +67,8 @@ arduino (append '("Serial") (c-lang-const c-primary-expr-kwds))) -(defgroup arduino nil "Arduino mode customizations") +(defgroup arduino nil "Arduino mode customizations" + :group 'languages) (defcustom arduino-font-lock-extra-types nil "*List of extra types (aside from the type keywords) to recognize in Arduino mode. From 16e1d57cc6a2ac6ef7f8c12ecf9ba0e452ec597d Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Tue, 7 Sep 2010 00:39:19 +0100 Subject: [PATCH 06/12] Add init file. --- arduino-mode-init.el | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 arduino-mode-init.el diff --git a/arduino-mode-init.el b/arduino-mode-init.el new file mode 100644 index 0000000..341a9fe --- /dev/null +++ b/arduino-mode-init.el @@ -0,0 +1,2 @@ +(autoload 'arduino-mode "arduino-mode" "Major mode for editing Arduino code." t) +(add-to-list 'auto-mode-alist '("\\.pde\\'" . arduino-mode)) From 43185aab9a6c5694d0e95e77654d22198b96070b Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Tue, 7 Sep 2010 01:01:54 +0100 Subject: [PATCH 07/12] Add spec file for building RPM packages for Fedora. --- emacs-common-arduino-mode.spec | 128 +++++++++++++++++++++++++++++++++ 1 file changed, 128 insertions(+) create mode 100644 emacs-common-arduino-mode.spec diff --git a/emacs-common-arduino-mode.spec b/emacs-common-arduino-mode.spec new file mode 100644 index 0000000..2662322 --- /dev/null +++ b/emacs-common-arduino-mode.spec @@ -0,0 +1,128 @@ +%global pkg arduino-mode +%global pkgname Arduino Mode +%global gitcommit 16e1d57 + +Name: emacs-common-%{pkg} +Version: git1.%{gitcommit} +Release: 1%{?dist} +Summary: Emacs editing mode for Arduino code + +Group: Development/Tools +License: GPLv3+ +URL: http://github.com/mavit/%{pkg}/ +Source0: http://download.github.com/mavit-%{pkg}-%{gitcommit}.tar.gz + +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +BuildArch: noarch +BuildRequires: emacs +BuildRequires: xemacs +Requires: arduino + +%description +%{pkgname} is an add-on package for GNU Emacs and XEmacs, providing an +editing mode for the Arduino electronics prototyping platform. + +This package contains the files common to both the GNU Emacs and XEmacs +%{pkgname} packages. + +%package -n emacs-%{pkg} +Summary: Compiled elisp files to run %{pkgname} under GNU Emacs +Group: Development/Tools +Requires: emacs(bin) >= %{_emacs_version} +Requires: emacs-common-%{pkg} = %{version}-%{release} + +%description -n emacs-%{pkg} +This package contains the byte compiled elisp packages to run +%{pkgname} with GNU Emacs. + + +%package -n emacs-%{pkg}-el +Summary: Elisp source files for %{pkgname} under GNU Emacs +Group: Development/Tools +Requires: emacs-%{pkg} = %{version}-%{release} + +%description -n emacs-%{pkg}-el +This package contains the elisp source files for %{pkgname} under GNU +Emacs. You do not need to install this package to run +%{pkgname}. Install the emacs-%{pkg} package to use %{pkgname} with +GNU Emacs. + + +%package -n xemacs-%{pkg} +Summary: Compiled elisp files to run %{pkgname} under XEmacs +Group: Development/Tools +Requires: xemacs(bin) >= %{_xemacs_version} +Requires: emacs-common-%{pkg} = %{version}-%{release} + +%description -n xemacs-%{pkg} +This package contains the byte compiled elisp packages to use %{pkgname} +with XEmacs. + + +%package -n xemacs-%{pkg}-el +Summary: Elisp source files for %{pkgname} under XEmacs +Group: Development/Tools +Requires: xemacs-%{pkg} = %{version}-%{release} + +%description -n xemacs-%{pkg}-el +This package contains the elisp source files for %{pkgname} under +XEmacs. You do not need to install this package to run +%{pkgname}. Install the xemacs-%{pkg} package to use %{pkgname} with +XEmacs. + + +%prep +%setup -q -n mavit-%{pkg}-%{gitcommit} + +%build +%{_emacs_bytecompile} %{pkg}.el +%{_xemacs_bytecompile} %{pkg}.el + +%install +rm -rf $RPM_BUILD_ROOT +mkdir -p $RPM_BUILD_ROOT/%{_emacs_sitelispdir}/%{pkg} \ + $RPM_BUILD_ROOT/%{_xemacs_sitelispdir}/%{pkg} \ + $RPM_BUILD_ROOT/%{_emacs_sitestartdir} \ + $RPM_BUILD_ROOT/%{_xemacs_sitestartdir} +cp -a %{pkg}.el %{pkg}.elc $RPM_BUILD_ROOT/%{_emacs_sitelispdir}/%{pkg}/ +cp -a %{pkg}.el %{pkg}.elc $RPM_BUILD_ROOT/%{_xemacs_sitelispdir}/%{pkg}/ +cp -a %{pkg}-init.el $RPM_BUILD_ROOT/%{_emacs_sitestartdir}/ +cp -a %{pkg}-init.el $RPM_BUILD_ROOT/%{_xemacs_sitestartdir}/ + +%clean +rm -rf $RPM_BUILD_ROOT + + +%files +%defattr(-,root,root,-) +%doc + + +%files -n emacs-%{pkg} +%defattr(-,root,root,-) +%{_emacs_sitelispdir}/%{pkg}/*.elc +%{_emacs_sitestartdir}/*.el +%dir %{_emacs_sitelispdir}/%{pkg} + + +%files -n emacs-%{pkg}-el +%defattr(-,root,root,-) +%{_emacs_sitelispdir}/%{pkg}/*.el + + +%files -n xemacs-%{pkg} +%defattr(-,root,root,-) +%{_xemacs_sitelispdir}/%{pkg}/*.elc +%{_xemacs_sitestartdir}/*.el +%dir %{_xemacs_sitelispdir}/%{pkg} + + +%files -n xemacs-%{pkg}-el +%defattr(-,root,root,-) +%{_xemacs_sitelispdir}/%{pkg}/*.el + + +%changelog +* Tue Sep 7 2010 - git1.16e1d57-1 +- Initial version. + From 2a71e759cddd3911741b63ec423deccde2a712f0 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Tue, 7 Sep 2010 01:22:32 +0100 Subject: [PATCH 08/12] Use correct version of compiled code for GNU Emacs. --- emacs-common-arduino-mode.spec | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/emacs-common-arduino-mode.spec b/emacs-common-arduino-mode.spec index 2662322..a7eca7d 100644 --- a/emacs-common-arduino-mode.spec +++ b/emacs-common-arduino-mode.spec @@ -4,7 +4,7 @@ Name: emacs-common-%{pkg} Version: git1.%{gitcommit} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Emacs editing mode for Arduino code Group: Development/Tools @@ -76,6 +76,7 @@ XEmacs. %build %{_emacs_bytecompile} %{pkg}.el +mv %{pkg}.elc %{pkg}.gnu.elc %{_xemacs_bytecompile} %{pkg}.el %install @@ -84,7 +85,8 @@ mkdir -p $RPM_BUILD_ROOT/%{_emacs_sitelispdir}/%{pkg} \ $RPM_BUILD_ROOT/%{_xemacs_sitelispdir}/%{pkg} \ $RPM_BUILD_ROOT/%{_emacs_sitestartdir} \ $RPM_BUILD_ROOT/%{_xemacs_sitestartdir} -cp -a %{pkg}.el %{pkg}.elc $RPM_BUILD_ROOT/%{_emacs_sitelispdir}/%{pkg}/ +cp -a %{pkg}.el $RPM_BUILD_ROOT/%{_emacs_sitelispdir}/%{pkg}/ +cp -a %{pkg}.gnu.elc $RPM_BUILD_ROOT/%{_emacs_sitelispdir}/%{pkg}/%{pkg}.elc cp -a %{pkg}.el %{pkg}.elc $RPM_BUILD_ROOT/%{_xemacs_sitelispdir}/%{pkg}/ cp -a %{pkg}-init.el $RPM_BUILD_ROOT/%{_emacs_sitestartdir}/ cp -a %{pkg}-init.el $RPM_BUILD_ROOT/%{_xemacs_sitestartdir}/ @@ -123,6 +125,9 @@ rm -rf $RPM_BUILD_ROOT %changelog -* Tue Sep 7 2010 - git1.16e1d57-1 +* Tue Sep 7 2010 Peter Oliver - git1.16e1d57-2 +- Use correct version of compiled code for GNU Emacs. + +* Tue Sep 7 2010 Peter Oliver - git1.16e1d57-1 - Initial version. From 3cc39d9a20810813e309c2cfd7a95f5ab3d5f914 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Tue, 7 Sep 2010 20:51:37 +0100 Subject: [PATCH 09/12] Add bindings for arduino-upload. --- arduino-mode.el | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/arduino-mode.el b/arduino-mode.el index 42e2eb4..a51a6be 100644 --- a/arduino-mode.el +++ b/arduino-mode.el @@ -106,10 +106,20 @@ Each list item should be a regexp matching a single identifier." :group 'arduino ;; Add bindings which are only useful for Arduino map) "Keymap used in arduino-mode buffers.") +(define-key arduino-mode-map "\C-cg" 'arduino-upload) (easy-menu-define arduino-menu arduino-mode-map "Arduino Mode Commands" (cons "Arduino" (c-lang-const c-mode-menu arduino))) +; How does one add this directly to the Arduino menu in XEmacs? +(if (string-match "XEmacs" emacs-version) + (easy-menu-add-item arduino-menu + (list "Micro-controller") ["Upload" arduino-upload t]) + (easy-menu-add-item arduino-menu + nil ["----" nil nil]) + (easy-menu-add-item arduino-menu + nil ["Upload" arduino-upload t])) + (defcustom arduino-makefile-name "Makefile" "Name of Makefile used to compile and upload Arduino sketches." :type 'string @@ -170,7 +180,7 @@ Key bindings: local-abbrev-table arduino-mode-abbrev-table abbrev-mode t imenu-generic-expression cc-imenu-c-generic-expression) - (use-local-map c-mode-map) + (use-local-map arduino-mode-map) ;; `c-init-language-vars' is a macro that is expanded at compile ;; time to a large `setq' with all the language variables and their ;; customized values for our language. From aa051bbed8f9c9881201cb95dfcad5548c2176af Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Thu, 9 Sep 2010 01:52:26 +0100 Subject: [PATCH 10/12] Add a serial monitor. --- arduino-mode.el | 18 ++++++++++++++++-- emacs-common-arduino-mode.spec | 12 ++++++++---- 2 files changed, 24 insertions(+), 6 deletions(-) diff --git a/arduino-mode.el b/arduino-mode.el index a51a6be..224e429 100644 --- a/arduino-mode.el +++ b/arduino-mode.el @@ -33,7 +33,8 @@ (eval-when-compile (require 'cc-langs) (require 'cc-fonts) - (require 'cc-menus)) + (require 'cc-menus) + (require 'term)) (eval-and-compile ;; fall back on c-mode @@ -107,6 +108,8 @@ Each list item should be a regexp matching a single identifier." :group 'arduino map) "Keymap used in arduino-mode buffers.") (define-key arduino-mode-map "\C-cg" 'arduino-upload) +(unless (string-match "XEmacs" emacs-version) + (define-key arduino-mode-map "\C-cm" 'arduino-serial-monitor)) (easy-menu-define arduino-menu arduino-mode-map "Arduino Mode Commands" (cons "Arduino" (c-lang-const c-mode-menu arduino))) @@ -118,7 +121,9 @@ Each list item should be a regexp matching a single identifier." :group 'arduino (easy-menu-add-item arduino-menu nil ["----" nil nil]) (easy-menu-add-item arduino-menu - nil ["Upload" arduino-upload t])) + nil ["Upload" arduino-upload t]) + (easy-menu-add-item arduino-menu + nil ["Serial monitor" arduino-serial-monitor t])) (defcustom arduino-makefile-name "Makefile" "Name of Makefile used to compile and upload Arduino sketches." @@ -159,6 +164,15 @@ include /usr/share/arduino/Arduino.mk (message "Edit the Makefile as required and re-run arduino-upload.")) (message (concat "No Makefile `" arduino-makefile-name "' exists. Uploading cancelled."))))) +(unless (string-match "XEmacs" emacs-version) + (defun arduino-serial-monitor (port speed) + "Monitor the serial connection to the Arduino." + (interactive (list (serial-read-name) nil)) + + (if (get-buffer-process port) + (switch-to-buffer port) + (serial-term port (or speed (serial-read-speed)))))) + ;;;###autoload (add-to-list 'auto-mode-alist '("\\.pde\\'" . arduino-mode)) diff --git a/emacs-common-arduino-mode.spec b/emacs-common-arduino-mode.spec index a7eca7d..5df6bda 100644 --- a/emacs-common-arduino-mode.spec +++ b/emacs-common-arduino-mode.spec @@ -1,10 +1,10 @@ %global pkg arduino-mode %global pkgname Arduino Mode -%global gitcommit 16e1d57 +%global gitcommit 3cc39d9 Name: emacs-common-%{pkg} -Version: git1.%{gitcommit} -Release: 2%{?dist} +Version: git2.%{gitcommit} +Release: 1%{?dist} Summary: Emacs editing mode for Arduino code Group: Development/Tools @@ -16,7 +16,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch BuildRequires: emacs BuildRequires: xemacs -Requires: arduino +Requires: arduino-mk %description %{pkgname} is an add-on package for GNU Emacs and XEmacs, providing an @@ -125,6 +125,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Sep 7 2010 Peter Oliver - git2.3cc39d9-1 +- Updated version of arduino-mode. +- Require arduino-mk. + * Tue Sep 7 2010 Peter Oliver - git1.16e1d57-2 - Use correct version of compiled code for GNU Emacs. From a9e196bd0c5c8cd99152245cc2baa923c474ae52 Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Thu, 9 Sep 2010 01:58:15 +0100 Subject: [PATCH 11/12] RPM rebuilt. --- emacs-common-arduino-mode.spec | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/emacs-common-arduino-mode.spec b/emacs-common-arduino-mode.spec index 5df6bda..36973d9 100644 --- a/emacs-common-arduino-mode.spec +++ b/emacs-common-arduino-mode.spec @@ -1,10 +1,10 @@ %global pkg arduino-mode %global pkgname Arduino Mode -%global gitcommit 3cc39d9 +%global gitcommit aa051bb Name: emacs-common-%{pkg} -Version: git2.%{gitcommit} -Release: 1%{?dist} +Version: 0 +Release: 0.2.20100907git%{gitcommit}%{?dist} Summary: Emacs editing mode for Arduino code Group: Development/Tools @@ -125,6 +125,12 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Thu Sep 9 2010 Peter Oliver - 0-0.1.20100907gitaa051bb +- Updated version of arduino-mode. + +* Tue Sep 7 2010 Peter Oliver - 0-0.1.20100907git3cc39d9 +- Apply package naming guidelines. + * Tue Sep 7 2010 Peter Oliver - git2.3cc39d9-1 - Updated version of arduino-mode. - Require arduino-mk. From 0aeea232f5155af8732e22b2e44b3b6a51ebba2d Mon Sep 17 00:00:00 2001 From: Peter Oliver Date: Wed, 22 Sep 2010 17:36:46 +0100 Subject: [PATCH 12/12] Add missing BuildRequires of xemacs-packages-extra. --- emacs-common-arduino-mode.spec | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/emacs-common-arduino-mode.spec b/emacs-common-arduino-mode.spec index 36973d9..908175b 100644 --- a/emacs-common-arduino-mode.spec +++ b/emacs-common-arduino-mode.spec @@ -4,7 +4,7 @@ Name: emacs-common-%{pkg} Version: 0 -Release: 0.2.20100907git%{gitcommit}%{?dist} +Release: 0.3.20100907git%{gitcommit}%{?dist} Summary: Emacs editing mode for Arduino code Group: Development/Tools @@ -14,8 +14,7 @@ Source0: http://download.github.com/mavit-%{pkg}-%{gitcommit}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -BuildRequires: emacs -BuildRequires: xemacs +BuildRequires: emacs xemacs xemacs-packages-extra Requires: arduino-mk %description @@ -25,6 +24,7 @@ editing mode for the Arduino electronics prototyping platform. This package contains the files common to both the GNU Emacs and XEmacs %{pkgname} packages. + %package -n emacs-%{pkg} Summary: Compiled elisp files to run %{pkgname} under GNU Emacs Group: Development/Tools @@ -74,11 +74,13 @@ XEmacs. %prep %setup -q -n mavit-%{pkg}-%{gitcommit} + %build %{_emacs_bytecompile} %{pkg}.el mv %{pkg}.elc %{pkg}.gnu.elc %{_xemacs_bytecompile} %{pkg}.el + %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT/%{_emacs_sitelispdir}/%{pkg} \ @@ -91,6 +93,7 @@ cp -a %{pkg}.el %{pkg}.elc $RPM_BUILD_ROOT/%{_xemacs_sitelispdir}/%{pkg}/ cp -a %{pkg}-init.el $RPM_BUILD_ROOT/%{_emacs_sitestartdir}/ cp -a %{pkg}-init.el $RPM_BUILD_ROOT/%{_xemacs_sitestartdir}/ + %clean rm -rf $RPM_BUILD_ROOT @@ -125,7 +128,10 @@ rm -rf $RPM_BUILD_ROOT %changelog -* Thu Sep 9 2010 Peter Oliver - 0-0.1.20100907gitaa051bb +* Wed Sep 22 2010 Peter Oliver - 0-0.3.20100907gitaa051bb +- Add missing BuildRequires of xemacs-packages-extra. + +* Thu Sep 9 2010 Peter Oliver - 0-0.2.20100907gitaa051bb - Updated version of arduino-mode. * Tue Sep 7 2010 Peter Oliver - 0-0.1.20100907git3cc39d9