;; LLVM coding style guidelines in emacs
-;; Maintainer: LLVM Team, http://llvm.cs.uiuc.edu
-;; Modified: 2005-04-24
+;; Maintainer: LLVM Team, http://llvm.org/
-;; Max 80 cols per line, indent by two spaces, no tabs.
-;; Apparently, this does not affect tabs in Makefiles.
-(custom-set-variables
- '(fill-column 80)
- '(c++-indent-level 2)
- '(c-basic-offset 2)
- '(indent-tabs-mode nil))
+;; Add a cc-mode style for editing LLVM C and C++ code
+(c-add-style "llvm.org"
+ '("gnu"
+ (fill-column . 80)
+ (c++-indent-level . 2)
+ (c-basic-offset . 2)
+ (indent-tabs-mode . nil)
+ (c-offsets-alist . ((arglist-intro . ++)
+ (innamespace . 0)
+ (member-init-intro . ++)))))
+;; Files with "llvm" in their names will automatically be set to the
+;; llvm.org coding style.
+(add-hook 'c-mode-common-hook
+ (function
+ (lambda nil
+ (if (string-match "llvm" buffer-file-name)
+ (progn
+ (c-set-style "llvm.org"))))))