summaryrefslogtreecommitdiff
path: root/Makefile.am
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile.am')
-rw-r--r--Makefile.am69
1 files changed, 69 insertions, 0 deletions
diff --git a/Makefile.am b/Makefile.am
new file mode 100644
index 0000000..6433f0c
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,69 @@
+## Process this file with automake to produce Makefile.in
+
+if AMC_ADDON
+ADDON = @ADDON@
+endif
+
+if AMC_HISTORY
+man_MANS = rc.1 history.1
+HISTORY = history
+else
+man_MANS = rc.1
+endif
+
+if AMC_NO_HASHBANG
+EXECVE = execve.o
+endif
+
+if AMC_READLINE
+READLINE = readline.o
+endif
+
+if AMC_RESTART
+SYSTEM = system-bsd.o
+else
+SYSTEM = system.o
+endif
+
+bin_PROGRAMS = rc
+noinst_PROGRAMS = mksignal tripping $(HISTORY)
+
+rc_SOURCES = builtins.c except.c exec.c fn.c footobar.c getopt.c glob.c glom.c hash.c heredoc.c input.c lex.c list.c main.c match.c nalloc.c open.c parse.c print.c redir.c signal.c status.c tree.c utils.c var.c wait.c walk.c which.c
+
+EXTRA_rc_SOURCES = addon.c execve.c readline.c system.c system-bsd.c
+
+rc_DEPENDENCIES = sigmsgs.o $(ADDON) $(EXECVE) $(READLINE) $(SYSTEM)
+rc_LDADD = sigmsgs.o $(ADDON) $(EXECVE) $(READLINE) $(SYSTEM)
+
+noinst_HEADERS = getgroups.h jbwrap.h parse.h proto.h rc.h rlimit.h wait.h
+
+BUILT_SOURCES = sigmsgs.c
+
+EXTRA_DIST = EXAMPLES RELDATE addon.c addon.h history.1 parse.y rc.1 trip.rc
+
+sigmsgs.c sigmsgs.h: mksignal
+ ./mksignal
+
+CONFIGURE_DEPENDENCIES = RELDATE
+
+# Of course, parse.c and parse.h depend on parse.y. However, unless
+# you're hacking on rc's grammar, it's not useful to have this
+# dependency expressed, since the distributed parse.[ch] (generated with
+# byacc, and lightly edited to remove a couple of gcc warnings) are
+# portable (I hope).
+#parse.c parse.h: $(srcdir)/parse.y
+# $(YACC) -d $(srcdir)/parse.y
+# mv y.tab.c parse.c
+# mv y.tab.h parse.h
+
+trip: rc tripping
+ ./rc -p < $(srcdir)/trip.rc
+
+install-exec-hook:
+if AMC_HISTORY
+ $(LN) history - ;\
+ $(INSTALL_PROGRAM) - $(bindir) ;\
+ rm -f $(bindir)/--; $(LN) $(bindir)/- $(bindir)/-- ;\
+ rm -f $(bindir)/-p; $(LN) $(bindir)/- $(bindir)/-p ;\
+ rm -f $(bindir)/--p; $(LN) $(bindir)/- $(bindir)/--p
+endif