🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.emacs.bug
Article #98482

emacs 18.57 small fixes and suggestions

#98482
From: Casey Leedom
Date: Mon, 24 Jun 1991 02:13
325 lines
12134 bytes
%%% src/config.h-dist:
%%% 
%%% Added note about define for HAVE_SUN_WINDOWS.
%%% 
%%% Added two new defines LD_SWITCH_SITE and C_SWITCH_SITE to enable
%%% people to add special ld(1) and cc(1) flags that are specific to
%%% their site.  For instance, we install X11 under /usr/local/include/X11
%%% and /usr/local/lib/X11.  This necessitates using -I/usr/local/include
%%% for C compilation and -L/usr/local/lib/X11 for the loading phase.

*** src/config.h-dist-dist	Tue Jan  8 10:24:37 1991
--- src/config.h-dist	Wed Jun 19 11:33:41 1991
***************
*** 19,24 ****
--- 19,29 ----
  
  
  
+ /* Define HAVE_SUN_WINDOWS to get SunView support (i.e. ../etc/emacstool).
+    Must be before an include of m-sparc.h, hence the placement of the
+    define here. */
+ /* #define HAVE_SUN_WINDOWS */
+ 
  /* Include here a s- file that describes the system type you are using.
     See the file ../etc/MACHINES for a list of systems and
     the names of the s- files to use for them.
***************
*** 106,108 ****
--- 111,129 ----
  
  /* #define HIGHPRI */
  
+ /* Define LD_SWITCH_SITE to contain any special flags your loader may
+    need.  For instance, if you've defined HAVE_X_WINDOWS above and your
+    X libraries aren't in a place that your loader can find on its own,
+    you might want to add "-L/..." or something similar. Watch out for
+    cpp interpretation of things like -L/usr/local/lib/X11 (the X11 define
+    above would cause this to become -L/usr/local/lib/). */
+ 
+ #define LD_SWITCH_SITE
+ 
+ /* Define C_SWITCH_SITE to contain any special flags your compiler may
+    need.  For instance, if you've defined HAVE_X_WINDOWS above and your
+    X include files aren't in a place that your compiler can find on its
+    own, you might want to add "-I/..." or something similar. Again,
+    watch out for cpp interpretation here ... */
+ 
+ #define C_SWITCH_SITE

%%% src/ymakefile:
%%% 
%%% Implemented LD_SWITCH_SITE and C_SWITCH_SITE described in change
%%% notes for src/config.h-dist.

*** src/ymakefile-dist	Tue Jan  8 10:23:01 1991
--- src/ymakefile	Wed Jun 19 11:40:40 1991
***************
*** 85,90 ****
--- 85,100 ----
  #define C_SWITCH_SYSTEM
  #endif
  
+ /* These can be passed in from config.h to define special load and
+    compile switches needed by individual sites */
+ #ifndef LD_SWITCH_SITE
+ #define LD_SWITCH_SITE
+ #endif
+ 
+ #ifndef C_SWITCH_SITE
+ #define C_SWITCH_SITE
+ #endif
+ 
  #ifndef START_FILES
  #ifdef NO_REMAP
  #define START_FILES pre-crt0.o /lib/crt0.o
***************
*** 121,127 ****
  #define LINKER ld
  #endif
  LD=LINKER
! LDFLAGS = LD_SWITCH_SYSTEM LD_SWITCH_MACHINE
  
  /* Figure out whether the system cpp can handle long names.
     Do it by testing it right now.
--- 131,137 ----
  #define LINKER ld
  #endif
  LD=LINKER
! LDFLAGS = LD_SWITCH_SYSTEM LD_SWITCH_MACHINE LD_SWITCH_SITE
  
  /* Figure out whether the system cpp can handle long names.
     Do it by testing it right now.
***************
*** 144,150 ****
  SHORT= shortnames
  #endif /* SHORTNAMES */
  
! CFLAGS= C_DEBUG_SWITCH -Demacs $(MYCPPFLAG) C_SWITCH_MACHINE C_SWITCH_SYSTEM
  /* DO NOT use -R.  There is a special hack described in lastfile.c
     which is used instead.  Some initialized data areas are modified
     at initial startup, then labeled as part of the text area when
--- 154,160 ----
  SHORT= shortnames
  #endif /* SHORTNAMES */
  
! CFLAGS= C_DEBUG_SWITCH -Demacs $(MYCPPFLAG) C_SWITCH_MACHINE C_SWITCH_SYSTEM C_SWITCH_SITE
  /* DO NOT use -R.  There is a special hack described in lastfile.c
     which is used instead.  Some initialized data areas are modified
     at initial startup, then labeled as part of the text area when

%%% Makefile:
%%% 
%%% Added MANEXT define to control what extension should be used when
%%% installing manual pages.  Also changed default installation directory
%%% to /usr/man/manl since that's more common in my estimation, but that's
%%% a judgement call.
%%% 
%%% Added code to automatically detect if src/config.h was missing or out
%%% of date with respect to src/config.h-dist.
%%% 
%%% Removed ``umask 0'' style code in installation of ${COPYDIR}.  This
%%% is a security change.  If the emacs system directories are world
%%% writable, it's unsafe for root to ever use emacs.  Please take this
%%% fix.  I've been making this change to various versions of emacs for
%%% the last three years and submitted the patch every time, but it
%%% never makes it in.  Also, I'm sure that something similar needs to be
%%% done for the cpio copy, but I don't have cpio, so I don't know what
%%% change is necessary.
%%%
%%% Added code to remove ${LIBDIR}/etc/*.c asa half hearted clean up
%%% effort.  This is really inadeqaute, but a real solution would require
%%% fairly lengthly changes to etc/Makefile to add an "install" node which
%%% would only install files that were absolutely necessary or some such.
%%% It's really annoying to have all these non-runtme files installed in
%%% runtime installation directories.  Another annoying thing are the
%%% endless etc/DOC* files that keep accumulating as emacs is recompiled
%%% (this is also true of the src/emacs-* binaries which are left laying
%%% about even after a clean.)  There are also a lot of non-editor related
%%% files in etc. that should really be relegated to a separate
%%% distribution of ``GNU Emacs Goodies'' that aren't related to editor
%%% functions.  Primary among these is "yow".  Similarly there are some
%%% very suspect files in lisp ...  Can't we thin out the junk that's been
%%% accumulating in GNU emacs over the years?  I realize that this is
%%% mostly a bitch on my part, but, really ...  GNU Emacs is large enough
%%% without having to put up with silliness ...  Sorry, personal opinion.
%%% 
%%% Removed ``chmod 777 ${LIBDIR}'' from "mkdir" node for security
%%% reasons.

*** Makefile-dist	Tue Nov 27 13:36:57 1990
--- Makefile	Wed Jun 19 11:52:12 1991
***************
*** 13,21 ****
  
  # Where to install things
  # Note that on system V you must change MANDIR to /use/local/man/man1.
! LIBDIR= /usr/local/emacs
  BINDIR= /usr/local/bin
! MANDIR= /usr/man/man1
  
  # Flags passed down to subdirectory makefiles.
  MFLAGS=
--- 13,22 ----
  
  # Where to install things
  # Note that on system V you must change MANDIR to /use/local/man/man1.
! LIBDIR= /usr/local/lib/emacs
  BINDIR= /usr/local/bin
! MANDIR= /usr/man/manl
! MANEXT= l
  
  # Flags passed down to subdirectory makefiles.
  MFLAGS=
***************
*** 31,38 ****
  # Subdirectories to clean
  CLEANDIR= ${COPYDIR} lisp/term
  
! all:	src/paths.h ${SUBDIR}
  
  src/paths.h: Makefile src/paths.h-dist
  	/bin/sed 's;/usr/local/emacs;${LIBDIR};g' < src/paths.h-dist > src/paths.h
  
--- 32,52 ----
  # Subdirectories to clean
  CLEANDIR= ${COPYDIR} lisp/term
  
! all:	src/config.h src/paths.h ${SUBDIR}
  
+ src/config.h: src/config.h-dist
+ 	@if [ -r src/config.h ]; then \
+ 		echo "*** src/config.h-dist is newer than src/config.h!"; \
+ 		echo " "; \
+ 	else \
+ 		exit 0; \
+ 	fi
+ 	@echo "*** You need to copy src/config.h-dist to src/config.h and"
+ 	@echo "*** then edit src/config.h to match your system."
+ 	@echo " "
+ 	@sh -c "exit 1"
+ 
+ 
  src/paths.h: Makefile src/paths.h-dist
  	/bin/sed 's;/usr/local/emacs;${LIBDIR};g' < src/paths.h-dist > src/paths.h
  
***************
*** 45,56 ****
  
  install: all mkdir lockdir
  	-if [ `/bin/pwd` != `(cd ${LIBDIR}; /bin/pwd)` ] ; then \
! 		tar cf - ${COPYDIR} | (cd ${LIBDIR}; umask 0; tar xBf - ) ;\
  		for i in ${CLEANDIR}; do \
  			(rm -rf ${LIBDIR}/$$i/RCS; \
  			 rm -f ${LIBDIR}/$$i/\#*; \
  			 rm -f ${LIBDIR}/$$i/*~); \
! 		done \
  	else true; \
  	fi
  	install -c -s etc/emacsclient ${BINDIR}/emacsclient
--- 59,71 ----
  
  install: all mkdir lockdir
  	-if [ `/bin/pwd` != `(cd ${LIBDIR}; /bin/pwd)` ] ; then \
! 		tar cf - ${COPYDIR} | (cd ${LIBDIR}; tar xBf - ) ;\
  		for i in ${CLEANDIR}; do \
  			(rm -rf ${LIBDIR}/$$i/RCS; \
  			 rm -f ${LIBDIR}/$$i/\#*; \
  			 rm -f ${LIBDIR}/$$i/*~); \
! 		done; \
! 		rm -f ${LIBDIR}/etc/*.c; \
  	else true; \
  	fi
  	install -c -s etc/emacsclient ${BINDIR}/emacsclient
***************
*** 57,63 ****
  	install -c -s etc/etags ${BINDIR}/etags
  	install -c -s etc/ctags ${BINDIR}/ctags
  	install -c -s -m 1755 src/xemacs ${BINDIR}/xemacs
! 	install -c -m 444 etc/emacs.1 ${MANDIR}/emacs.1
  	-rm -f ${BINDIR}/emacs
  	mv ${BINDIR}/xemacs ${BINDIR}/emacs
  
--- 72,78 ----
  	install -c -s etc/etags ${BINDIR}/etags
  	install -c -s etc/ctags ${BINDIR}/ctags
  	install -c -s -m 1755 src/xemacs ${BINDIR}/xemacs
! 	install -c -m 444 etc/emacs.1 ${MANDIR}/emacs.${MANEXT}
  	-rm -f ${BINDIR}/emacs
  	mv ${BINDIR}/xemacs ${BINDIR}/emacs
  
***************
*** 68,97 ****
  			(rm -rf ${LIBDIR}/$$i/RCS; \
  			 rm -f ${LIBDIR}/$$i/\#*; \
  			 rm -f ${LIBDIR}/$$i/*~); \
! 		done \
  	else true; \
  	fi
  	-cpset etc/emacsclient ${BINDIR}/emacsclient 755 bin bin
  	-cpset etc/etags ${BINDIR}/etags 755 bin bin
  	-cpset etc/ctags ${BINDIR}/ctags 755 bin bin
! 	-cpset etc/emacs.1 ${MANDIR}/emacs.1 444 bin bin
  	-/bin/rm -f ${BINDIR}/emacs
  	-cpset src/xemacs ${BINDIR}/emacs 1755 bin bin
    
  install.xenix: all mkdir lockdir
  	if [ `pwd` != `(cd ${LIBDIR}; pwd)` ] ; then \
! 		tar cf - ${COPYDIR} | (cd ${LIBDIR}; umask 0; tar xpf - ) ;\
  		for i in ${CLEANDIR}; do \
  			(rm -rf ${LIBDIR}/$$i/RCS; \
  			 rm -f ${LIBDIR}/$$i/\#*; \
  			 rm -f ${LIBDIR}/$$i/*~); \
! 		done \
  	else true; \
  	fi
  	cp etc/etags etc/ctags etc/emacsclient ${BINDIR}
  	chmod 755 ${BINDIR}/etags ${BINDIR}/ctags ${BINDIR}/emacsclient
! 	cp etc/emacs.1 ${MANDIR}/emacs.1
! 	chmod 444 ${MANDIR}/emacs.1
  	-mv -f ${BINDIR}/emacs ${BINDIR}/emacs.old
  	cp src/xemacs ${BINDIR}/emacs
  	chmod 1755 ${BINDIR}/emacs
--- 83,114 ----
  			(rm -rf ${LIBDIR}/$$i/RCS; \
  			 rm -f ${LIBDIR}/$$i/\#*; \
  			 rm -f ${LIBDIR}/$$i/*~); \
! 		done; \
! 		/bin/rm -f ${LIBDIR}/etc/*.c; \
  	else true; \
  	fi
  	-cpset etc/emacsclient ${BINDIR}/emacsclient 755 bin bin
  	-cpset etc/etags ${BINDIR}/etags 755 bin bin
  	-cpset etc/ctags ${BINDIR}/ctags 755 bin bin
! 	-cpset etc/emacs.1 ${MANDIR}/emacs.${MANEXT} 444 bin bin
  	-/bin/rm -f ${BINDIR}/emacs
  	-cpset src/xemacs ${BINDIR}/emacs 1755 bin bin
    
  install.xenix: all mkdir lockdir
  	if [ `pwd` != `(cd ${LIBDIR}; pwd)` ] ; then \
! 		tar cf - ${COPYDIR} | (cd ${LIBDIR}; tar xpf - ) ;\
  		for i in ${CLEANDIR}; do \
  			(rm -rf ${LIBDIR}/$$i/RCS; \
  			 rm -f ${LIBDIR}/$$i/\#*; \
  			 rm -f ${LIBDIR}/$$i/*~); \
! 		done; \
! 		rm -f ${LIBDIR}/etc/*.c; \
  	else true; \
  	fi
  	cp etc/etags etc/ctags etc/emacsclient ${BINDIR}
  	chmod 755 ${BINDIR}/etags ${BINDIR}/ctags ${BINDIR}/emacsclient
! 	cp etc/emacs.1 ${MANDIR}/emacs.${MANEXT}
! 	chmod 444 ${MANDIR}/emacs.${MANEXT}
  	-mv -f ${BINDIR}/emacs ${BINDIR}/emacs.old
  	cp src/xemacs ${BINDIR}/emacs
  	chmod 1755 ${BINDIR}/emacs
***************
*** 99,105 ****
  
  mkdir: FRC
  	-mkdir ${LIBDIR}
- 	-chmod 777 ${LIBDIR}
  
  distclean:
  	for i in ${SUBDIR}; do (cd $$i; make ${MFLAGS} distclean); done
--- 116,121 ----
Technical Details
Message-ID: <9106240213.AA00368@gauss.llnl.gov>
Path: arc1-ca.pugleaf.net!gmdzi!unido!math.fu-berlin.de!ira.uka.de!sol.ctr.columbia.edu!spool.mu.edu!caen!zaphod.mps.ohio-state.edu!cis.ohio-state.edu!tut.cis.ohio-state.edu!unreplyable!garbage

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: fb2f1,bdbcb878c15dd065,start
X-Google-Attributes: gidfb2f1,public
X-Google-ArrivalTime: 1991-06-23 19:13:43 PST
Path: arc1-ca.pugleaf.net!gmdzi!unido!math.fu-berlin.de!ira.uka.de!sol.ctr.columbia.edu!spool.mu.edu!caen!zaphod.mps.ohio-state.edu!cis.ohio-state.edu!tut.cis.ohio-state.edu!unreplyable!garbage
From: casey@GAUSS.LLNL.GOV (Casey Leedom)
Newsgroups: gnu.emacs.bug
Subject: emacs 18.57 small fixes and suggestions
Message-ID: <9106240213.AA00368@gauss.llnl.gov>
Date: 24 Jun 91 02:13:43 GMT
Sender: daemon@tut.cis.ohio-state.edu
Distribution: gnu
Organization: GNUs Not Usenet
Lines: 325
Approved: bug-gnu-emacs@prep.ai.mit.edu