home *** CD-ROM | disk | FTP | other *** search
/ High Voltage Shareware / high1.zip / high1 / DIR24 / BASH_112.ZIP / BASH-112.TAR / bash-1.12 / makefile.os2 < prev    next >
Makefile  |  1993-11-09  |  17KB  |  479 lines

  1.  # This Makefile is automagically made from cpp-Makefile.  You should
  2.  # not be editing this file; edit cpp-Makefile, machines.h, or
  3.  # support/mksysdefs instead.  Then, assuming the edits were required
  4.  # to compile Bash on your system, mail the changes you had to make to
  5.  # bash-maintainers@ai.mit.edu.  We will do our best to incorporate
  6.  # them into the next release.
  7.  
  8.  # We would like you to use Bison instead of Yacc since some
  9.  # versions of Yacc cannot handle reentrant parsing.  Unfortunately,
  10.  # this includes the Yacc currently being shipped with SunOS4.x.
  11.  # If you do use Yacc, please make sure that any bugs in parsing
  12.  # are not really manifestations of Yacc bugs before you report
  13.  # them.
  14.  
  15.  # Here is a rule for making .o files from .c files that does not
  16.  # force the type of the machine (like -"i386" ) into the flags.
  17. .c.o:
  18. #    $(RM) $@
  19.     $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $(TMD)objects/$*.o $*.c
  20.  
  21. BISON = bison -y
  22.  
  23. CC = gcc 
  24.  
  25.  # Of course, you cannot do this the first time through...
  26.  #SHELL=$(DESTDIR)/bash
  27. #SHELL=/bin/sh
  28. SHELL = /binp/bash
  29.  
  30. RM = rm -f
  31. AR = ar
  32.  
  33. MACHINE = i386
  34. OS = USG 
  35.  
  36.  # PROFILE_FLAGS is either -pg, to generate profiling info for use
  37.  # with gprof, or nothing (the default).
  38. PROFILE_FLAGS=
  39.  
  40.  # This system has some peculiar flags that must be passed to the
  41.  # the C compiler (or to cpp).
  42. SYSDEP = -DUSGr3 
  43.  
  44.  # This system has the vprintf () and vfprintf () calls.
  45. VPRINTF = -DHAVE_VFPRINTF
  46.  
  47.  # This system has <sys/resource.h>
  48. RESOURCE = -DHAVE_RESOURCE
  49.  
  50.  # The signal () call of this system returns a pointer to a function
  51.  # returning void.  The signal handlers themselves are thus void functions.
  52. SIGHANDLER = -DVOID_SIGHANDLER
  53.  
  54.  # This system has <sys/wait.h>
  55. WAITH = -DHAVE_WAIT_H
  56.  
  57.  # This system has a working version of dup2 ().
  58. DUP2 = -DHAVE_DUP2
  59.  
  60. SYSTEM_FLAGS = $(LINEBUF) $(VPRINTF) $(UNISTD) $(GROUPS) $(RESOURCE) \
  61. $(SIGHANDLER) $(SYSDEP) $(WAITH) $(GETWD) $(DUP2) $(STRERROR)-D$(MACHINE) -D$(OS)
  62. #DEBUG_FLAGS = $(PROFILE_FLAGS) -g
  63. DEBUG_FLAGS = -O -m486
  64. LDFLAGS    = $(NOSHARE) $(SYSDEP_LD) $(EXTRA_LD_PATH) $(DEBUG_FLAGS)
  65. CFLAGS    = $(DEBUG_FLAGS) $(SYSTEM_FLAGS) -DSHELL $(ALLOCA_CFLAGS) -D__OS2__
  66. CPPFLAGS= -I$(LIBSRC)
  67.  
  68. LIBRARY_CFLAGS  = $(DEBUG_FLAGS) $(SIGHANDLER) $(ALLOCA_CFLAGS)  \
  69. $(SYSDEP) -D$(MACHINE) -D$(OS) $(UNISTD) -DSHELL
  70.  
  71.  # These are required for sending bug reports.
  72. SYSTEM_NAME = $(MACHINE)
  73. OS_NAME = $(OS)
  74.  
  75.  # The name of this program.
  76. PROGRAM = bash.exe
  77.  
  78.  # The type of machine Bash is being compiled on.
  79. #HOSTTYPE_DECL = -DHOSTTYPE='$(SYSTEM_NAME)'
  80.  
  81.  # The default primary and secondary prompts.
  82. #PPROMPT = '"${PROGRAM}\\$$ "'
  83. #SPROMPT = '"> "'
  84.  
  85.  # The group of configuration flags.  These are for shell.c
  86. CFG_FLAGS = -DOS_NAME='"$(OS_NAME)"' -DSYSTEM_NAME='$(SYSTEM_NAME)' $(SIGLIST_FLAG) \
  87. $(MAINTAIN_DEFINE)
  88.  
  89.  # The directory which contains the source for malloc.  The name must
  90.  # end in a slash, as in "./lib/malloc/".
  91. ALLOC_DIR = ./lib/malloc/
  92.  
  93.  # Our malloc.
  94.  
  95. #MALLOC = $(ALLOC_DIR)malloc.o
  96. MALLOC_DEP = $(ALLOC_DIR)malloc.c $(ALLOC_DIR)getpagesize.h
  97. MALLOC_FLAGS = -Drcheck -Dbotch=programming_error
  98.  
  99. ALLOCA_H_DEFINE = -DHAVE_ALLOCA_H
  100.  
  101. ALLOCA_DEFINE = -DHAVE_ALLOCA
  102.  
  103. ALLOCA_CFLAGS = $(ALLOCA_DEFINE) $(ALLOCA_H_DEFINE)
  104.  
  105. ALLOC_HEADERS = $(ALLOC_DIR)getpagesize.h
  106. ALLOC_FILES = $(ALLOC_DIR)malloc.c $(ALLOC_DIR)alloca.c $(ALLOC_DIR)xmalloc.c \
  107. $(ALLOC_DIR)i386-alloca.s $(ALLOC_DIR)x386-alloca.s
  108.  
  109.  # Since this system does not have sys_siglist, we define SIGLIST
  110.  # as siglist.o.
  111. SIGLIST = siglist.o
  112. SIGLIST_FLAG=-DINITIALIZE_SIGLIST
  113.  
  114.  # The location of ranlib on your system.
  115.  
  116. RANLIB = ranlib
  117.  
  118.  # Support for the libraries required.  Termcap, Glob, and Readline.
  119.  # The location of sources for the support libraries.
  120. LIBSRC = ./lib/
  121. LIBINC_DECL  = LIBINCDIR=`pwd`; export LIBINCDIR
  122. LIBINC_USAGE = "-I$${LIBINCDIR} -I$${LIBINCDIR}/$(LIBSRC)"
  123.  
  124. SEARCH_LIB = -L
  125.  
  126. RLIBSRC = $(LIBSRC)readline/
  127. RLIBDOC = $(RLIBSRC)doc/
  128.  
  129.  # The source, object and documentation of the history library.
  130. HISTORY_SOURCE    = $(RLIBSRC)history.c $(RLIBSRC)history.h
  131. HISTORY_OBJ    = $(RLIBSRC)history.o
  132. HISTORY_DOC = $(RLIBDOC)hist.texinfo $(RLIBDOC)hsuser.texinfo $(RLIBDOC)hstech.texinfo
  133.  
  134.  # The source, object and documentation of the GNU Readline library.
  135.  # The source to the history library is inherently part of this.
  136. READLINE_SOURCE= $(RLIBSRC)readline.c $(RLIBSRC)readline.h  $(RLIBSRC)chardefs.h \
  137. $(RLIBSRC)keymaps.h  $(RLIBSRC)funmap.c $(RLIBSRC)emacs_keymap.c  \
  138. $(RLIBSRC)vi_keymap.c $(RLIBSRC)keymaps.c $(RLIBSRC)vi_mode.c $(GLIBSRC)tilde.c \
  139. $(HISTORY_SOURCE)
  140.  
  141. READLINE_OBJ= $(RLIBSRC)readline.o $(RLIBSRC)funmap.o $(RLIBSRC)keymaps.o \
  142. $(GLIBSRC)tilde.o $(HISTORY_OBJ)
  143.  
  144. READLINE_DOC= $(RLIBDOC)rlman.texinfo $(RLIBDOC)rluser.texinfo   $(RLIBDOC)rltech.texinfo
  145.  
  146. READLINE_DOC_SUPPORT  = $(RLIBDOC)Makefile $(RLIBDOC)texinfo.tex  \
  147.  $(RLIBDOC)texindex.c $(RLIBDOC)readline.dvi   \
  148. $(RLIBDOC)readline.info $(RLIBDOC)history.dvi  $(RLIBDOC)history.info
  149.  
  150.  # This has to be written funny to avoid looking like a C comment starter.
  151. READLINE_EXAMPLES = $(RLIBSRC)examples/[a-zA-Z]*.[ch]   \
  152. $(RLIBSRC)examples/Makefile $(RLIBSRC)examples/Inputrc
  153.  # Support files for GNU Readline.
  154. READLINE_SUPPORT = $(RLIBSRC)Makefile $(RLIBSRC)ChangeLog $(RLIBSRC)COPYING  \
  155.  $(READLINE_EXAMPLES) $(READLINE_DOC_SUPPORT)
  156.  
  157. READLINE_CFLAGS = $(DEBUG_FLAGS) $(SIGHANDLER) $(ALLOCA_CFLAGS)   \
  158. $(SYSDEP) -D$(MACHINE) -D$(OS) $(UNISTD)
  159.  
  160. GLIBSRC = $(LIBSRC)glob/
  161.  
  162. GLOB_SOURCE = $(GLIBSRC)glob.c $(GLIBSRC)tilde.c $(GLIBSRC)fnmatch.c \
  163. $(GLIBSRC)fnmatch.h
  164.  
  165. GLOB_OBJ     = $(GLIBSRC)libglob.a
  166. GLOB_DOC     = $(GLIBSRC)glob.texinfo
  167. GLOB_SUPPORT = $(GLIBSRC)Makefile $(GLIBSRC)ChangeLog
  168. GLOB_LDFLAGS = $(SEARCH_LIB)$(GLIBSRC)
  169. GLOB_LIB     = -lglob
  170.  
  171.  # Declare all of the sources for the libraries that we have.
  172. LIBRARY_SOURCE    = $(READLINE_SOURCE) $(TERMCAP_SOURCE) $(GLOB_SOURCE)
  173. LIBRARY_DOC    = $(READLINE_DOC) $(HISTORY_DOC) $(TERMCAP_DOC) $(GLOB_DOC)
  174. LIBRARY_SUPPORT    = $(READLINE_SUPPORT) $(TERMCAP_SUPPORT) $(GLOB_SUPPORT)
  175. LIBRARY_TAR    = $(LIBRARY_SOURCE) $(LIBRARY_DOC) $(LIBRARY_SUPPORT)
  176.  
  177.  # You wish to compile with the line editing features installed.
  178. READLINE_LIB = -lreadline
  179.  
  180.  # You only need termcap for readline.
  181.  
  182. #TERMCAP_LIB = -ltermcap
  183.  
  184.  # Directory list for -L so that the link editor (ld) can find -lreadline.
  185.  
  186. READLINE_LDFLAGS = $(SEARCH_LIB)$(RLIBSRC) $(TERMCAP_LDFLAGS)
  187.  
  188.  # The source and object of the bash<->readline interface code.
  189. RL_SUPPORT_SRC = bashline.c
  190. RL_SUPPORT_OBJ = bashline.o
  191.  
  192.  # Locally required libraries.
  193. #LOCAL_LIBS = -lPW 
  194.  
  195.  # The order is important.  Most dependent first.
  196. LIBRARIES = $(READLINE_LIB) $(TERMCAP_LIB) $(GLOB_LIB) $(LOCAL_LIBS)\
  197.  $(BUILTINS_LIB)
  198.  
  199. READLINE_DEP = ./lib/readline/libreadline.a 
  200. BUILTINS_LIB = builtins/libbuiltins.a
  201.  
  202. GLOB_DEP = ./lib/glob/libglob.a 
  203.  
  204.  # Source files for libraries that Bash depends on.
  205. LIBDEP = $(READLINE_DEP) $(TERMCAP_DEP) $(GLOB_DEP)
  206.  
  207.  # Rules for cleaning the readline and termcap sources.
  208.  
  209.  
  210.  # The main source code for the Bourne Again SHell.
  211. CSOURCES = shell.c parse.y general.c make_cmd.c print_cmd.c y.tab.c  dispose_cmd.c \
  212. execute_cmd.c variables.c $(GLOBC) version.c  expr.c copy_cmd.c flags.c subst.c hash.c \
  213. mailcheck.c        test.c trap.c jobs.c nojobs.c $(ALLOC_FILES) braces.c  unwind_prot.c \
  214. siglist.c getcwd.c $(RL_SUPPORT_SRC) error.c
  215.  
  216. HSOURCES = shell.h flags.h trap.h hash.h jobs.h builtins.h alias.c y.tab.h  general.h \
  217. variables.h config.h $(ALLOC_HEADERS) alias.h maxpath.h  quit.h machines.h posixstat.h \
  218. filecntl.h unwind_prot.h parser.h  command.h input.h error.h
  219.  
  220. SOURCES = $(CSOURCES) $(HSOURCES) $(BUILTIN_DEFS)
  221.  
  222. EMX_OBJECTS = findexecutable.o fork.o proc_spawnve.o seterrno.o spawnve.o \
  223.  wait.o waitpid.o
  224.  
  225. .SOURCE.o: $$(TMD)objects
  226.  
  227.  # Matching object files.
  228. OBJECTS     = shell.o y.tab.o general.o make_cmd.o print_cmd.o $(GLOBO)  dispose_cmd.o \
  229. execute_cmd.o variables.o copy_cmd.o error.o  expr.o flags.o jobs.o subst.o hash.o \
  230. mailcheck.o test.o trap.o alias.o $(MALLOC) $(ALLOCA) braces.o unwind_prot.o \
  231. ob_signals.o $(SIGLIST) $(GETCWD) version.o $(RL_SUPPORT_OBJ) \
  232. usrCmdOS2.o $(EMX_OBJECTS)
  233.  
  234.  # Where the source code of the shell builtins resides.
  235. DEFDIR = builtins/
  236. BUILTIN_DEFS = $(DEFDIR)alias.def $(DEFDIR)bind.def $(DEFDIR)break.def \
  237. $(DEFDIR)builtin.def $(DEFDIR)cd.def $(DEFDIR)colon.def  $(DEFDIR)command.def \
  238. $(DEFDIR)declare.def $(DEFDIR)echo.def $(DEFDIR)enable.def $(DEFDIR)eval.def \
  239.   $(DEFDIR)exec.def $(DEFDIR)exit.def $(DEFDIR)fc.def $(DEFDIR)fg_bg.def \
  240. $(DEFDIR)hash.def $(DEFDIR)help.def  $(DEFDIR)history.def $(DEFDIR)jobs.def \
  241. $(DEFDIR)kill.def  $(DEFDIR)let.def $(DEFDIR)read.def $(DEFDIR)return.def $(DEFDIR)set.def \
  242. $(DEFDIR)setattr.def $(DEFDIR)shift.def $(DEFDIR)source.def \
  243. $(DEFDIR)suspend.def $(DEFDIR)test.def  $(DEFDIR)times.def $(DEFDIR)trap.def \
  244. $(DEFDIR)type.def  $(DEFDIR)ulimit.def $(DEFDIR)umask.def $(DEFDIR)wait.def \
  245. $(DEFDIR)getopts.def $(DEFDIR)reserved.def
  246. BUILTIN_C_CODE  = $(DEFDIR)mkbuiltins.c $(DEFDIR)common.c  $(DEFDIR)hashcom.h \
  247. $(GETOPT_SOURCE)
  248. GETOPT_SOURCE   = $(DEFDIR)getopt.c $(DEFDIR)getopt.h
  249. PSIZE_SOURCE = $(DEFDIR)psize.sh $(DEFDIR)psize.c
  250. BUILTIN_SUPPORT = $(DEFDIR)Makefile $(DEFDIR)ChangeLog $(PSIZE_SOURCE) \
  251. $(BUILTIN_C_CODE)
  252.  
  253.  # Documentation for the shell.
  254. DOCDIR = ./documentation/
  255. BASH_TEXINFO = $(DOCDIR)*.texi $(DOCDIR)*.tex $(DOCDIR)texindex.c  $(DOCDIR)*.dvi \
  256. $(DOCDIR)Makefile
  257. BASH_MAN = $(DOCDIR)bash.1
  258. BASHDOCS = $(BASH_TEXINFO) $(BASH_MAN) INSTALL README RELEASE
  259. DOCUMENTATION = $(BASHDOCS) $(LIBRARY_DOC)
  260.  
  261.  # Some example files demonstrating use of the shell.
  262.  
  263. EXAMPLES = examples/[a-zA-Z]*
  264.  
  265. ENDIAN_SUPPORT = endian.c
  266. SDIR = ./support/
  267. MKTARFILE = $(SDIR)mktarfile
  268. SCRIPTS_SUPPORT = $(SDIR)mksysdefs $(SDIR)cppmagic $(SDIR)cat-s \
  269. $(MKTARFILE) $(SDIR)mail-shell $(SDIR)inform
  270.  
  271. TEST_SUITE = ./test-suite/
  272. TEST_SUITE_SUPPORT = $(TEST_SUITE)[a-zA-Z0-9]*
  273.  
  274. CREATED_SUPPORT = endian.exe endian.h sysdefs.h $(SDIR)getcppsyms
  275.  
  276. SUPPORT = configure $(ENDIAN_SUPPORT) $(SCRIPTS_SUPPORT) $(BUILTIN_SUPPORT) \
  277. COPYING Makefile cpp-Makefile ChangeLog .distribution newversion.c \
  278. $(EXAMPLES) $(SDIR)bash.xbm $(SDIR)getcppsyms.c $(TEST_SUITE_SUPPORT)
  279.  
  280.  # BAGGAGE consists of things that you want to keep with the shell for some
  281.  # reason, but do not actually use; old source code, etc.
  282. BAGGAGE = longest_sig.c
  283.  
  284.  # Things that the world at large needs.
  285. THINGS_TO_TAR = $(SOURCES) $(LIBRARY_TAR) $(BASHDOCS) $(SUPPORT) $(BAGGAGE)
  286.  
  287. all: .made
  288. $(EMX_OBJECTS) .SETDIR=emx:
  289.  
  290.  # Keep GNU Make from exporting the entire environment for small machines.
  291. .NOEXPORT:
  292.  
  293. .made: $(PROGRAM)
  294.     cp .machine .made
  295.  
  296. $(PROGRAM):  .build $(OBJECTS) $(LIBDEP) .distribution
  297. #    $(RM) $@
  298.     $(CC) $(LDFLAGS) $(READLINE_LDFLAGS) $(GLOB_LDFLAGS) -o $(PROGRAM) \
  299. objects/{$(OBJECTS)} $(LIBRARIES) /ftp/mit/termcap-1.2/libtermcap.a -los2
  300.  
  301. #.build:    $(SOURCES) cpp-Makefile newversion.exe
  302. #    if ./newversion.exe -build; then mv -f newversion.h version.h; fi
  303. #    @echo
  304. #    @echo "      ***************************************************"
  305. #    @echo "      *                            *"
  306. #    @echo "      * Making Bash-`cat .distribution` for a $(MACHINE) running $(OS)."
  307. #    @echo "      *                            *"
  308. #    @echo "      ***************************************************"
  309. #    @echo
  310. #    @echo "$(PROGRAM) last made for a $(MACHINE) running $(OS)" >.machine
  311.  
  312. #version.h:    newversion.exe
  313. #    if ./newversion.exe -build; then mv -f newversion.h version.h; fi
  314.  
  315. y.tab.c:    parse.y parser.h command.h input.h
  316. #        -if test -f y.tab.h; then mv -f y.tab.h old-y.tab.h; fi
  317. #        @echo "Expect 12 reduce/reduce errors.  No Problem."
  318.         $(BISON) -d parse.y
  319. #        -if cmp -s old-y.tab.h y.tab.h; then mv old-y.tab.h y.tab.h; fi
  320.  
  321. ./lib/readline/libreadline.a : $(READLINE_SOURCE)
  322.     @echo "Building in " $(RLIBSRC) "..."; ($(LIBINC_DECL); cd $(RLIBSRC); $(MAKE) \
  323. $(MFLAGS) CFLAGS='$(LIBRARY_CFLAGS) '$(LIBINC_USAGE)  CPPFLAGS='$(CPPFLAGS)'  \
  324. LDFLAGS='$(LDFLAGS)'  RANLIB='$(RANLIB)' AR='$(AR)' CC='$(CC)' )
  325.  
  326. ./lib/glob/libglob.a : $(GLOB_SOURCE)
  327.     @echo "Building in " $(GLIBSRC) "..."; ($(LIBINC_DECL); cd $(GLIBSRC); \
  328. $(MAKE) $(MFLAGS) CFLAGS='$(LIBRARY_CFLAGS) '$(LIBINC_USAGE)  \
  329. CPPFLAGS='$(CPPFLAGS)'  LDFLAGS='$(LDFLAGS)'  RANLIB='$(RANLIB)' \
  330. AR='$(AR)' CC='$(CC)' )
  331.  
  332. version.o:    version.h version.c
  333.  
  334. shell.o:    shell.h flags.h shell.c posixstat.h filecntl.h endian.h parser.h
  335.         $(CC) $(CFG_FLAGS) $(CFLAGS) $(CPPFLAGS) -o $@ -c shell.c
  336.  
  337. endian.h:    endian.exe
  338.         ./endian.exe endian.h
  339.  
  340. endian.exe:    endian.c
  341.         $(CC) $(CFLAGS) -o $@ endian.c
  342.  
  343. #$(MALLOC):    $(MALLOC_DEP)
  344. #        $(CC) -I$(ALLOC_DIR) $(CFLAGS) $(MALLOC_FLAGS) -c $*.c
  345. #        @-mv `basename $*`.o $(MALLOC) 2>/dev/null
  346.  
  347. variables.o: shell.h hash.h flags.h variables.h variables.c
  348.     $(CC) -c $(CFLAGS) $(CPPFLAGS) $(HOSTTYPE_DECL) -o $@ variables.c
  349.  
  350. builtins/libbuiltins.a: $(BUILTIN_DEFS) $(BUILTIN_C_CODE)
  351.     ($(LIBINC_DECL); cd $(DEFDIR); $(MAKE) $(MFLAGS) CPPFLAGS='$(CPPFLAGS)' \
  352. CFLAGS='$(CFLAGS) '$(LIBINC_USAGE)' -I.' LDFLAGS='$(LDFLAGS)' RANLIB='$(RANLIB)' \
  353. AR='$(AR)' CC='$(CC)' DIRECTDEFINE='-D '$(DEFDIR))
  354.  
  355. shell.h:    general.h variables.h config.h quit.h
  356. jobs.h:        endian.h quit.h
  357. variables.h:    hash.h
  358. braces.o: general.h
  359. copy_cmd.o: shell.h hash.h
  360. copy_cmd.o: general.h variables.h config.h quit.h
  361. dispose_cmd.o: shell.h
  362. dispose_cmd.o: general.h variables.h config.h quit.h
  363. error.o: error.h
  364. execute_cmd.o: shell.h y.tab.h posixstat.h flags.h jobs.h
  365. execute_cmd.o: general.h variables.h config.h quit.h hash.h endian.h
  366. execute_cmd.o: unwind_prot.h
  367. expr.o: shell.h hash.h
  368. expr.o: general.h variables.h config.h quit.h
  369. flags.o: flags.h config.h general.h quit.h
  370. general.o: shell.h maxpath.h
  371. general.o: general.h variables.h config.h quit.h
  372. hash.o: shell.h hash.h
  373. hash.o: general.h variables.h config.h quit.h
  374. jobs.o: shell.h hash.h trap.h jobs.h
  375. jobs.o: general.h variables.h config.h endian.h quit.h
  376. mailcheck.o: posixstat.h maxpath.h variables.h
  377. mailcheck.o: hash.h quit.h
  378. make_cmd.o: shell.h flags.h
  379. make_cmd.o: general.h variables.h config.h quit.h
  380. y.tab.o: shell.h flags.h maxpath.h
  381. y.tab.o: general.h variables.h config.h quit.h
  382. print_cmd.o: shell.h y.tab.h
  383. print_cmd.o: general.h variables.h config.h quit.h
  384. shell.o: shell.h flags.h
  385. shell.o: general.h variables.h config.h quit.h
  386. subst.o: shell.h flags.h alias.h jobs.h
  387. subst.o: general.h variables.h config.h endian.h quit.h
  388. test.o: posixstat.h
  389. trap.o: trap.h shell.h hash.h unwind_prot.h
  390. trap.o: general.h variables.h config.h quit.h
  391. unwind_prot.o: config.h general.h unwind_prot.h
  392.  
  393. bashline.o: shell.h hash.h builtins.h
  394. bashline.o: general.h variables.h config.h quit.h alias.h
  395.  
  396. bashline.o: $(RLIBSRC)chardefs.h $(RLIBSRC)history.h $(RLIBSRC)readline.h
  397. bashline.o: $(RLIBSRC)keymaps.h $(RLIBSRC)history.h
  398. y.tab.o: $(RLIBSRC)keymaps.h $(RLIBSRC)chardefs.h $(RLIBSRC)history.h
  399. y.tab.o: $(RLIBSRC)readline.h
  400. subst.o: $(RLIBSRC)history.h
  401.  
  402. subst.o: $(GLIBSRC)fnmatch.h
  403. execute_cmd.o: $(GLIBSRC)fnmatch.h
  404.  
  405. $(PROGRAM).tar: $(THINGS_TO_TAR)
  406.     @$(MKTARFILE) $(PROGRAM) `cat .distribution` $(THINGS_TO_TAR)
  407.  
  408. $(PROGRAM).tar.Z:    $(PROGRAM).tar
  409.     compress -f $(PROGRAM).tar
  410.  
  411. clone:        $(THINGS_TO_TAR)
  412.     @$(MKTARFILE) +notar $(MACHINE) $(OS) $(THINGS_TO_TAR)
  413.  
  414. install:    .made
  415.     -if [ -f $(DESTDIR)/$(PROGRAM) ]; 
  416.         then mv $(DESTDIR)/$(PROGRAM) $(DESTDIR)/$(PROGRAM).old; 
  417.     fi
  418.     cp $(PROGRAM) $(DESTDIR)/$(PROGRAM)
  419.     $(RM) installed-$(PROGRAM)
  420.     ln -s $(DESTDIR)/$(PROGRAM) installed-$(PROGRAM)
  421.  
  422. mailable:    distribution
  423. #    /bin/rm -rf uuencoded
  424. #    mkdir uuencoded
  425. #    $(SHELL) -c 'f=$(PROGRAM)-`cat .distribution`.tar.Z;uuencode $$f $$f | \
  426. #split -800 - uuencoded/$$f.uu.'
  427.  
  428. .distribution:
  429.     ./newversion.exe -dist `$(PROGRAM) -c 'echo $$BASH_VERSION'`
  430.  
  431. distribution:    $(PROGRAM) $(PROGRAM).tar.Z .distribution
  432.     @echo cp $(PROGRAM).tar.Z $(PROGRAM)-`cat .distribution`.tar.Z
  433.     @cp $(PROGRAM).tar.Z $(PROGRAM)-`cat .distribution`.tar.Z
  434.  
  435. newversion.exe:    newversion.c
  436.     $(CC) $(DEBUG_FLAGS) -o newversion.exe newversion.c -lm
  437.  
  438. newversion:    newversion.exe
  439.     $(RM) .build
  440.     ./newversion.exe -dist
  441.     mv -f newversion.h version.h
  442.     $(MAKE) $(MFLAGS)
  443.  
  444. documentation:  documentation-frob
  445.     (cd $(DOCDIR); make)
  446.  
  447. documentation-frob:
  448.  
  449. tags:        $(SOURCES) $(BUILTIN_C_CODE) $(LIBRARY_SOURCE)
  450.     etags $(SOURCES) $(BUILTIN_C_CODE) $(LIBRARY_SOURCE)
  451.  
  452. INDEX:        $(SOURCES) $(BUILTIN_C_CODE) $(LIBRARY_SOURCE)
  453.     ctags -x $(SOURCES) $(BUILTIN_C_CODE) $(LIBRARY_SOURCE) > $@
  454.  
  455. clean:
  456.     $(RM) $(OBJECTS) $(PROGRAM) aix-Makefile *.aux
  457.     $(RM) .build .made version.h
  458.     $(RM) $(CREATED_SUPPORT) bash-Makefile
  459.     (cd $(DOCDIR); $(MAKE) $(MFLAGS) clean)
  460.     (cd builtins; $(MAKE) $(MFLAGS) clean)
  461.     (cd $(RLIBSRC); $(MAKE) $(MFLAGS) clean) ;: ;(cd $(GLIBSRC); \
  462. $(MAKE) $(MFLAGS) clean)
  463.  
  464.  # Here is a convenient rule when you arrive at a new site and wish to
  465.  # install bash on several different architectures.  It creates a new
  466.  # directory to hold the results of compilatation.  The directory is
  467.  # named MACHINE-OS.
  468. architecture: $(MACHINE)-$(OS)/$(PROGRAM)
  469.  
  470. $(MACHINE)-$(OS):
  471.     -mkdir $(MACHINE)-$(OS)
  472.  
  473. #$(MACHINE)-$(OS)/$(PROGRAM): $(MACHINE)-$(OS) $(PROGRAM)
  474. #    mv $(PROGRAM) $(MACHINE)-$(OS)
  475. #    mv sysdefs.h $(MACHINE)-$(OS)
  476. #    mv $(SDIR)getcppsyms $(MACHINE)-$(OS)
  477. #    $(MAKE) $(MFLAGS) clean
  478.  
  479.