blob: 777c34bbb0f1856b93a047dbbd5fbf5b8b7e64f1 [file] [log] [blame]
Theodore Ts'o50e1e101997-04-26 13:58:21 +00001#
2# Makefile for lib/ss
3#
4
5srcdir = @srcdir@
6top_srcdir = @top_srcdir@
7VPATH = @srcdir@
8top_builddir = ../..
Theodore Ts'o1e3472c1997-04-29 14:53:37 +00009my_dir = lib/ss
Theodore Ts'o50e1e101997-04-26 13:58:21 +000010INSTALL = @INSTALL@
11
12@MCONFIG@
13
14LIBRARY= libss
15LIBDIR= ss
16
17DLL_ADDRESS = 0x66880000
18DLL_JUMPSIZE = 0x1000
19DLL_GOTSIZE = 0x1000
20DLL_VERSION = 1.0
21DLL_IMAGE = libss
22DLL_STUB = libss
23DLL_LIBS = -L../.. -lcom_err
24DLL_MYDIR = ss
25DLL_INSTALL_DIR = $(libdir)
26
27ELF_VERSION = 2.0
Theodore Ts'o297f47a1997-04-26 14:25:20 +000028ELF_SO_VERSION = 2
Theodore Ts'o50e1e101997-04-26 13:58:21 +000029ELF_IMAGE = libss
30ELF_MYDIR = ss
31ELF_INSTALL_DIR = $(libdir)
32
33BSDLIB_VERSION = 1.0
34BSDLIB_IMAGE = libss
35BSDLIB_MYDIR = ss
36BSDLIB_INSTALL_DIR = $(libdir)
37
38TAGS=etags
39COMPILE_ET=../et/compile_et
40MK_CMDS=./mk_cmds
41
42# -I.. is so that ss/ss_err.h works
43# -I$(srcdir)/.. is so that ss/ss.h works
44# -I$(srcdir)/../et is so com_err.h works
45XTRA_CFLAGS=-DPOSIX_SIGNALS -I$(srcdir)/../et
46
47.c.o:
Theodore Ts'o74becf31997-04-26 14:37:06 +000048 $(CC) $(ALL_CFLAGS) -c $<
49@PROFILE_CMT@ $(CC) $(ALL_CFLAGS) -pg -o profiled/$*.o -c $<
50@CHECKER_CMT@ $(CC) $(ALL_CFLAGS) -checker -g -o checker/$*.o -c $<
51@DLL_CMT@ (export JUMP_DIR=`pwd`/jump; $(CC) -B$(JUMP_PREFIX) \
52@DLL_CMT@ $(ALL_CFLAGS) -o jump/$*.o -c $<)
53@ELF_CMT@ $(CC) $(ALL_CFLAGS) -fPIC -o elfshared/$*.o -c $<
54@BSDLIB_CMT@ $(CC) $(ALL_CFLAGS) -fpic -o pic/$*.o -c $<
Theodore Ts'o50e1e101997-04-26 13:58:21 +000055
56# for the library
57
58LIB= libss.a
59
60# with ss_err.o first, ss_err.h should get rebuilt first too. should not
61# be relying on this, though.
62OBJS= ss_err.o \
63 std_rqs.o \
64 invocation.o help.o \
65 execute_cmd.o listen.o parse.o error.o prompt.o \
66 request_tbl.o list_rqs.o pager.o requests.o \
67 data.o
68
69SRCS= $(srcdir)/invocation.c $(srcdir)/help.c \
70 $(srcdir)/execute_cmd.c $(srcdir)/listen.c $(srcdir)/parse.c \
71 $(srcdir)/error.c $(srcdir)/prompt.c $(srcdir)/request_tbl.c \
72 $(srcdir)/list_rqs.c $(srcdir)/pager.c $(srcdir)/requests.c \
73 $(srcdir)/data.c
74
75all:: mk_cmds
76
77@MAKEFILE_LIBRARY@
78@MAKEFILE_DLL@
79@MAKEFILE_ELF@
80@MAKEFILE_BSDLIB@
81@MAKEFILE_PROFILE@
82@MAKEFILE_CHECKER@
83
84CODE= $(SRCS) $(MKCMDSFILES)
85
86MKCMDSOBJS= mk_cmds.o utils.o options.o ct.tab.o cmd_tbl.lex.o
87
88MKCMDSFILES= mk_cmds.c utils.c options.c ct.y cmd_tbl.lex.l
89
90MKCMDSCSRCS= mk_cmds.c utils.c options.c ct.tab.c cmd_tbl.lex.c
91
92
Theodore Ts'o62c06f71997-04-29 14:34:47 +000093HFILES= ss.h ss_internal.h copyright.h
94
95INSTALL_HFILES= ss.h ss_err.h copyright.h
Theodore Ts'o50e1e101997-04-26 13:58:21 +000096
97# for 'tags' and dependencies
98
99CFILES= $(SRCS) $(MKCMDSCSRCS) test_ss.c
100
101# for building archives
102
103FILES= $(SRCS) $(MKCMDSFILES) $(HFILES) \
104 ss_err.et std_rqs.ct Makefile \
Theodore Ts'o62c06f71997-04-29 14:34:47 +0000105 test_ss.c ss copyright.h
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000106
107all:: libss.a # libss_p.a lint
108
109std_rqs.c: std_rqs.ct $(MK_CMDS)
110 $(MK_CMDS) $(srcdir)/std_rqs.ct
111
112ss_err.c ss_err.h: ss_err.et
113 $(COMPILE_ET) $(srcdir)/ss_err.et
114
115ct.tab.c ct.tab.h: ct.y
116 $(RM) -f ct.tab.* y.*
117 $(YACC) -d $(srcdir)/ct.y
118 $(MV) -f y.tab.c ct.tab.c
119 $(MV) -f y.tab.h ct.tab.h
120
121#libss.o: $(OBJS)
122# $(LD) -r -s -o $@ $(OBJS)
123# $(CHMOD) -x $@
124
Theodore Ts'o62c06f71997-04-29 14:34:47 +0000125mk_cmds: $(SUBSTITUTE) $(srcdir)/mk_cmds.sh.in
126 -$(CHMOD) +x $(SUBSTITUTE)
127 $(SUBSTITUTE) $(srcdir)/mk_cmds.sh.in mk_cmds
128 $(CHMOD) +x mk_cmds
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000129
130installdirs::
131 $(top_srcdir)/mkinstalldirs $(DESTDIR)$(ulibdir) \
132 $(DESTDIR)$(includedir)/ss
133
Theodore Ts'o62c06f71997-04-29 14:34:47 +0000134install:: libss.a $(INSTALL_HFILES) copyright.h installdirs
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000135 $(INSTALL_DATA) libss.a $(DESTDIR)$(ulibdir)/libss.a
136 $(CHMOD) 644 $(DESTDIR)$(ulibdir)/libss.a
137 -$(RANLIB) $(DESTDIR)$(ulibdir)/libss.a
138 $(CHMOD) $(LIBMODE) $(DESTDIR)$(ulibdir)/libss.a
139 $(RM) -f $(includedir)/ss/*
Theodore Ts'o62c06f71997-04-29 14:34:47 +0000140 for i in $(INSTALL_HFILES) copyright.h; do \
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000141 $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(includedir)/ss/$$i; \
142 done
143
144uninstall::
145 $(RM) -f $(ulibdir)/libss.a
146 $(RM) -rf $(includedir)/ss
147
148clean::
Theodore Ts'o62c06f71997-04-29 14:34:47 +0000149 $(RM) -f ../libss.a libss.a mk_cmds ss_err.h ss_err.c std_rqs.c \
150 *.o *~ \#* *.bak core
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000151
152mostlyclean:: clean
153distclean:: clean
Theodore Ts'o62c06f71997-04-29 14:34:47 +0000154 $(RM) -f .depend Makefile
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000155
156# +++ Dependency line eater +++
157#
158# Makefile dependencies follow. This must be the last section in
159# the Makefile.in file
160#
Theodore Ts'o62c06f71997-04-29 14:34:47 +0000161invocation.o: $(srcdir)/invocation.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \
162 $(srcdir)/copyright.h $(top_builddir)/lib/ss/ss_err.h
163help.o: $(srcdir)/help.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \
164 $(srcdir)/copyright.h $(top_builddir)/lib/ss/ss_err.h
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000165execute_cmd.o: $(srcdir)/execute_cmd.c $(srcdir)/ss_internal.h \
Theodore Ts'o62c06f71997-04-29 14:34:47 +0000166 $(srcdir)/ss.h $(srcdir)/copyright.h $(top_builddir)/lib/ss/ss_err.h
167listen.o: $(srcdir)/listen.c $(srcdir)/copyright.h $(srcdir)/ss_internal.h \
168 $(srcdir)/ss.h $(top_builddir)/lib/ss/ss_err.h
169parse.o: $(srcdir)/parse.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \
170 $(srcdir)/copyright.h $(top_builddir)/lib/ss/ss_err.h
171error.o: $(srcdir)/error.c $(srcdir)/copyright.h $(srcdir)/../et/com_err.h \
172 $(srcdir)/ss_internal.h $(srcdir)/ss.h $(top_builddir)/lib/ss/ss_err.h
173prompt.o: $(srcdir)/prompt.c $(srcdir)/copyright.h $(srcdir)/ss_internal.h \
174 $(srcdir)/ss.h $(top_builddir)/lib/ss/ss_err.h
175request_tbl.o: $(srcdir)/request_tbl.c $(srcdir)/copyright.h \
176 $(srcdir)/ss_internal.h $(srcdir)/ss.h $(top_builddir)/lib/ss/ss_err.h
Theodore Ts'o50e1e101997-04-26 13:58:21 +0000177list_rqs.o: $(srcdir)/list_rqs.c $(srcdir)/copyright.h \
Theodore Ts'o62c06f71997-04-29 14:34:47 +0000178 $(srcdir)/ss_internal.h $(srcdir)/ss.h $(top_builddir)/lib/ss/ss_err.h
179pager.o: $(srcdir)/pager.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \
180 $(srcdir)/copyright.h $(top_builddir)/lib/ss/ss_err.h
181requests.o: $(srcdir)/requests.c $(srcdir)/copyright.h \
182 $(srcdir)/ss_internal.h $(srcdir)/ss.h $(top_builddir)/lib/ss/ss_err.h
183data.o: $(srcdir)/data.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \
184 $(srcdir)/copyright.h $(top_builddir)/lib/ss/ss_err.h
185