Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 1 | # |
| 2 | # Makefile for lib/ss |
| 3 | # |
| 4 | |
| 5 | srcdir = @srcdir@ |
| 6 | top_srcdir = @top_srcdir@ |
| 7 | VPATH = @srcdir@ |
| 8 | top_builddir = ../.. |
Theodore Ts'o | 1e3472c | 1997-04-29 14:53:37 +0000 | [diff] [blame] | 9 | my_dir = lib/ss |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 10 | INSTALL = @INSTALL@ |
Theodore Ts'o | 3ae497e | 2003-03-16 06:26:25 -0500 | [diff] [blame] | 11 | DLOPEN_LIB = @DLOPEN_LIB@ |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 12 | |
| 13 | @MCONFIG@ |
| 14 | |
| 15 | LIBRARY= libss |
| 16 | LIBDIR= ss |
| 17 | |
| 18 | DLL_ADDRESS = 0x66880000 |
| 19 | DLL_JUMPSIZE = 0x1000 |
| 20 | DLL_GOTSIZE = 0x1000 |
| 21 | DLL_VERSION = 1.0 |
| 22 | DLL_IMAGE = libss |
| 23 | DLL_STUB = libss |
Theodore Ts'o | 3ae497e | 2003-03-16 06:26:25 -0500 | [diff] [blame] | 24 | DLL_LIBS = -L../.. -lcom_err $(DLOPEN_LIB) |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 25 | DLL_MYDIR = ss |
Theodore Ts'o | e5fa0e3 | 1998-04-01 02:18:45 +0000 | [diff] [blame] | 26 | DLL_INSTALL_DIR = $(root_libdir) |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 27 | |
| 28 | ELF_VERSION = 2.0 |
Theodore Ts'o | 297f47a | 1997-04-26 14:25:20 +0000 | [diff] [blame] | 29 | ELF_SO_VERSION = 2 |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 30 | ELF_IMAGE = libss |
| 31 | ELF_MYDIR = ss |
Theodore Ts'o | e5fa0e3 | 1998-04-01 02:18:45 +0000 | [diff] [blame] | 32 | ELF_INSTALL_DIR = $(root_libdir) |
Theodore Ts'o | 3ae497e | 2003-03-16 06:26:25 -0500 | [diff] [blame] | 33 | ELF_OTHER_LIBS = -L../.. -lcom_err $(DLOPEN_LIB) |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 34 | |
| 35 | BSDLIB_VERSION = 1.0 |
| 36 | BSDLIB_IMAGE = libss |
| 37 | BSDLIB_MYDIR = ss |
Theodore Ts'o | e5fa0e3 | 1998-04-01 02:18:45 +0000 | [diff] [blame] | 38 | BSDLIB_INSTALL_DIR = $(root_libdir) |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 39 | |
| 40 | TAGS=etags |
Theodore Ts'o | 91835c1 | 2003-03-30 22:26:13 -0500 | [diff] [blame] | 41 | COMPILE_ET=../et/compile_et --build-tree |
Theodore Ts'o | 1f00aaf | 2000-07-04 12:34:34 +0000 | [diff] [blame] | 42 | MK_CMDS=_SS_DIR_OVERRIDE=. ./mk_cmds |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 43 | |
| 44 | # -I.. is so that ss/ss_err.h works |
| 45 | # -I$(srcdir)/.. is so that ss/ss.h works |
| 46 | # -I$(srcdir)/../et is so com_err.h works |
Theodore Ts'o | 91835c1 | 2003-03-30 22:26:13 -0500 | [diff] [blame] | 47 | XTRA_CFLAGS= -I$(srcdir)/../et |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 48 | |
| 49 | .c.o: |
Theodore Ts'o | 74becf3 | 1997-04-26 14:37:06 +0000 | [diff] [blame] | 50 | $(CC) $(ALL_CFLAGS) -c $< |
Theodore Ts'o | 19c78dc | 1997-04-29 16:17:09 +0000 | [diff] [blame] | 51 | @PROFILE_CMT@ $(CC) $(ALL_CFLAGS) -g -pg -o profiled/$*.o -c $< |
Theodore Ts'o | 74becf3 | 1997-04-26 14:37:06 +0000 | [diff] [blame] | 52 | @CHECKER_CMT@ $(CC) $(ALL_CFLAGS) -checker -g -o checker/$*.o -c $< |
| 53 | @DLL_CMT@ (export JUMP_DIR=`pwd`/jump; $(CC) -B$(JUMP_PREFIX) \ |
| 54 | @DLL_CMT@ $(ALL_CFLAGS) -o jump/$*.o -c $<) |
Theodore Ts'o | 3ae497e | 2003-03-16 06:26:25 -0500 | [diff] [blame] | 55 | @ELF_CMT@ $(CC) $(ALL_CFLAGS) -DSHARED_ELF_LIB -fPIC -o elfshared/$*.o -c $< |
Theodore Ts'o | 434661f | 2004-02-29 22:46:49 -0500 | [diff] [blame^] | 56 | @BSDLIB_CMT@ $(CC) $(ALL_CFLAGS) $(BSDLIB_PIC_FLAG) -o pic/$*.o -c $< |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 57 | |
| 58 | # for the library |
| 59 | |
| 60 | LIB= libss.a |
| 61 | |
| 62 | # with ss_err.o first, ss_err.h should get rebuilt first too. should not |
| 63 | # be relying on this, though. |
| 64 | OBJS= ss_err.o \ |
| 65 | std_rqs.o \ |
| 66 | invocation.o help.o \ |
| 67 | execute_cmd.o listen.o parse.o error.o prompt.o \ |
| 68 | request_tbl.o list_rqs.o pager.o requests.o \ |
Theodore Ts'o | 3ae497e | 2003-03-16 06:26:25 -0500 | [diff] [blame] | 69 | data.o get_readline.o |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 70 | |
| 71 | SRCS= $(srcdir)/invocation.c $(srcdir)/help.c \ |
| 72 | $(srcdir)/execute_cmd.c $(srcdir)/listen.c $(srcdir)/parse.c \ |
| 73 | $(srcdir)/error.c $(srcdir)/prompt.c $(srcdir)/request_tbl.c \ |
| 74 | $(srcdir)/list_rqs.c $(srcdir)/pager.c $(srcdir)/requests.c \ |
Theodore Ts'o | 3ae497e | 2003-03-16 06:26:25 -0500 | [diff] [blame] | 75 | $(srcdir)/data.c $(srcdir)/get_readline.c |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 76 | |
| 77 | all:: mk_cmds |
| 78 | |
| 79 | @MAKEFILE_LIBRARY@ |
| 80 | @MAKEFILE_DLL@ |
| 81 | @MAKEFILE_ELF@ |
| 82 | @MAKEFILE_BSDLIB@ |
| 83 | @MAKEFILE_PROFILE@ |
| 84 | @MAKEFILE_CHECKER@ |
| 85 | |
| 86 | CODE= $(SRCS) $(MKCMDSFILES) |
| 87 | |
| 88 | MKCMDSOBJS= mk_cmds.o utils.o options.o ct.tab.o cmd_tbl.lex.o |
| 89 | |
| 90 | MKCMDSFILES= mk_cmds.c utils.c options.c ct.y cmd_tbl.lex.l |
| 91 | |
| 92 | MKCMDSCSRCS= mk_cmds.c utils.c options.c ct.tab.c cmd_tbl.lex.c |
| 93 | |
| 94 | |
Theodore Ts'o | 2740156 | 1999-09-14 20:11:19 +0000 | [diff] [blame] | 95 | HFILES= ss.h ss_internal.h |
Theodore Ts'o | e5fa0e3 | 1998-04-01 02:18:45 +0000 | [diff] [blame] | 96 | SHARE_FILES= ct_c.awk ct_c.sed |
Theodore Ts'o | 62c06f7 | 1997-04-29 14:34:47 +0000 | [diff] [blame] | 97 | |
Theodore Ts'o | 2740156 | 1999-09-14 20:11:19 +0000 | [diff] [blame] | 98 | INSTALL_HFILES= ss.h |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 99 | |
| 100 | # for 'tags' and dependencies |
| 101 | |
| 102 | CFILES= $(SRCS) $(MKCMDSCSRCS) test_ss.c |
| 103 | |
| 104 | # for building archives |
| 105 | |
| 106 | FILES= $(SRCS) $(MKCMDSFILES) $(HFILES) \ |
| 107 | ss_err.et std_rqs.ct Makefile \ |
Theodore Ts'o | 2740156 | 1999-09-14 20:11:19 +0000 | [diff] [blame] | 108 | test_ss.c ss |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 109 | |
| 110 | all:: libss.a # libss_p.a lint |
| 111 | |
Theodore Ts'o | 1f00aaf | 2000-07-04 12:34:34 +0000 | [diff] [blame] | 112 | std_rqs.c: std_rqs.ct mk_cmds |
Theodore Ts'o | e5fa0e3 | 1998-04-01 02:18:45 +0000 | [diff] [blame] | 113 | DIR=$(srcdir) $(MK_CMDS) $(srcdir)/std_rqs.ct |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 114 | |
| 115 | ss_err.c ss_err.h: ss_err.et |
| 116 | $(COMPILE_ET) $(srcdir)/ss_err.et |
| 117 | |
| 118 | ct.tab.c ct.tab.h: ct.y |
| 119 | $(RM) -f ct.tab.* y.* |
| 120 | $(YACC) -d $(srcdir)/ct.y |
| 121 | $(MV) -f y.tab.c ct.tab.c |
| 122 | $(MV) -f y.tab.h ct.tab.h |
| 123 | |
| 124 | #libss.o: $(OBJS) |
| 125 | # $(LD) -r -s -o $@ $(OBJS) |
| 126 | # $(CHMOD) -x $@ |
| 127 | |
Theodore Ts'o | 44339bd | 1997-10-15 02:47:20 +0000 | [diff] [blame] | 128 | mk_cmds: $(DEP_SUBSTITUTE) $(srcdir)/mk_cmds.sh.in |
Theodore Ts'o | 62c06f7 | 1997-04-29 14:34:47 +0000 | [diff] [blame] | 129 | $(SUBSTITUTE) $(srcdir)/mk_cmds.sh.in mk_cmds |
| 130 | $(CHMOD) +x mk_cmds |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 131 | |
| 132 | installdirs:: |
Theodore Ts'o | e5fa0e3 | 1998-04-01 02:18:45 +0000 | [diff] [blame] | 133 | $(top_srcdir)/mkinstalldirs $(DESTDIR)$(libdir) \ |
| 134 | $(DESTDIR)$(includedir)/ss $(DESTDIR)$(datadir)/ss \ |
| 135 | $(DESTDIR)$(bindir) |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 136 | |
Theodore Ts'o | 2740156 | 1999-09-14 20:11:19 +0000 | [diff] [blame] | 137 | install:: libss.a $(INSTALL_HFILES) installdirs ss_err.h mk_cmds |
Theodore Ts'o | e5fa0e3 | 1998-04-01 02:18:45 +0000 | [diff] [blame] | 138 | $(INSTALL_DATA) libss.a $(DESTDIR)$(libdir)/libss.a |
| 139 | $(CHMOD) 644 $(DESTDIR)$(libdir)/libss.a |
| 140 | -$(RANLIB) $(DESTDIR)$(libdir)/libss.a |
| 141 | $(CHMOD) $(LIBMODE) $(DESTDIR)$(libdir)/libss.a |
Theodore Ts'o | 7cf73dc | 1997-08-14 17:17:16 +0000 | [diff] [blame] | 142 | $(RM) -f $(DESTDIR)$(includedir)/ss/* |
Theodore Ts'o | 2740156 | 1999-09-14 20:11:19 +0000 | [diff] [blame] | 143 | for i in $(INSTALL_HFILES); do \ |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 144 | $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(includedir)/ss/$$i; \ |
| 145 | done |
Theodore Ts'o | 5972d0d | 1997-06-07 03:45:08 +0000 | [diff] [blame] | 146 | $(INSTALL_DATA) ss_err.h $(DESTDIR)$(includedir)/ss/ss_err.h |
Theodore Ts'o | e5fa0e3 | 1998-04-01 02:18:45 +0000 | [diff] [blame] | 147 | for i in $(SHARE_FILES); do \ |
| 148 | $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(datadir)/ss/$$i; \ |
| 149 | done |
| 150 | $(INSTALL) mk_cmds $(DESTDIR)$(bindir)/mk_cmds |
Theodore Ts'o | 6fe7d11 | 2003-03-16 19:58:25 -0500 | [diff] [blame] | 151 | $(INSTALL_DATA) $(srcdir)/mk_cmds.1 $(DESTDIR)$(man1dir)/mk_cmds.1 |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 152 | |
| 153 | uninstall:: |
Theodore Ts'o | e5fa0e3 | 1998-04-01 02:18:45 +0000 | [diff] [blame] | 154 | $(RM) -f $(DESTDIR)$(libdir)/libss.a $(DESTDIR)$(bindir)/mk_cmds |
| 155 | $(RM) -rf $(DESTDIR)$(includedir)/ss $(DESTDIR)$(datadir)/ss |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 156 | |
| 157 | clean:: |
Theodore Ts'o | 62c06f7 | 1997-04-29 14:34:47 +0000 | [diff] [blame] | 158 | $(RM) -f ../libss.a libss.a mk_cmds ss_err.h ss_err.c std_rqs.c \ |
| 159 | *.o *~ \#* *.bak core |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 160 | |
| 161 | mostlyclean:: clean |
| 162 | distclean:: clean |
Theodore Ts'o | 5c36a2f | 1999-11-19 18:42:30 +0000 | [diff] [blame] | 163 | $(RM) -f .depend Makefile $(srcdir)/TAGS $(srcdir)/Makefile.in.old |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 164 | |
Theodore Ts'o | f0f4acb | 2000-05-25 23:22:11 +0000 | [diff] [blame] | 165 | # |
| 166 | # Hack to parallel makes recognize dependencies correctly. |
| 167 | # |
| 168 | $(top_builddir)/lib/ss/ss_err.h: ss_err.h |
| 169 | |
Theodore Ts'o | 50e1e10 | 1997-04-26 13:58:21 +0000 | [diff] [blame] | 170 | # +++ Dependency line eater +++ |
| 171 | # |
| 172 | # Makefile dependencies follow. This must be the last section in |
| 173 | # the Makefile.in file |
| 174 | # |
Theodore Ts'o | 62c06f7 | 1997-04-29 14:34:47 +0000 | [diff] [blame] | 175 | invocation.o: $(srcdir)/invocation.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ |
Theodore Ts'o | 72d272a | 2003-03-30 23:29:18 -0500 | [diff] [blame] | 176 | $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h |
Theodore Ts'o | 62c06f7 | 1997-04-29 14:34:47 +0000 | [diff] [blame] | 177 | help.o: $(srcdir)/help.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ |
Theodore Ts'o | 72d272a | 2003-03-30 23:29:18 -0500 | [diff] [blame] | 178 | $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h |
Theodore Ts'o | 6c13352 | 1999-07-03 20:37:03 +0000 | [diff] [blame] | 179 | execute_cmd.o: $(srcdir)/execute_cmd.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ |
Theodore Ts'o | 72d272a | 2003-03-30 23:29:18 -0500 | [diff] [blame] | 180 | $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h |
Theodore Ts'o | 2740156 | 1999-09-14 20:11:19 +0000 | [diff] [blame] | 181 | listen.o: $(srcdir)/listen.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ |
Theodore Ts'o | 72d272a | 2003-03-30 23:29:18 -0500 | [diff] [blame] | 182 | $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h |
Theodore Ts'o | 62c06f7 | 1997-04-29 14:34:47 +0000 | [diff] [blame] | 183 | parse.o: $(srcdir)/parse.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ |
Theodore Ts'o | 72d272a | 2003-03-30 23:29:18 -0500 | [diff] [blame] | 184 | $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h |
Theodore Ts'o | 0e8a956 | 2000-12-09 06:41:25 +0000 | [diff] [blame] | 185 | error.o: $(srcdir)/error.c $(top_srcdir)/lib/et/com_err.h \ |
Theodore Ts'o | c6df04b | 2003-07-23 09:53:06 -0400 | [diff] [blame] | 186 | $(srcdir)/ss_internal.h $(srcdir)/ss.h $(top_builddir)/lib/ss/ss_err.h |
Theodore Ts'o | 2740156 | 1999-09-14 20:11:19 +0000 | [diff] [blame] | 187 | prompt.o: $(srcdir)/prompt.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ |
Theodore Ts'o | 72d272a | 2003-03-30 23:29:18 -0500 | [diff] [blame] | 188 | $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h |
Theodore Ts'o | 2740156 | 1999-09-14 20:11:19 +0000 | [diff] [blame] | 189 | request_tbl.o: $(srcdir)/request_tbl.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ |
Theodore Ts'o | 72d272a | 2003-03-30 23:29:18 -0500 | [diff] [blame] | 190 | $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h |
Theodore Ts'o | 2740156 | 1999-09-14 20:11:19 +0000 | [diff] [blame] | 191 | list_rqs.o: $(srcdir)/list_rqs.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ |
Theodore Ts'o | 72d272a | 2003-03-30 23:29:18 -0500 | [diff] [blame] | 192 | $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h |
Theodore Ts'o | 62c06f7 | 1997-04-29 14:34:47 +0000 | [diff] [blame] | 193 | pager.o: $(srcdir)/pager.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ |
Theodore Ts'o | 72d272a | 2003-03-30 23:29:18 -0500 | [diff] [blame] | 194 | $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h |
Theodore Ts'o | 2740156 | 1999-09-14 20:11:19 +0000 | [diff] [blame] | 195 | requests.o: $(srcdir)/requests.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ |
Theodore Ts'o | 72d272a | 2003-03-30 23:29:18 -0500 | [diff] [blame] | 196 | $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h |
Theodore Ts'o | 62c06f7 | 1997-04-29 14:34:47 +0000 | [diff] [blame] | 197 | data.o: $(srcdir)/data.c $(srcdir)/ss_internal.h $(srcdir)/ss.h \ |
Theodore Ts'o | 72d272a | 2003-03-30 23:29:18 -0500 | [diff] [blame] | 198 | $(top_builddir)/lib/ss/ss_err.h $(top_srcdir)/lib/et/com_err.h |
Theodore Ts'o | 6cca7ba | 2003-03-16 20:21:16 -0500 | [diff] [blame] | 199 | get_readline.o: $(srcdir)/get_readline.c $(srcdir)/ss_internal.h \ |
Theodore Ts'o | 72d272a | 2003-03-30 23:29:18 -0500 | [diff] [blame] | 200 | $(srcdir)/ss.h $(top_builddir)/lib/ss/ss_err.h \ |
| 201 | $(top_srcdir)/lib/et/com_err.h |