Makefile, dot/rcrc: Hack rc(1) profile for Plan 9 compatibility.
[profile] / Makefile
index 00d06e4..ea368f2 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -150,7 +150,7 @@ SCRIPTLINKS         += update-buildable-branch
 
 ## Shells.
 DOTLINKS               += .profile .shell-rc .shell-logout
-DOTLINKS               += .shrc .rcrc
+DOTLINKS               += .shrc
 DOTLINKS               += .zprofile .zshrc .zlogout .zshenv
 DOTLINKS               += .bash_profile .bash_completion .bash_logout
 DOTLINKS               += .bashrc .inputrc
@@ -159,6 +159,14 @@ DOTLINKS           += .bashrc .inputrc
 .bash_logout_SRC        = shell-logout
 .zlogout_SRC            = shell-logout
 
+## The Plan 9 `rc' shell.  This needs special hacking, because the Linux port
+## and Plan 9 From User Space have incompatible syntax.
+DOTLINKS               += lib/profile
+lib/profile_SRC                 = rcrc
+all:: $(HOME)/.rcrc
+$(HOME)/.rcrc: dot/rcrc
+       $(call v_tag,SED)sed 's/; if not/else/' $< >$@.new && mv $@.new $@
+
 ## Git.
 DOTSUBST               += .gitconfig
 SCRIPTLINKS            += git-copyright-dates