[gnu.bash.bug] Some minor installation trouble with bash 1.03

jkp@SAUNA.HUT.FI (Jyrki Kuoppala) (09/02/89)

Nothing serious, these are just fixes to the Makefile and to the
readline library to stop gcc from complaining.

1. newversion.aux isn't run with ./newversion.aux, so the Makefile
doesn't work if dot is not in path.

2. if $TERMCAP is /usr/lib/libtermcap.a, GNU make 3.55 goes to an
infinite recursion because the Makefile makes a cd to $(LIBSRC) which
is ./ and starts a make.  I just took off the rule for $(TERMCAP).

3. `make clean' isn't done in the readline directory

4. builtins.c gets an error about array_needs_making in function
set_or_show_attributes; a declaration should be added

5. stricmp and compare_strings in readline/readline.c are first
declared int and then static.

A context diff follows:

//Jyrki

diff -cr bash-1.03.orig/Makefile bash-1.03/Makefile
*** bash-1.03.orig/Makefile	Thu Aug 31 20:48:33 1989
--- bash-1.03/Makefile	Sat Sep  2 05:53:49 1989
***************
*** 208,220 ****
  	$(RM) .make
  
  .build:		newversion.aux  .make $(SOURCES)
! 	if newversion.aux -build; then mv -f newversion.h version.h; fi
  
  .make:
  	touch .make
  
  version.h:	newversion.aux
! 	if newversion.aux -build; then mv -f newversion.h version.h; fi
  
  shell.h:	general.h variables.h config.h
  		touch shell.h
--- 208,220 ----
  	$(RM) .make
  
  .build:		newversion.aux  .make $(SOURCES)
! 	if ./newversion.aux -build; then mv -f newversion.h version.h; fi
  
  .make:
  	touch .make
  
  version.h:	newversion.aux
! 	if ./newversion.aux -build; then mv -f newversion.h version.h; fi
  
  shell.h:	general.h variables.h config.h
  		touch shell.h
***************
*** 228,236 ****
  		(cd $(RLIBSRC); $(MAKE) $(MFLAGS) CC='$(CC)'\
  			CFLAGS='$(CFLAGS) -DSHELL')
  
! $(TERMCAP):	$(TERMCAP_SOURCE)
! 		(cd $(LIBSRC); $(MAKE) $(MFLAGS) CC='$(CC)'\
! 			CFLAGS='$(CFLAGS) -I.')
  
  shell.o:	shell.h flags.h shell.c
  		$(CC) $(CFG_FLAGS) $(CFLAGS) $(CPPFLAGS) -c shell.c
--- 228,236 ----
  		(cd $(RLIBSRC); $(MAKE) $(MFLAGS) CC='$(CC)'\
  			CFLAGS='$(CFLAGS) -DSHELL')
  
! #$(TERMCAP):	$(TERMCAP_SOURCE)
! #		(cd $(LIBSRC); $(MAKE) $(MFLAGS) CC='$(CC)'\
! #			CFLAGS='$(CFLAGS) -I.')
  
  shell.o:	shell.h flags.h shell.c
  		$(CC) $(CFG_FLAGS) $(CFLAGS) $(CPPFLAGS) -c shell.c
***************
*** 330,336 ****
  		etags $(SOURCES) $(LIBRARY_SOURCE)
  clean:
  		rm -f $(OBJECTS) $(PROGRAM) y.tab.c y.tab.h newversion.aux
! 		(cd $(LIBSRC); rm *.o *.a)
  dist-clean:
  		rm -f $(OBJECTS) $(PROGRAM) y.tab.c newversion.aux
  		rm -rf uuencoded
--- 330,336 ----
  		etags $(SOURCES) $(LIBRARY_SOURCE)
  clean:
  		rm -f $(OBJECTS) $(PROGRAM) y.tab.c y.tab.h newversion.aux
! 		(cd $(RLIBSRC); rm *.o *.a)
  dist-clean:
  		rm -f $(OBJECTS) $(PROGRAM) y.tab.c newversion.aux
  		rm -rf uuencoded
diff -cr bash-1.03.orig/builtins.c bash-1.03/builtins.c
*** bash-1.03.orig/builtins.c	Thu Aug 31 05:11:07 1989
--- bash-1.03/builtins.c	Sat Sep  2 05:22:21 1989
***************
*** 2296,2301 ****
--- 2296,2302 ----
  {
    extern int variable_context;
    int flags_on = 0, flags_off = 0;
+   extern int array_needs_making;
  
    while (list)
      {
diff -cr bash-1.03.orig/readline/readline.c bash-1.03/readline/readline.c
*** bash-1.03.orig/readline/readline.c	Fri Sep  1 18:58:19 1989
--- bash-1.03/readline/readline.c	Sat Sep  2 05:27:11 1989
***************
*** 103,108 ****
--- 103,109 ----
  static delete_chars ();
  static start_insert ();
  static end_insert ();
+ static stricmp ();
  
  #ifdef SIGWINCH
  static int rl_handle_sigwinch ();
***************
*** 2712,2718 ****
        if (rl_ignore_completion_duplicates)
  	{
  	  char *lowest_common;
! 	  int compare_strings (), j, newlen = 0;
  
  	  /* Sort the items. */
  	  /* It is safe to sort this array, because the lowest common
--- 2713,2719 ----
        if (rl_ignore_completion_duplicates)
  	{
  	  char *lowest_common;
! 	  static int compare_strings (), j, newlen = 0;
  
  	  /* Sort the items. */
  	  /* It is safe to sort this array, because the lowest common
***************
*** 2898,2904 ****
  	    /* Sort the items if they are not already sorted. */
  	    if (!rl_ignore_completion_duplicates)
  	      {
! 		int compare_strings ();
  		qsort (matches, len, sizeof (char *), compare_strings);
  	      }
  
--- 2899,2905 ----
  	    /* Sort the items if they are not already sorted. */
  	    if (!rl_ignore_completion_duplicates)
  	      {
! 		static int compare_strings ();
  		qsort (matches, len, sizeof (char *), compare_strings);
  	      }