diff etc/srecode/make.srt @ 105407:84fc40980c51

* srecode: New directory for SRecode template files.
author Chong Yidong <cyd@stupidchicken.com>
date Sat, 03 Oct 2009 19:28:56 +0000
parents
children 1d1d5d9bd884
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/srecode/make.srt	Sat Oct 03 19:28:56 2009 +0000
@@ -0,0 +1,79 @@
+;; make.srt
+
+;; Copyright (C) 2009 Free Software Foundation, Inc.
+
+;; Author: Eric M. Ludlam <eric@siege-engine.com>
+
+;; This file is part of GNU Emacs.
+
+;; GNU Emacs 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 3 of the License, or
+;; (at your option) any later version.
+
+;; GNU Emacs 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 GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
+
+set mode "makefile-mode"
+set escape_start "{{"
+set escape_end "}}"
+set comment_start "#"
+set comment_prefix "#"
+set TAB "\t"
+
+context file
+
+template empty :file :user
+----
+{{>:filecomment}}
+
+all: {{^}}
+
+{{comment_start}} end
+----
+
+context declaration
+
+;; GNU Make has real functions you can define, but semantic uses
+;; 'function for rules.  This is unfortunate, and should be fixed.
+template rule :blank
+----
+{{?NAME}}:
+{{TAB}}{{^}}
+----
+bind "r"
+
+template inferencerule :blank
+----
+%.{{?SRCEXTENSION}}: %.{{?DESTEXTENSION}}
+{{TAB}}{{^}}
+----
+bind "i"
+
+template phonyrule :blank
+----
+.PHONY {{?NAME}}
+{{NAME}}:
+{{TAB}}{{^}}
+----
+bind "p"
+
+
+template variable :blank
+"Insert a variable declaration."
+----
+{{?NAME}}:= {{^}}
+----
+bind "v"
+
+template include :blank
+----
+include {{?NAME}}
+----
+
+;; end
\ No newline at end of file