* Imported the original 3.0-8.1 Debian diff.
git-svn-id: svn://svn.zoy.org/elk/trunk@2 55e467fa-43c5-0310-a8a2-de718669efc6
This commit is contained in:
		
							parent
							
								
									3132f65611
								
							
						
					
					
						commit
						f37781fa62
					
				
							
								
								
									
										19
									
								
								config/site
								
								
								
								
							
							
						
						
									
										19
									
								
								config/site
								
								
								
								
							| 
						 | 
					@ -21,7 +21,8 @@
 | 
				
			||||||
# Make sure $install_dir doesn't point to the top of the source tree
 | 
					# Make sure $install_dir doesn't point to the top of the source tree
 | 
				
			||||||
# (i.e. choose a subdirectory or a directory outside the source tree).
 | 
					# (i.e. choose a subdirectory or a directory outside the source tree).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
install_dir=/usr/local/elk
 | 
					install_dir='$(DESTDIR)'/usr
 | 
				
			||||||
 | 
					final_dir=/usr
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Libraries against which to link the X11 extension (typically -lX11).
 | 
					# Libraries against which to link the X11 extension (typically -lX11).
 | 
				
			||||||
| 
						 | 
					@ -31,42 +32,42 @@ install_dir=/usr/local/elk
 | 
				
			||||||
# an additional -R/usr/X11/lib and -lsocket may be required in case of
 | 
					# an additional -R/usr/X11/lib and -lsocket may be required in case of
 | 
				
			||||||
# SunOS 5.x/SysVR4).
 | 
					# SunOS 5.x/SysVR4).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libxlib='-L/usr/local/X11/lib -lX11'
 | 
					libxlib='-L/usr/X11R6/lib -lX11'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Libraries against which to link the Xt extension (typically
 | 
					# Libraries against which to link the Xt extension (typically
 | 
				
			||||||
# -lXaw -lXmu -lXt -lSM -lICE -lXext -lX11).  -lXaw is needed to get the
 | 
					# -lXaw -lXmu -lXt -lSM -lICE -lXext -lX11).  -lXaw is needed to get the
 | 
				
			||||||
# correct definition of the vendor shell widget class
 | 
					# correct definition of the vendor shell widget class
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libxt='-L/usr/local/X11/lib -lXaw -lXmu -lXt -lSM -lICE -lXext -lX11'
 | 
					libxt='-L/usr/X11R6/lib -lXaw -lXmu -lXt -lSM -lICE -lXext -lX11'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Libraries against which to link the Athena widgets extension (typically
 | 
					# Libraries against which to link the Athena widgets extension (typically
 | 
				
			||||||
# identical to libxt above)
 | 
					# identical to libxt above)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libxaw='-L/usr/local/X11/lib -lXaw -lXmu -lXt -lSM -lICE -lXext -lX11'
 | 
					libxaw='-L/usr/X11R6/lib -lXaw -lXmu -lXt -lSM -lICE -lXext -lX11'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Libraries against which to link the Motif extension (typically like
 | 
					# Libraries against which to link the Motif extension (typically like
 | 
				
			||||||
# libaw above with Xaw replaced by Xm)
 | 
					# libaw above with Xaw replaced by Xm)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libxmotif='-L/usr/local/X11/lib -lXm -lXmu -lXt -lSM -lICE -lXext -lX11'
 | 
					libxmotif='-L/usr/X11R6/lib -lXm -lXmu -lXt -lSM -lICE -lXext -lX11'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Additional flags (typically -Isomething) to be supplied to the C
 | 
					# Additional flags (typically -Isomething) to be supplied to the C
 | 
				
			||||||
# compiler when compiling an X11 application, or a Motif application,
 | 
					# compiler when compiling an X11 application, or a Motif application,
 | 
				
			||||||
# respectively.
 | 
					# respectively.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
x11_incl=-I/usr/local/X11/include
 | 
					x11_incl=-I/usr/X11R6/include
 | 
				
			||||||
motif_incl=
 | 
					motif_incl=-I/usr/include/Xm
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Set "gdbm" to "yes" if you have the GNU gdbm library installed and
 | 
					# Set "gdbm" to "yes" if you have the GNU gdbm library installed and
 | 
				
			||||||
# want the gdbm extension to be compiled.  "gdbm_inc" gives additional
 | 
					# want the gdbm extension to be compiled.  "gdbm_inc" gives additional
 | 
				
			||||||
# C compiler flags required to compile a program using gdbm.
 | 
					# C compiler flags required to compile a program using gdbm.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
gdbm=
 | 
					gdbm=yes
 | 
				
			||||||
gdbm_incl="-I/usr/gnu/include/gdbm"
 | 
					gdbm_incl=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Do you want to use the generational garbage collector?  If not, the
 | 
					# Do you want to use the generational garbage collector?  If not, the
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,367 @@
 | 
				
			||||||
 | 
					# This is a shell script.  It is sourced by the build scripts in the
 | 
				
			||||||
 | 
					# various subdirectories to gather system-, compiler-, and OS-specific
 | 
				
			||||||
 | 
					# information required for building the Makefiles.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Most variables in this script are interpreted as boolean variables and
 | 
				
			||||||
 | 
					# indicate presence or absence of one specific feature.  The value "yes"
 | 
				
			||||||
 | 
					# is regarded as "true", all other values (including no value or even
 | 
				
			||||||
 | 
					# non-existence of the variable) are interpreted as "false".
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Do not forget to quote values that contain shell meta syntax.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# -----------------------------------------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# $system should contain the name of this file.  It may be used by some
 | 
				
			||||||
 | 
					# of the build scripts to do things that are specific to one single
 | 
				
			||||||
 | 
					# type of system.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					system=i486-linux-gcc
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Does the system support the vprintf library function?  If not,
 | 
				
			||||||
 | 
					# availability of the (non-portable) _doprnt function is assumed.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					vprintf=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Does the directory(3) library follow the POSIX conventions (i.e.
 | 
				
			||||||
 | 
					# requires the <dirent.h> include file and uses "struct dirent")?
 | 
				
			||||||
 | 
					# If not, the (obsolete) BSD-style interface with <sys/dir.h> and
 | 
				
			||||||
 | 
					# "struct direct" is assumed.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					dirent=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Does the system have the random/srandom library functions?  If not,
 | 
				
			||||||
 | 
					# rand/srand will be used instead.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					random=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Does the system have the index library function?  If not, strchr
 | 
				
			||||||
 | 
					# will be used.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					index=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Does the system have the bcopy, bzero, and bcmp library functions?
 | 
				
			||||||
 | 
					# If not, memcpy/memset/memcmp will be used.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bstring=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Does using the access system call require <unistd.h> to be included?
 | 
				
			||||||
 | 
					# (Look into the manual page for access if in doubt.)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					include_unistd_h=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# If the FIONREAD ioctl command is defined, which file must be included?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					fionread_include="<termios.h>"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# What is the name of the a.out include file?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					aout_h='<a.out.h>'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# The following variables control how certain system limits are obtained
 | 
				
			||||||
 | 
					# during runtime.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# If getdtablesize() is available to determine the maximum number of open
 | 
				
			||||||
 | 
					# files per process, set getdtablesize=yes.
 | 
				
			||||||
 | 
					# Alternatively, if POSIX-style sysconf() can be called with _SC_OPEN_MAX,
 | 
				
			||||||
 | 
					# set sysconf_open_max=yes.
 | 
				
			||||||
 | 
					# If neither is set to "yes", an educated guess will be made.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					getdtablesize=yes
 | 
				
			||||||
 | 
					sysconf_open_max=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# If POSIX-style pathconf() can be invoked with _PC_PATH_MAX to determine
 | 
				
			||||||
 | 
					# the maximum pathname length, set pathconf_path_max=yes.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					pathconf_path_max=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# If the system page size can be determined by calling getpagesize()
 | 
				
			||||||
 | 
					# set getpagesize=yes.
 | 
				
			||||||
 | 
					# Alternatively, if sysconf() can be invoked with _SC_PAGESIZE, set
 | 
				
			||||||
 | 
					# sysconf_pagesize=yes.
 | 
				
			||||||
 | 
					# These two variables are only required if the generational garbage
 | 
				
			||||||
 | 
					# collector is used.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					getpagesize=yes
 | 
				
			||||||
 | 
					sysconf_pagesize=no
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Set reliable_signals=bsd if your system supports BSD-style reliable
 | 
				
			||||||
 | 
					# signals (has sigblock and related functions); set reliable_signals=posix
 | 
				
			||||||
 | 
					# for POSIX-style signals (sigprocmask, sigsets); otherwise old V7/SysV
 | 
				
			||||||
 | 
					# signal semantics are assumed.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					reliable_signals=posix
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# To support dynamic loading of object files and "dump", the system's
 | 
				
			||||||
 | 
					# a.out format has to be known.  Choose one of the following:
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#     coff  ecoff  xcoff  elf  macho  hp9k  convex
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Other values of "aout_format" are interpreted as BSD-style a.out format.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					aout_format=elf
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Which mechanism should be used to dynamically load object files?
 | 
				
			||||||
 | 
					# Possible values currently are:
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#    ld        BSD-style incremental loading based on ld -A
 | 
				
			||||||
 | 
					#    rld       NeXT-style rld_load()
 | 
				
			||||||
 | 
					#    shl       HP-UX shl_load()
 | 
				
			||||||
 | 
					#    dl        SysVR4/SunOS5 dlopen()
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Leave load_obj empty if dynamic loading is not supported.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					load_obj=dl
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # The following variables are only relevant if load_obj is set.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Linker options to produce a shared object from a .o file.
 | 
				
			||||||
 | 
					    # Only used if load_obj=dl.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ldflags_shared=-shared
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # The libraries against which dynamically loaded files are resolved
 | 
				
			||||||
 | 
					    # at the time they are loaded.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    load_libraries=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Additional flags to be passed to the linker for an incremental
 | 
				
			||||||
 | 
					    # linker run (ld -A).  Ignored unless load_obj=ld.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    incremental_ldflags="-x -static"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Systems with "aout_format=ecoff" may require a call to the cacheflush
 | 
				
			||||||
 | 
					    # system call after an object file has been loaded.  Which include file
 | 
				
			||||||
 | 
					    # has to be included in this case?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    cachectl_h='<sys/cachectl.h>'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Is the ANSI-C atexit function supported to register an exit handler?
 | 
				
			||||||
 | 
					    # If not, the exit library function will be redefined and will end in
 | 
				
			||||||
 | 
					    # a call to _exit.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    atexit=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Do the names of external functions in the symbol table always begin
 | 
				
			||||||
 | 
					# with a special character (such as underline)?  If so, syms_begin_with
 | 
				
			||||||
 | 
					# should hold this character, otherwise leave it empty.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					syms_begin_with=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# The symbol prefixes of extension initialization and finalization
 | 
				
			||||||
 | 
					# functions (without the initial $syms_begin_with).  Do not change
 | 
				
			||||||
 | 
					# these unless the compiler or linker restricts the length of symbols!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					init_prefix=elk_init_
 | 
				
			||||||
 | 
					finit_prefix=elk_finit_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Is the "dump" function supported?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					can_dump=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# The following variables are only relevant if "can_dump=yes".
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Is the fchmod system call broken or unavailable?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    fchmod_broken=no
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # These four variables are only relevant if the system has the BSD-style
 | 
				
			||||||
 | 
					    # a.out format.
 | 
				
			||||||
 | 
					    # segment_size is the segment size of the system's memory management
 | 
				
			||||||
 | 
					    # unit, i.e. the number to a multiple of which the size of an a.out
 | 
				
			||||||
 | 
					    # segment (e.g. .text) is rounded up.
 | 
				
			||||||
 | 
					    # file_text_start is the file offset at which the text segment starts
 | 
				
			||||||
 | 
					    # in an a.out file.
 | 
				
			||||||
 | 
					    # mem_text_start is the starting address of the text segment in memory.
 | 
				
			||||||
 | 
					    # text_length_adj must be set to "sizeof (struct exec)" if the length of
 | 
				
			||||||
 | 
					    # the text segment stored in the a.out header includes the a.out header
 | 
				
			||||||
 | 
					    # itself.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    segment_size=1024
 | 
				
			||||||
 | 
					    file_text_start='N_TXTOFF(hdr)'
 | 
				
			||||||
 | 
					    mem_text_start='0'
 | 
				
			||||||
 | 
					    text_length_adj='0'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Only relevant if "aout_format=coff": the system's pagesize.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    coff_pagesize=4096
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Only relevant if "aout_format=hp9k" and "load_obj=shl"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    hp_shared_libraries=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Print debug messages when dumping
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    debug_dump=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Is the "termio" terminal interface supported by the system?  If not,
 | 
				
			||||||
 | 
					# BSD-style tty handling will be used.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					termio=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# flush_stdio and flush_tty indicate how clear-input/output-port can
 | 
				
			||||||
 | 
					# flush (purge) a FILE pointer and a TTY file descriptor.
 | 
				
			||||||
 | 
					# Possible values of flush_stdio:
 | 
				
			||||||
 | 
					#    bsd         assume old BSD-style FILE* (with _cnt, _ptr, _base)
 | 
				
			||||||
 | 
					#    fpurge      use 4.4BSD-style fpurge stdio library function
 | 
				
			||||||
 | 
					# Possible values of flush_tty:
 | 
				
			||||||
 | 
					#    tiocflush   use TIOCFLUSH ioctl from <sys/ioctl.h>
 | 
				
			||||||
 | 
					#    tcflsh      use TCFLSH ioctl from <termio.h>
 | 
				
			||||||
 | 
					# Leave the variable(s) empty if flushing is not supported.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					flush_stdio=
 | 
				
			||||||
 | 
					flush_tty=tcflsh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# The interpreter uses the getrlimit function to determine the maximum
 | 
				
			||||||
 | 
					# stack size of the running program.  If this function is not supported,
 | 
				
			||||||
 | 
					# set max_stack_size to a (fixed) maximum stack size (in bytes).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					max_stack_size=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Is the mprotect system call supported?  The generational garbage collector 
 | 
				
			||||||
 | 
					# requires mprotect to implement incremental GC.  $mprotect is ignored if
 | 
				
			||||||
 | 
					# generational_gc is set to "no" in the site file.  Set mprotect=mmap if
 | 
				
			||||||
 | 
					# mprotect is supported, but only for mmap()ed memory.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					mprotect=no
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# How can a SIGSEGV or SIGBUS signal handler find out the address of
 | 
				
			||||||
 | 
					# the faulting memory reference?  This variable is only used if
 | 
				
			||||||
 | 
					# $mprotect is "yes" or "mmap".  Possible values are:
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#   siginfo     handler is called with siginfo_t structure (enabled
 | 
				
			||||||
 | 
					#               by a call to sigaction)
 | 
				
			||||||
 | 
					#   sigcontext  address is in the sigcontext structure (3rd arg, sc_badvaddr)
 | 
				
			||||||
 | 
					#   arg4        address is delivered to handler as argument #4
 | 
				
			||||||
 | 
					#   aix         use an AIX-specific hack to get hold of the bad address
 | 
				
			||||||
 | 
					#   hpux        use a HP-UX-specific hack
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					sigsegv_addr=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Does the system support the alloca library function, and does this
 | 
				
			||||||
 | 
					# function actually extend the stack?  If in doubt, extract alloca.o
 | 
				
			||||||
 | 
					# from the C library and check if it contains the symbols malloc and free.
 | 
				
			||||||
 | 
					# If this is the case, forget it.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use_alloca=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Must <alloca.h> be included to use alloca?  Is "#pragma alloca" required?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					include_alloca_h=yes
 | 
				
			||||||
 | 
					pragma_alloca=no
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Does the system (or compiler) require certain objects (e.g. doubles)
 | 
				
			||||||
 | 
					# to be aligned at 8-byte boundaries?  If not, 4-byte alignment will
 | 
				
			||||||
 | 
					# be assumed.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					align_8byte=no
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# The C compiler used to compile the source code.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					cc='gcc'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# The name of the linker.  This is usually just "ld", or /usr/ccs/bin/ld
 | 
				
			||||||
 | 
					# in SVR4-based systems.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ld=ld
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# The C compiler flags used for all files.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					cflags='-O2 -I/usr/include/libelf'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Are extra C compiler flags (such as -D_NO_PROTO) required to compile
 | 
				
			||||||
 | 
					# Motif applications?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					motif_cflags=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Are extra C compiler flags (such as -G 0) required to compile
 | 
				
			||||||
 | 
					# dynamically loadable files?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					obj_cflags=-fPIC
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Are extra linker flags (such as -G 0) required to link several object
 | 
				
			||||||
 | 
					# files together to one dynamically loadable file?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					obj_ldflags=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# The linker flags used to link the interpreter.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ldflags='-rdynamic -lm -ldl -lelf -lgdbm'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# The lint flags.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					lintflags='-abxh'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Are function prototypes in the header files required?  If prototypes=yes,
 | 
				
			||||||
 | 
					# prototypes are used unconditionally; if prototypes=no, prototypes are
 | 
				
			||||||
 | 
					# not used; otherwise prototypes are only used if the source code is
 | 
				
			||||||
 | 
					# compiled with an ANSI-C- or C++-compiler.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					prototypes=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Does your C preprocessor support the ANSI-C ## operator, although
 | 
				
			||||||
 | 
					# __STDC__ is not defined?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ansi_cpp=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# The UNIX extension likes to know which of the following system calls,
 | 
				
			||||||
 | 
					# library functions, and include files are supported by the system.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					gettimeofday=yes
 | 
				
			||||||
 | 
					ftime=yes
 | 
				
			||||||
 | 
					vfork=yes
 | 
				
			||||||
 | 
					gethostname=yes
 | 
				
			||||||
 | 
					uname=yes
 | 
				
			||||||
 | 
					mktemp=yes
 | 
				
			||||||
 | 
					tmpnam=yes
 | 
				
			||||||
 | 
					tempnam=yes
 | 
				
			||||||
 | 
					getcwd=yes
 | 
				
			||||||
 | 
					getwd=yes
 | 
				
			||||||
 | 
					rename=yes
 | 
				
			||||||
 | 
					waitpid=yes
 | 
				
			||||||
 | 
					wait3=yes
 | 
				
			||||||
 | 
					wait4=yes
 | 
				
			||||||
 | 
					utime_h=yes
 | 
				
			||||||
 | 
					regcomp=yes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Element type of the gidset argument of getgroups(); typically int
 | 
				
			||||||
 | 
					# or gid_t.  Only needed by the UNIX extension.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					getgroups_type=gid_t
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,30 @@
 | 
				
			||||||
 | 
					elk for Debian
 | 
				
			||||||
 | 
					--------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					New location of files in Debian GNU/Linux version of Elk:
 | 
				
			||||||
 | 
					---------------------------------------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						The default install location of files and directories in the
 | 
				
			||||||
 | 
					Elk distribution does not comply with the FSSTND. This is the reason 
 | 
				
			||||||
 | 
					why some reordering has been done for the Debian packaged version. 
 | 
				
			||||||
 | 
						However the documentation has not been changed. All relative
 | 
				
			||||||
 | 
					and absolute paths referred therein are the original.
 | 
				
			||||||
 | 
						The following table relates the original locations to the new ones:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						Original location		New location
 | 
				
			||||||
 | 
						.................		............
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$install_dir/bin/scheme			/usr/bin/scheme
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$install_dir/include/			/usr/include/elk/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$install_dir/runtime/{scm,obj}/		/usr/lib/elk/{scm,obj}/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$install_dir/lib/*.o			/usr/lib/elk/*.o
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$install_dir/lib/{linkscheme,makedl}	/usr/bin/{linkscheme,makedl}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$install_dir/lib/ldflags		/usr/bin/ldflags-elk
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- Enrique Zanardi <ezanard@debian.org>, Mon, 26 Mar 2001 20:19:04 +0100
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,90 @@
 | 
				
			||||||
 | 
					elk (3.0-8.1) unstable; urgency=low
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  * New maintainer.
 | 
				
			||||||
 | 
					  * Fixed spelling in the package description (Closes: #161056).
 | 
				
			||||||
 | 
					  * Updated standards version to 3.5.9.0.
 | 
				
			||||||
 | 
					  * Replaced sys_errlist usage with strerror calls, and mktemp with mkstemp.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- Samuel Hocevar <sam@zoy.org>  Fri, 28 Mar 2003 10:30:34 +0100
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					elk (3.0-8.1) unstable; urgency=low
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  * NMU.
 | 
				
			||||||
 | 
					  * Added missing build dependencies (closes: #109854, #116532).
 | 
				
			||||||
 | 
					  * Fix menu item (closes: #121004).
 | 
				
			||||||
 | 
					  * Apply patch to make package lintian clean (closes: #126987).
 | 
				
			||||||
 | 
					  * src/build: include debian/arch-config to specify build flags for
 | 
				
			||||||
 | 
					    the alpha (-O0). May fix #59893.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- Matthias Klose <doko@debian.org>  Fri, 11 Jan 2002 18:12:44 +0100
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					elk (3.0-8) unstable; urgency=low
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  * documentation moved to /usr/share/doc (Closes: Bug#91451, Bug#91453)
 | 
				
			||||||
 | 
					  * manpages moved to /usr/share/man (Closes: Bug#91148)
 | 
				
			||||||
 | 
					  * elkdoc moved to section doc (Closes: Bug#35701)
 | 
				
			||||||
 | 
					  * Updated to current policy (Closes: Bug#82811)
 | 
				
			||||||
 | 
					  * Added Build-Depends line (Closes: Bug#70820)
 | 
				
			||||||
 | 
					  * link to libgdbmg1 (Closes: Bug#75710, Bug#65457)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 -- Enrique Zanardi <ezanard@debian.org>  Mon, 26 Mar 2001 21:14:03 +0100
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					elk (3.0-7) frozen; urgency=high
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  * Just recompiled. If someone builds a program that links to elk 3.0-6 
 | 
				
			||||||
 | 
					    and libc6 2.1.3 (potato version) it segfaults on start.
 | 
				
			||||||
 | 
					    The version of sced that fixes RC bug #62971 depends on this version
 | 
				
			||||||
 | 
					    of elk!
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 -- Enrique Zanardi <ezanard@debian.org>  Sat, 13 May 2000 13:06:01 +0100
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					elk (3.0-6) frozen; urgency=low
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  * Don't strip modules. Bug#23772 wasn't fixed by the previous upload.
 | 
				
			||||||
 | 
					    (Closes Bug#23772).
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 -- Enrique Zanardi <ezanard@debian.org>  Wed, 28 Oct 1998 20:09:58 +0000
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					elk (3.0-5) frozen; urgency=low
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  * Renamed /usr/bin/scheme to /usr/bin/scheme-elk. /usr/bin/scheme is
 | 
				
			||||||
 | 
					    now managed via update-alternatives. (Closes Bug#25295).
 | 
				
			||||||
 | 
					  * Use --strip-unneeded for the modules. (Closes Bug#23772, Bug#26061).
 | 
				
			||||||
 | 
					  * Moved /usr/bin/ldflags-elk to /usr/lib/elk/ldflags. (Closes Bug#26059).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- Enrique Zanardi <ezanard@debian.org>  Tue, 27 Oct 1998 14:16:42 +0000
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					elk (3.0-4) frozen; urgency=low
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  * Added copyright file in elkdoc. (Closes Bug#19298).
 | 
				
			||||||
 | 
					  * Stripped obj files.
 | 
				
			||||||
 | 
					  * Updated policy version.
 | 
				
			||||||
 | 
					  * Added !/bin/sh in ldflags-elk.
 | 
				
			||||||
 | 
					  * Added usr/lib/elk/scm/elk.ini to use slib with Elk.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- Enrique Zanardi <ezanardi@molec1.dfis.ull.es>  Mon, 16 Mar 1998 12:47:07 +0000
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					elk (3.0-3) unstable; urgency=low
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  * Removed hardcoded Architecture: i386. (Closes Bug#13618).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- Enrique Zanardi <ezanardi@molec1.dfis.ull.es>  Sun, 25 Jan 1998 04:02:45 +0000
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					elk (3.0-2) unstable; urgency=low
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  * Rebuilt with libc6
 | 
				
			||||||
 | 
					  * Provide manpages for ldflags-elk, makedl and linkscheme (Bug#6280)
 | 
				
			||||||
 | 
					  * Renamed changelog.upstream.gz changelog.gz
 | 
				
			||||||
 | 
					  * Pristine sources
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- Enrique Zanardi <ezanardi@molec1.dfis.ull.es>  Sat, 27 Sep 1997 01:26:21 +0100
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					elk (3.0-1) unstable; urgency=low
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  * Initial release
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- Enrique Zanardi <ezanardi@molec1.dfis.ull.es>  Wed, 30 Oct 1996 13:05:48 +0000
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Local variables:
 | 
				
			||||||
 | 
					mode: debian-changelog
 | 
				
			||||||
 | 
					End:
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,30 @@
 | 
				
			||||||
 | 
					Source: elk
 | 
				
			||||||
 | 
					Section: devel
 | 
				
			||||||
 | 
					Priority: optional
 | 
				
			||||||
 | 
					Maintainer: Samuel Hocevar <sam@zoy.org>
 | 
				
			||||||
 | 
					Build-Depends: debhelper (>> 2.0.0), libelfg0-dev, xlibs-dev, lesstif-dev, libgdbmg1-dev, libxaw7-dev
 | 
				
			||||||
 | 
					Standards-Version: 3.5.9.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Package: elk
 | 
				
			||||||
 | 
					Architecture: any
 | 
				
			||||||
 | 
					Section: devel
 | 
				
			||||||
 | 
					Priority: optional
 | 
				
			||||||
 | 
					Depends: ${shlibs:Depends}
 | 
				
			||||||
 | 
					Conflicts: pact (<= 980714-1)
 | 
				
			||||||
 | 
					Description: the Extension Language Kit, a Scheme implementation
 | 
				
			||||||
 | 
					 Elk is an implementation of the Scheme programming language,
 | 
				
			||||||
 | 
					 designed specifically as an embeddable, reusable extension 
 | 
				
			||||||
 | 
					 language subsystem for applications written in C or C++.
 | 
				
			||||||
 | 
					 .
 | 
				
			||||||
 | 
					 Elk is also useful as a stand-alone Scheme implementation.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Package: elkdoc
 | 
				
			||||||
 | 
					Architecture: all
 | 
				
			||||||
 | 
					Section: doc
 | 
				
			||||||
 | 
					Priority: optional
 | 
				
			||||||
 | 
					Description: the Extension Language Kit documentation
 | 
				
			||||||
 | 
					 Elk is an implementation of the Scheme programming language,
 | 
				
			||||||
 | 
					 designed specifically as an embeddable, reusable extension 
 | 
				
			||||||
 | 
					 language subsystem for applications written in C or C++.    
 | 
				
			||||||
 | 
					 .
 | 
				
			||||||
 | 
					 Elk is also useful as a stand-alone Scheme implementation.
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,50 @@
 | 
				
			||||||
 | 
					This is Debian GNU/Linux's prepackaged version of the Extension Language Kit,
 | 
				
			||||||
 | 
					an Scheme implementation.
 | 
				
			||||||
 | 
					Elk was written by Oliver Laumann <net@informatik.uni-bremen.de>.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This package was put together by me, Enrique Zanardi
 | 
				
			||||||
 | 
					<ezanardi@molec1.dfis.ull.es>, from sources obtained from:
 | 
				
			||||||
 | 
					ftp://ftp.uni-bremen.de/pub/programming/languages/scheme/elk/elk-3.0.tar.gz
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Changes:
 | 
				
			||||||
 | 
					  * added Debian GNU/Linux package maintenance system files
 | 
				
			||||||
 | 
					  * added config/system file with Linux-ELF specific information for
 | 
				
			||||||
 | 
					    the Makefiles.
 | 
				
			||||||
 | 
					  * modified config/site to look for the X libs and includes at the right 
 | 
				
			||||||
 | 
					    place.
 | 
				
			||||||
 | 
					  * modified */.../build* and config/site scripts to obtain FSSTND 
 | 
				
			||||||
 | 
					    compliant installation. The new locations of the files are listed in 
 | 
				
			||||||
 | 
					    addendum.txt 
 | 
				
			||||||
 | 
					  * modified src/dump-elf.c as suggested in Elk-News web page to avoid
 | 
				
			||||||
 | 
					    a "syms.h include file not found" compile-time error. (Just deleted
 | 
				
			||||||
 | 
					    the "#include <syms.h>" line).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Copyright 1990, 1991, 1992, 1993, 1994, 1995, Oliver Laumann, Berlin
 | 
				
			||||||
 | 
					(except for the contents of the directory `doc/usenix').
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This software was derived from Elk 1.2, which was Copyright 1987, 1988,
 | 
				
			||||||
 | 
					1989, Nixdorf Computer AG and TELES GmbH, Berlin (Elk 1.2 has been written
 | 
				
			||||||
 | 
					by Oliver Laumann (me) for TELES Telematic Services, Berlin, in a joint
 | 
				
			||||||
 | 
					project between TELES and Nixdorf Microprocessor Engineering, Berlin).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Oliver Laumann, TELES GmbH, and Nixdorf Computer AG, as co-owners or
 | 
				
			||||||
 | 
					individual owners of copyright in this software, grant to any person or
 | 
				
			||||||
 | 
					company a worldwide, royalty free, license to
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   i) copy this software,
 | 
				
			||||||
 | 
					  ii) prepare derivative works based on this software,
 | 
				
			||||||
 | 
					 iii) distribute copies of this software or derivative works,
 | 
				
			||||||
 | 
					  iv) perform this software, or
 | 
				
			||||||
 | 
					   v) display this software,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					provided that this notice is not removed and that neither Oliver Laumann
 | 
				
			||||||
 | 
					nor Teles nor Nixdorf are deemed to have made any representations as to
 | 
				
			||||||
 | 
					the suitability of this software for any purpose nor are held responsible
 | 
				
			||||||
 | 
					for any defects of this software.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Berlin, June 20, 1995
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Oliver Laumann  <net@informatik.uni-bremen.de>
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					usr
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,2 @@
 | 
				
			||||||
 | 
					README
 | 
				
			||||||
 | 
					PATCHLEVEL
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,278 @@
 | 
				
			||||||
 | 
					;;;"elk.init" Initialisation file for SLIB for ELK 2.1	-*- Scheme -*-
 | 
				
			||||||
 | 
					;;; Copyright (C) 1991, 1992, 1993 Aubrey Jaffer.
 | 
				
			||||||
 | 
					;
 | 
				
			||||||
 | 
					;Permission to copy this software, to redistribute it, and to use it
 | 
				
			||||||
 | 
					;for any purpose is granted, subject to the following restrictions and
 | 
				
			||||||
 | 
					;understandings.
 | 
				
			||||||
 | 
					;
 | 
				
			||||||
 | 
					;1.  Any copy made of this software must include this copyright notice
 | 
				
			||||||
 | 
					;in full.
 | 
				
			||||||
 | 
					;
 | 
				
			||||||
 | 
					;2.  I have made no warrantee or representation that the operation of
 | 
				
			||||||
 | 
					;this software will be error-free, and I am under no obligation to
 | 
				
			||||||
 | 
					;provide any services, by way of maintenance, update, or otherwise.
 | 
				
			||||||
 | 
					;
 | 
				
			||||||
 | 
					;3.  In conjunction with products arising from the use of this
 | 
				
			||||||
 | 
					;material, there shall be no use of my name in any advertising,
 | 
				
			||||||
 | 
					;promotional, or sales literature without prior written consent in
 | 
				
			||||||
 | 
					;each case.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					; No guarantees are given about the correctness of any of the
 | 
				
			||||||
 | 
					; choices made below.  Only enough work was done to get the require
 | 
				
			||||||
 | 
					; mechanism to work correctly.
 | 
				
			||||||
 | 
					;
 | 
				
			||||||
 | 
					; Stephen J. Bevan <bevan@cs.man.ac.uk> 19920912 modified by Mike
 | 
				
			||||||
 | 
					; Sperber to work correctly with statically-linked Elk and slib1d.  Be
 | 
				
			||||||
 | 
					; sure to change the library vicinities according to your local
 | 
				
			||||||
 | 
					; configuration.  If you're running MS-DOS (which is possible since
 | 
				
			||||||
 | 
					; 2.1), you probably have to change this file to make everything work
 | 
				
			||||||
 | 
					; correctly.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; (software-type) should be set to the generic operating system type.
 | 
				
			||||||
 | 
					;;; UNIX, VMS, MACOS, AMIGA and MS-DOS are supported.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define (software-type) 'UNIX)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; (scheme-implementation-type) should return the name of the scheme
 | 
				
			||||||
 | 
					;;; implementation loading this file.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define (scheme-implementation-type) 'elk)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; (scheme-implementation-version) should return a string describing
 | 
				
			||||||
 | 
					;;; the version the scheme implementation loading this file.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define (scheme-implementation-version) "3.0")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; (implementation-vicinity) should be defined to be the pathname of
 | 
				
			||||||
 | 
					;;; the directory where any auxillary files to your Scheme
 | 
				
			||||||
 | 
					;;; implementation reside.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define (implementation-vicinity) "/usr/lib/elk/scm")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; (library-vicinity) should be defined to be the pathname of the
 | 
				
			||||||
 | 
					;;; directory where files of Scheme library functions reside.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;(define library-vicinity
 | 
				
			||||||
 | 
					;  (let ((library-path
 | 
				
			||||||
 | 
					;	 (or (getenv "SCHEME_LIBRARY_PATH")
 | 
				
			||||||
 | 
					;	     ;; Uses this path if SCHEME_LIBRARY_PATH is not defined.
 | 
				
			||||||
 | 
					;	     (case (software-type)
 | 
				
			||||||
 | 
					;	       ((UNIX) "/usr/local/lib/slib/")
 | 
				
			||||||
 | 
					;	       ((VMS) "lib$scheme:")
 | 
				
			||||||
 | 
					;	       ((MS-DOS) "C:\\SLIB\\")
 | 
				
			||||||
 | 
					;	       (else "")))))
 | 
				
			||||||
 | 
					;    (lambda () library-path)))
 | 
				
			||||||
 | 
					(define (library-vicinity) "/usr/lib/slib/")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; *features* should be set to a list of symbols describing features
 | 
				
			||||||
 | 
					;;; of this implementation.  Suggestions for features are:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define *features*
 | 
				
			||||||
 | 
					      '(
 | 
				
			||||||
 | 
					;	source				;can load scheme source files
 | 
				
			||||||
 | 
										;(slib:load-source "filename")
 | 
				
			||||||
 | 
					;	compiled			;can load compiled files
 | 
				
			||||||
 | 
										;(slib:load-compiled "filename")
 | 
				
			||||||
 | 
						rev4-report
 | 
				
			||||||
 | 
						ieee-p1178
 | 
				
			||||||
 | 
						sicp
 | 
				
			||||||
 | 
						rev4-optional-procedures
 | 
				
			||||||
 | 
						rev3-procedures
 | 
				
			||||||
 | 
						rev2-procedures
 | 
				
			||||||
 | 
						multiarg/and-
 | 
				
			||||||
 | 
						multiarg-apply
 | 
				
			||||||
 | 
						delay
 | 
				
			||||||
 | 
						transcript
 | 
				
			||||||
 | 
						full-continuation
 | 
				
			||||||
 | 
					;	sort
 | 
				
			||||||
 | 
						format
 | 
				
			||||||
 | 
						system
 | 
				
			||||||
 | 
					;	getenv <------- does elk 3.0 really have getenv? couldn't find it
 | 
				
			||||||
 | 
						program-arguments
 | 
				
			||||||
 | 
						string-port
 | 
				
			||||||
 | 
						))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define program-arguments
 | 
				
			||||||
 | 
					  (lambda ()
 | 
				
			||||||
 | 
					    (cons "undefined-program-name" (command-line-args))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					; EXACT? appears to always return #f which isn't very useful.
 | 
				
			||||||
 | 
					; Approximating it with INTEGER? at least means that some
 | 
				
			||||||
 | 
					; of the code in the library will work correctly
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define exact? integer?)  ; WARNING: redefining EXACT?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define (inexact? arg)
 | 
				
			||||||
 | 
					  (not (exact? arg)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; (TMPNAM) makes a temporary file name.
 | 
				
			||||||
 | 
					(define tmpnam
 | 
				
			||||||
 | 
					  (let ((cntr 100))
 | 
				
			||||||
 | 
					    (lambda () (set! cntr (+ 1 cntr))
 | 
				
			||||||
 | 
						    (let ((tmp (string-append "slib_" (number->string cntr))))
 | 
				
			||||||
 | 
						      (if (file-exists? tmp) (tmpnam) tmp)))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(require 'unix)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					; Pull in GENTENV and SYSTEM
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; (FILE-EXISTS? <string>) already here.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; (DELETE-FILE <string>)
 | 
				
			||||||
 | 
					(define (delete-file f) (system (string-append "rm " f)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; (OUTPUT-PORT-WIDTH <port>)
 | 
				
			||||||
 | 
					(define (output-port-width . arg) 79)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; (OUTPUT-PORT-HEIGHT <port>)
 | 
				
			||||||
 | 
					(define (output-port-height . arg) 24)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; (CURRENT-ERROR-PORT)
 | 
				
			||||||
 | 
					;;; is already defined in Elk 2.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; FORCE-OUTPUT flushes any pending output on optional arg output port
 | 
				
			||||||
 | 
					;;; use this definition if your system doesn't have such a procedure.
 | 
				
			||||||
 | 
					(define force-output flush-output-port)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; CALL-WITH-INPUT-STRING and CALL-WITH-OUTPUT-STRING are the string
 | 
				
			||||||
 | 
					;;; port versions of CALL-WITH-*PUT-FILE.
 | 
				
			||||||
 | 
					(define (call-with-output-string f)
 | 
				
			||||||
 | 
					  (let ((outsp (open-output-string)))
 | 
				
			||||||
 | 
					    (f outsp)
 | 
				
			||||||
 | 
					    (let ((s (get-output-string outsp)))
 | 
				
			||||||
 | 
					      (close-output-port outsp)
 | 
				
			||||||
 | 
					      s)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define (call-with-input-string s f)
 | 
				
			||||||
 | 
					  (let* ((insp (open-input-string s))
 | 
				
			||||||
 | 
						 (res (f insp)))
 | 
				
			||||||
 | 
					    (close-input-port insp)
 | 
				
			||||||
 | 
					    res))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; CHAR-CODE-LIMIT is one greater than the largest integer which can
 | 
				
			||||||
 | 
					;;; be returned by CHAR->INTEGER.
 | 
				
			||||||
 | 
					(define char-code-limit 256)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; MOST-POSITIVE-FIXNUM is used in modular.scm
 | 
				
			||||||
 | 
					(define most-positive-fixnum 8388608)  ; 23 bit integers ?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; Return argument
 | 
				
			||||||
 | 
					(define (identity x) x)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; If your implementation provides eval SLIB:EVAL is single argument
 | 
				
			||||||
 | 
					;;; eval using the top-level (user) environment.
 | 
				
			||||||
 | 
					(define slib:eval eval)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define *macros* '())
 | 
				
			||||||
 | 
					(define (defmacro? m) (and (assq m *macros*) #t))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-macro (defmacro key pattern . body)
 | 
				
			||||||
 | 
					  `(begin
 | 
				
			||||||
 | 
					     (define-macro ,(cons key pattern) ,@body)
 | 
				
			||||||
 | 
					     (set! *macros* (cons (cons ',key (lambda ,pattern ,@body)) *macros*))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define (macroexpand-1 e)
 | 
				
			||||||
 | 
					  (if (pair? e) (let ((a (car e)))
 | 
				
			||||||
 | 
							  (cond ((symbol? a) (set! a (assq a *macros*))
 | 
				
			||||||
 | 
									     (if a (apply (cdr a) (cdr e)) e))
 | 
				
			||||||
 | 
								(else e)))
 | 
				
			||||||
 | 
					      e))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define (macroexpand e)
 | 
				
			||||||
 | 
					  (if (pair? e) (let ((a (car e)))
 | 
				
			||||||
 | 
							  (cond ((symbol? a)
 | 
				
			||||||
 | 
								 (set! a (assq a *macros*))
 | 
				
			||||||
 | 
								 (if a (macroexpand (apply (cdr a) (cdr e))) e))
 | 
				
			||||||
 | 
								(else e)))
 | 
				
			||||||
 | 
					      e))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define gentemp
 | 
				
			||||||
 | 
					  (let ((*gensym-counter* -1))
 | 
				
			||||||
 | 
					    (lambda ()
 | 
				
			||||||
 | 
					      (set! *gensym-counter* (+ *gensym-counter* 1))
 | 
				
			||||||
 | 
					      (string->symbol
 | 
				
			||||||
 | 
					       (string-append "slib:G" (number->string *gensym-counter*))))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define defmacro:eval slib:eval)
 | 
				
			||||||
 | 
					(define defmacro:load load)
 | 
				
			||||||
 | 
					;;; If your implementation provides R4RS macros:
 | 
				
			||||||
 | 
					;(define macro:eval slib:eval)
 | 
				
			||||||
 | 
					;(define macro:load load)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define (slib:eval-load <pathname> evl)
 | 
				
			||||||
 | 
					  (if (not (file-exists? <pathname>))
 | 
				
			||||||
 | 
					      (set! <pathname> (string-append <pathname> (scheme-file-suffix))))
 | 
				
			||||||
 | 
					  (call-with-input-file <pathname>
 | 
				
			||||||
 | 
					    (lambda (port)
 | 
				
			||||||
 | 
					      (let ((old-load-pathname *load-pathname*))
 | 
				
			||||||
 | 
						(set! *load-pathname* <pathname>)
 | 
				
			||||||
 | 
						(do ((o (read port) (read port)))
 | 
				
			||||||
 | 
						    ((eof-object? o))
 | 
				
			||||||
 | 
						  (evl o))
 | 
				
			||||||
 | 
						(set! *load-pathname* old-load-pathname)))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; define an error procedure for the library
 | 
				
			||||||
 | 
					(define slib:error error)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; define these as appropriate for your system.
 | 
				
			||||||
 | 
					(define slib:tab #\tab)
 | 
				
			||||||
 | 
					(define slib:form-feed #\formfeed)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; Define these if your implementation's syntax can support it and if
 | 
				
			||||||
 | 
					;;; they are not already defined.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;(define (1+ n) (+ n 1))
 | 
				
			||||||
 | 
					;(define (-1+ n) (+ n -1))
 | 
				
			||||||
 | 
					;(define 1- -1+)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define in-vicinity string-append)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; Define SLIB:EXIT to be the implementation procedure to exit or
 | 
				
			||||||
 | 
					;;; return if exitting not supported.
 | 
				
			||||||
 | 
					(define slib:exit
 | 
				
			||||||
 | 
					  (lambda args
 | 
				
			||||||
 | 
					    (exit (cond ((null? args) 0)
 | 
				
			||||||
 | 
							((eqv? #t (car args)) 0)
 | 
				
			||||||
 | 
							((and (number? (car args)) (integer? (car args))) (car args))
 | 
				
			||||||
 | 
							(else 1)))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; Here for backward compatability
 | 
				
			||||||
 | 
					(define scheme-file-suffix
 | 
				
			||||||
 | 
					  (let ((suffix (case (software-type)
 | 
				
			||||||
 | 
							  ((NOSVE) "_scm")
 | 
				
			||||||
 | 
							  (else ".scm"))))
 | 
				
			||||||
 | 
					    (lambda () suffix)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; (SLIB:LOAD-SOURCE "foo") should load "foo.scm" or with whatever
 | 
				
			||||||
 | 
					;;; suffix all the module files in SLIB have.  See feature 'SOURCE.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					; Modify the already modified _load_ so that it copes with
 | 
				
			||||||
 | 
					; environments correctly.  The change involves using
 | 
				
			||||||
 | 
					; _(global-environment)_ if none is explicitly specified.
 | 
				
			||||||
 | 
					; If this is not done, definitions in files loaded by other files will
 | 
				
			||||||
 | 
					; not be loaded in the correct environment.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define slib:load-source
 | 
				
			||||||
 | 
					  (let ((primitive-load load))
 | 
				
			||||||
 | 
					    (lambda (<pathname> . rest)
 | 
				
			||||||
 | 
					      (let ((env (if (null? rest) (list (global-environment)) rest)))
 | 
				
			||||||
 | 
						(apply primitive-load (string-append <pathname> ".scm") env)))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; (SLIB:LOAD-COMPILED "foo") should load the file that was produced
 | 
				
			||||||
 | 
					;;; by compiling "foo.scm" if this implementation can compile files.
 | 
				
			||||||
 | 
					;;; See feature 'COMPILED.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define slib:load-compiled
 | 
				
			||||||
 | 
					  (let ((primitive-load load))
 | 
				
			||||||
 | 
					    (lambda (<pathname> . rest)
 | 
				
			||||||
 | 
					      (apply primitive-load (string->symbol (string-append name ".o")) rest))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; At this point SLIB:LOAD must be able to load SLIB files.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define slib:load slib:load-source)	;WARNING: redefining LOAD
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(slib:load (in-vicinity (library-vicinity) "require"))
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,8 @@
 | 
				
			||||||
 | 
					#!/bin/sh -
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ "$1" = "configure" ]; then
 | 
				
			||||||
 | 
					  update-alternatives --install /usr/bin/scheme scheme \
 | 
				
			||||||
 | 
					    /usr/bin/scheme-warning-elk 20 > /dev/null
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#DEBHELPER#
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,7 @@
 | 
				
			||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ "$1" = "remove" ]; then
 | 
				
			||||||
 | 
					  update-alternatives --remove scheme /usr/bin/scheme-warning-elk > /dev/null
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#DEBHELPER#
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,7 @@
 | 
				
			||||||
 | 
					BUGS
 | 
				
			||||||
 | 
					CONTRIBUTORS
 | 
				
			||||||
 | 
					MIGRATE
 | 
				
			||||||
 | 
					MACHINES
 | 
				
			||||||
 | 
					README
 | 
				
			||||||
 | 
					TODO
 | 
				
			||||||
 | 
					doc
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,9 @@
 | 
				
			||||||
 | 
					.TH LDFLAGS-ELK 1 
 | 
				
			||||||
 | 
					.SH NAME
 | 
				
			||||||
 | 
					ldflags-elk \- echo the LDFLAGS required for linking the Elk 
 | 
				
			||||||
 | 
					interpreter kernel.
 | 
				
			||||||
 | 
					.SH SYNOPSIS
 | 
				
			||||||
 | 
					.B ldflags-elk
 | 
				
			||||||
 | 
					.SH AUTHOR
 | 
				
			||||||
 | 
					This manual page was written by E. Zanardi,
 | 
				
			||||||
 | 
					for the Debian GNU/Linux system.
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,16 @@
 | 
				
			||||||
 | 
					.TH LINKSCHEME 1
 | 
				
			||||||
 | 
					.SH NAME
 | 
				
			||||||
 | 
					linkscheme \- links ELK Scheme interpreter with your application
 | 
				
			||||||
 | 
					.SH SYNOPSIS
 | 
				
			||||||
 | 
					.B linkscheme
 | 
				
			||||||
 | 
					.I "output-file [object-file ...]"
 | 
				
			||||||
 | 
					.SH "DESCRIPTION"
 | 
				
			||||||
 | 
					This script creates an interpreter that is linked statically with your
 | 
				
			||||||
 | 
					extensions and/or application-specific object files (usually on platforms
 | 
				
			||||||
 | 
					that don't support incremental linking).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The first argument is the executable to be created, the remaining
 | 
				
			||||||
 | 
					arguments are the object files and optional libraries.
 | 
				
			||||||
 | 
					.SH AUTHOR
 | 
				
			||||||
 | 
					This manual page was written by E. Zanardi,
 | 
				
			||||||
 | 
					for the Debian GNU/Linux system.
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,14 @@
 | 
				
			||||||
 | 
					.TH MAKEDL 1
 | 
				
			||||||
 | 
					.SH NAME
 | 
				
			||||||
 | 
					makedl \- create dynamically loadable extension
 | 
				
			||||||
 | 
					.SH SYNOPSIS
 | 
				
			||||||
 | 
					.B makedl
 | 
				
			||||||
 | 
					.I "output-file object-file ... [library ...]"
 | 
				
			||||||
 | 
					.SH "DESCRIPTION"
 | 
				
			||||||
 | 
					.B makedl
 | 
				
			||||||
 | 
					can be used to link one dynamically loadable extension (an object file); or
 | 
				
			||||||
 | 
					combine several object files into one dynamically loadable extension
 | 
				
			||||||
 | 
					and resolve against libraries.
 | 
				
			||||||
 | 
					.SH AUTHOR
 | 
				
			||||||
 | 
					This manual page was written by E. Zanardi,
 | 
				
			||||||
 | 
					for the Debian GNU/Linux system.
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,6 @@
 | 
				
			||||||
 | 
					doc/man/elk.1
 | 
				
			||||||
 | 
					debian/ldflags-elk.1
 | 
				
			||||||
 | 
					debian/linkscheme.1
 | 
				
			||||||
 | 
					debian/makedl.1
 | 
				
			||||||
 | 
					debian/scheme-elk.1
 | 
				
			||||||
 | 
					debian/scheme-warning-elk.1
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,2 @@
 | 
				
			||||||
 | 
					?package(elk):needs=text section=Apps/Programming\
 | 
				
			||||||
 | 
					  title="elk" command="/usr/bin/scheme-elk"
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,119 @@
 | 
				
			||||||
 | 
					#!/usr/bin/make -f
 | 
				
			||||||
 | 
					# Sample debian/rules that uses debhelper. 
 | 
				
			||||||
 | 
					# GNU copyright 1997 by Joey Hess.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# This version is for a hypothetical package that builds an
 | 
				
			||||||
 | 
					# architecture-dependant package, as well as an architecture-independent
 | 
				
			||||||
 | 
					# package.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Uncomment this to turn on verbose mode. 
 | 
				
			||||||
 | 
					#export DH_VERBOSE=1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# This is the debhelper compatability version to use.
 | 
				
			||||||
 | 
					export DH_COMPAT=3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# This has to be exported to make some magic below work.
 | 
				
			||||||
 | 
					export DH_OPTIONS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					build: build-stamp
 | 
				
			||||||
 | 
					build-stamp:
 | 
				
			||||||
 | 
						dh_testdir
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# Add here commands to compile the package.
 | 
				
			||||||
 | 
					ifeq ($(shell dpkg-architecture -qDEB_BUILD_ARCH),alpha)
 | 
				
			||||||
 | 
						echo "cflags='-O0 -I/usr/include/libelf'" > debian/arch-config
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
						echo "# empty" > debian/arch-config
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
						$(MAKE) SUBDIRS='include scripts src scm lib/misc lib/unix\
 | 
				
			||||||
 | 
						 lib/xlib lib/xt lib/xaw lib/xm lib/xm/xt'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						touch build-stamp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					clean:
 | 
				
			||||||
 | 
						dh_testdir
 | 
				
			||||||
 | 
						dh_testroot
 | 
				
			||||||
 | 
						rm -f build-stamp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# Add here commands to clean up after the build process.
 | 
				
			||||||
 | 
						-$(MAKE) -i distclean
 | 
				
			||||||
 | 
						rm -f debian/arch-config
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						dh_clean
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					install: DH_OPTIONS=
 | 
				
			||||||
 | 
					install: build
 | 
				
			||||||
 | 
						dh_testdir
 | 
				
			||||||
 | 
						dh_testroot
 | 
				
			||||||
 | 
						dh_clean -k
 | 
				
			||||||
 | 
						dh_installdirs
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# Add here commands to install the package into debian/elk.
 | 
				
			||||||
 | 
						$(MAKE) install DESTDIR=$(CURDIR)/debian/elk
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						mv $(CURDIR)/debian/elk/usr/bin/scheme \
 | 
				
			||||||
 | 
						   $(CURDIR)/debian/elk/usr/bin/scheme-elk
 | 
				
			||||||
 | 
						install -m 755 debian/scheme-warning-elk $(CURDIR)/debian/elk/usr/bin/
 | 
				
			||||||
 | 
						install -m 644 debian/elk.ini $(CURDIR)/debian/elk/usr/lib/elk/scm
 | 
				
			||||||
 | 
					#	dh_movefiles
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Build architecture-independent files here.
 | 
				
			||||||
 | 
					# Pass -i to all debhelper commands in this target to reduce clutter.
 | 
				
			||||||
 | 
					binary-indep: DH_OPTIONS=-i
 | 
				
			||||||
 | 
					binary-indep: build install
 | 
				
			||||||
 | 
						dh_testdir
 | 
				
			||||||
 | 
						dh_testroot
 | 
				
			||||||
 | 
					#	dh_installdebconf
 | 
				
			||||||
 | 
						dh_installdocs
 | 
				
			||||||
 | 
						dh_installexamples examples/*
 | 
				
			||||||
 | 
					#	dh_installmenu
 | 
				
			||||||
 | 
					#	dh_installemacsen
 | 
				
			||||||
 | 
					#	dh_installpam
 | 
				
			||||||
 | 
					#	dh_installinit
 | 
				
			||||||
 | 
					#	dh_installcron
 | 
				
			||||||
 | 
					#	dh_installmanpages
 | 
				
			||||||
 | 
					#	dh_installinfo
 | 
				
			||||||
 | 
					#	dh_undocumented
 | 
				
			||||||
 | 
						dh_installchangelogs CHANGES
 | 
				
			||||||
 | 
					#	dh_link
 | 
				
			||||||
 | 
						dh_compress
 | 
				
			||||||
 | 
						dh_fixperms
 | 
				
			||||||
 | 
						dh_installdeb
 | 
				
			||||||
 | 
					#	dh_perl
 | 
				
			||||||
 | 
						dh_gencontrol
 | 
				
			||||||
 | 
						dh_md5sums
 | 
				
			||||||
 | 
						dh_builddeb
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Build architecture-dependent files here.
 | 
				
			||||||
 | 
					# Pass -a to all debhelper commands in this target to reduce clutter.
 | 
				
			||||||
 | 
					binary-arch: DH_OPTIONS=-a
 | 
				
			||||||
 | 
					binary-arch: build install
 | 
				
			||||||
 | 
						dh_testdir
 | 
				
			||||||
 | 
						dh_testroot
 | 
				
			||||||
 | 
					#	dh_installdebconf
 | 
				
			||||||
 | 
						dh_installdocs
 | 
				
			||||||
 | 
					#	dh_installexamples
 | 
				
			||||||
 | 
						dh_installmenu
 | 
				
			||||||
 | 
					#	dh_installemacsen
 | 
				
			||||||
 | 
					#	dh_installpam
 | 
				
			||||||
 | 
					#	dh_installinit
 | 
				
			||||||
 | 
					#	dh_installcron
 | 
				
			||||||
 | 
					#	dh_installmanpages
 | 
				
			||||||
 | 
						dh_installman
 | 
				
			||||||
 | 
					#	dh_installinfo
 | 
				
			||||||
 | 
					#	dh_undocumented
 | 
				
			||||||
 | 
						dh_installchangelogs CHANGES
 | 
				
			||||||
 | 
						dh_strip
 | 
				
			||||||
 | 
					#	dh_link
 | 
				
			||||||
 | 
						dh_compress
 | 
				
			||||||
 | 
						dh_fixperms
 | 
				
			||||||
 | 
						dh_installdeb
 | 
				
			||||||
 | 
					#	dh_makeshlibs
 | 
				
			||||||
 | 
					#	dh_perl
 | 
				
			||||||
 | 
						dh_shlibdeps
 | 
				
			||||||
 | 
						dh_gencontrol
 | 
				
			||||||
 | 
						dh_md5sums
 | 
				
			||||||
 | 
						dh_builddeb
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					binary: binary-indep binary-arch
 | 
				
			||||||
 | 
					.PHONY: build clean binary-indep binary-arch binary install configure
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					.so man1/elk.1
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,13 @@
 | 
				
			||||||
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					echo "As there are a few scheme interpeters in Debian, you should invoke
 | 
				
			||||||
 | 
					the one you want by using its full name. If you want to use elk, invoke
 | 
				
			||||||
 | 
					'scheme-elk'. You may also define elk as the default scheme interpreter.
 | 
				
			||||||
 | 
					To do so, run (as root) the following command:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					update-alternatives --install /usr/bin/scheme scheme /usr/bin/scheme-elk 20 \
 | 
				
			||||||
 | 
					  --slave /usr/share/man/man1/scheme.1.gz scheme.1.gz /usr/share/man/man1/elk.1.gz
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Press any key to continue."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					read foo
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,11 @@
 | 
				
			||||||
 | 
					.TH SCHEME-WARNING-ELK 1
 | 
				
			||||||
 | 
					.SH NAME
 | 
				
			||||||
 | 
					scheme-warning-elk
 | 
				
			||||||
 | 
					.SH SYNOPSIS
 | 
				
			||||||
 | 
					.B scheme-warning-elk 
 | 
				
			||||||
 | 
					.SH "DESCRIPTION"
 | 
				
			||||||
 | 
					.B scheme-warning-elk 
 | 
				
			||||||
 | 
					displays a warning showing how to choose a scheme interpreter in Debian
 | 
				
			||||||
 | 
					.SH AUTHOR
 | 
				
			||||||
 | 
					This manual page was written by E. Zanardi,
 | 
				
			||||||
 | 
					for the Debian GNU/Linux system.
 | 
				
			||||||
| 
						 | 
					@ -26,7 +26,7 @@ usenix/    A paper about Elk that has appeared in USENIX Computing
 | 
				
			||||||
	   Systems (vol. 7, no. 4, pp. 419-449, 1994).
 | 
						   Systems (vol. 7, no. 4, pp. 419-449, 1994).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
man/       This directory holds a brief online manual page for the Scheme
 | 
					man/       This directory holds a brief online manual page for the Scheme
 | 
				
			||||||
	   interpreter component.  You may want to install in `/usr/man'
 | 
						   interpreter component.  You may want to install in `/usr/share/man'
 | 
				
			||||||
	   on your system.  The manual page essentially describes the
 | 
						   on your system.  The manual page essentially describes the
 | 
				
			||||||
	   command line options of the interpreter.
 | 
						   command line options of the interpreter.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -29,10 +29,14 @@ install:	\$(FILES)
 | 
				
			||||||
	    echo mkdir $install_dir/include; \\
 | 
						    echo mkdir $install_dir/include; \\
 | 
				
			||||||
	    mkdir $install_dir/include; \\
 | 
						    mkdir $install_dir/include; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
 | 
						-@if [ ! -d $install_dir/include/elk ]; then \\
 | 
				
			||||||
 | 
						    echo mkdir $install_dir/include/elk; \\
 | 
				
			||||||
 | 
						    mkdir $install_dir/include/elk; \\
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
	@for i in \$(FILES) ;\\
 | 
						@for i in \$(FILES) ;\\
 | 
				
			||||||
	do \\
 | 
						do \\
 | 
				
			||||||
	    echo cp \$\$i $install_dir/include; \\
 | 
						    echo cp \$\$i $install_dir/include/elk; \\
 | 
				
			||||||
	    cp \$\$i $install_dir/include; \\
 | 
						    cp \$\$i $install_dir/include/elk; \\
 | 
				
			||||||
	done
 | 
						done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
localize:	config.h
 | 
					localize:	config.h
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -321,8 +321,8 @@ $def_bcopy
 | 
				
			||||||
$def_bzero
 | 
					$def_bzero
 | 
				
			||||||
$def_bcmp
 | 
					$def_bcmp
 | 
				
			||||||
#define                AOUT_H            $aout_h
 | 
					#define                AOUT_H            $aout_h
 | 
				
			||||||
#define                SCM_DIR           "$install_dir/runtime/scm"
 | 
					#define                SCM_DIR           "$final_dir/lib/elk/scm"
 | 
				
			||||||
#define                OBJ_DIR           "$install_dir/runtime/obj"
 | 
					#define                OBJ_DIR           "$final_dir/lib/elk/obj"
 | 
				
			||||||
#define                HEAP_SIZE         $default_heap_size
 | 
					#define                HEAP_SIZE         $default_heap_size
 | 
				
			||||||
#define                FIND_AOUT         defined(USE_LD) || defined(CAN_DUMP)\\
 | 
					#define                FIND_AOUT         defined(USE_LD) || defined(CAN_DUMP)\\
 | 
				
			||||||
				      || defined(INIT_OBJECTS)
 | 
									      || defined(INIT_OBJECTS)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -88,7 +88,8 @@ extern Object General_Assoc P_((Object, Object, int));
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
extern char *stkbase, *A_Out_Name;
 | 
					extern char *stkbase, *A_Out_Name;
 | 
				
			||||||
extern int Stack_Grows_Down;
 | 
					extern int Stack_Grows_Down;
 | 
				
			||||||
extern int Max_Stack, Interpreter_Initialized, Was_Dumped;
 | 
					extern unsigned int Max_Stack;
 | 
				
			||||||
 | 
					extern int Interpreter_Initialized, Was_Dumped;
 | 
				
			||||||
extern char *Brk_On_Dump;
 | 
					extern char *Brk_On_Dump;
 | 
				
			||||||
extern int Verb_Load, Verb_Init, Case_Insensitive;
 | 
					extern int Verb_Load, Verb_Init, Case_Insensitive;
 | 
				
			||||||
extern SYMTAB *The_Symbols;
 | 
					extern SYMTAB *The_Symbols;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -72,18 +72,22 @@ struct.o:	\$(H) struct.c
 | 
				
			||||||
$gdbm_rule
 | 
					$gdbm_rule
 | 
				
			||||||
 | 
					
 | 
				
			||||||
install: \$(O)
 | 
					install: \$(O)
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime ]; then \\
 | 
						-@if [ ! -d $install_dir/lib ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime; \\
 | 
						    echo mkdir $install_dir/lib; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime; \\
 | 
						    mkdir $install_dir/lib; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime/obj ]; then \\
 | 
						-@if [ ! -d $install_dir/lib/elk ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime/obj; \\
 | 
						    echo mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime/obj; \\
 | 
						    mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
						-@if [ ! -d $install_dir/lib/elk/obj ]; then \\
 | 
				
			||||||
 | 
						    echo mkdir $install_dir/lib/elk/obj; \\
 | 
				
			||||||
 | 
						    mkdir $install_dir/lib/elk/obj; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	@for i in \$(O) ;\\
 | 
						@for i in \$(O) ;\\
 | 
				
			||||||
	do \\
 | 
						do \\
 | 
				
			||||||
	    echo cp \$\$i $install_dir/runtime/obj; \\
 | 
						    echo cp \$\$i $install_dir/lib/elk/obj; \\
 | 
				
			||||||
	    cp \$\$i $install_dir/runtime/obj; \\
 | 
						    cp \$\$i $install_dir/lib/elk/obj; \\
 | 
				
			||||||
	done
 | 
						done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
lint:
 | 
					lint:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -78,24 +78,32 @@ unix.pre: \$(O)
 | 
				
			||||||
	../../scripts/makedl \$@ \$(O)
 | 
						../../scripts/makedl \$@ \$(O)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
install: unix.pre
 | 
					install: unix.pre
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime ]; then \\
 | 
						-@if [ ! -d $install_dir/lib ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime; \\
 | 
						    echo mkdir $install_dir/lib; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime; \\
 | 
						    mkdir $install_dir/lib; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime/obj ]; then \\
 | 
						-@if [ ! -d $install_dir/lib/elk ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime/obj; \\
 | 
						    echo mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime/obj; \\
 | 
						    mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	cp unix.pre $install_dir/runtime/obj/unix.o
 | 
						-@if [ ! -d $install_dir/lib/elk/obj ]; then \\
 | 
				
			||||||
 | 
						    echo mkdir $install_dir/lib/elk/obj; \\
 | 
				
			||||||
 | 
						    mkdir $install_dir/lib/elk/obj; \\
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
						cp unix.pre $install_dir/lib/elk/obj/unix.o
 | 
				
			||||||
	-@if [ ! -d $install_dir/include ]; then \\
 | 
						-@if [ ! -d $install_dir/include ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/include; \\
 | 
						    echo mkdir $install_dir/include; \\
 | 
				
			||||||
	    mkdir $install_dir/include; \\
 | 
						    mkdir $install_dir/include; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	-@if [ ! -d $install_dir/include/extensions ]; then \\
 | 
						-@if [ ! -d $install_dir/include/elk ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/include/extensions; \\
 | 
						    echo mkdir $install_dir/include/elk; \\
 | 
				
			||||||
	    mkdir $install_dir/include/extensions; \\
 | 
						    mkdir $install_dir/include/elk; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	cp unix.h $install_dir/include/extensions
 | 
						-@if [ ! -d $install_dir/include/elk/extensions ]; then \\
 | 
				
			||||||
 | 
						    echo mkdir $install_dir/include/elk/extensions; \\
 | 
				
			||||||
 | 
						    mkdir $install_dir/include/elk/extensions; \\
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
						cp unix.h $install_dir/include/elk/extensions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
lint:
 | 
					lint:
 | 
				
			||||||
	lint \$(LINTFLAGS) -I\$(INC) \$(C)
 | 
						lint \$(LINTFLAGS) -I\$(INC) \$(C)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -96,22 +96,26 @@ tree.o:		\$(H) tree.d
 | 
				
			||||||
viewport.o:	\$(H) viewport.d
 | 
					viewport.o:	\$(H) viewport.d
 | 
				
			||||||
 | 
					
 | 
				
			||||||
install: \$(O)
 | 
					install: \$(O)
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime ]; then \\
 | 
						-@if [ ! -d $install_dir/lib ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime; \\
 | 
						    echo mkdir $install_dir/lib; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime; \\
 | 
						    mkdir $install_dir/lib; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime/obj ]; then \\
 | 
						-@if [ ! -d $install_dir/lib/elk ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime/obj; \\
 | 
						    echo mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime/obj; \\
 | 
						    mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime/obj/xaw ]; then \\
 | 
						-@if [ ! -d $install_dir/lib/elk/obj ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime/obj/xaw; \\
 | 
						    echo mkdir $install_dir/lib/elk/obj; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime/obj/xaw; \\
 | 
						    mkdir $install_dir/lib/elk/obj; \\
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
						-@if [ ! -d $install_dir/lib/elk/obj/xaw ]; then \\
 | 
				
			||||||
 | 
						    echo mkdir $install_dir/lib/elk/obj/xaw; \\
 | 
				
			||||||
 | 
						    mkdir $install_dir/lib/elk/obj/xaw; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	@for i in \$(O) ALIASES ;\\
 | 
						@for i in \$(O) ALIASES ;\\
 | 
				
			||||||
	do \\
 | 
						do \\
 | 
				
			||||||
	    echo cp \$\$i $install_dir/runtime/obj/xaw; \\
 | 
						    echo cp \$\$i $install_dir/lib/elk/obj/xaw; \\
 | 
				
			||||||
	    cp \$\$i $install_dir/runtime/obj/xaw; \\
 | 
						    cp \$\$i $install_dir/lib/elk/obj/xaw; \\
 | 
				
			||||||
	done
 | 
						done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
lint:
 | 
					lint:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -108,24 +108,32 @@ xlib.pre: \$(O)
 | 
				
			||||||
	../../scripts/makedl \$@ \$(O)
 | 
						../../scripts/makedl \$@ \$(O)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
install: xlib.pre
 | 
					install: xlib.pre
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime ]; then \\
 | 
						-@if [ ! -d $install_dir/lib ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime; \\
 | 
						    echo mkdir $install_dir/lib; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime; \\
 | 
						    mkdir $install_dir/lib; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime/obj ]; then \\
 | 
						-@if [ ! -d $install_dir/lib/elk ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime/obj; \\
 | 
						    echo mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime/obj; \\
 | 
						    mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	cp xlib.pre $install_dir/runtime/obj/xlib.o
 | 
						-@if [ ! -d $install_dir/lib/elk/obj ]; then \\
 | 
				
			||||||
 | 
						    echo mkdir $install_dir/lib/elk/obj; \\
 | 
				
			||||||
 | 
						    mkdir $install_dir/lib/elk/obj; \\
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
						cp xlib.pre $install_dir/lib/elk/obj/xlib.o
 | 
				
			||||||
	-@if [ ! -d $install_dir/include ]; then \\
 | 
						-@if [ ! -d $install_dir/include ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/include; \\
 | 
						    echo mkdir $install_dir/include; \\
 | 
				
			||||||
	    mkdir $install_dir/include; \\
 | 
						    mkdir $install_dir/include; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	-@if [ ! -d $install_dir/include/extensions ]; then \\
 | 
						-@if [ ! -d $install_dir/include/elk ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/include/extensions; \\
 | 
						    echo mkdir $install_dir/include/elk; \\
 | 
				
			||||||
	    mkdir $install_dir/include/extensions; \\
 | 
						    mkdir $install_dir/include/elk; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	cp xlib.h $install_dir/include/extensions
 | 
						-@if [ ! -d $install_dir/include/elk/extensions ]; then \\
 | 
				
			||||||
 | 
						    echo mkdir $install_dir/include/elk/extensions; \\
 | 
				
			||||||
 | 
						    mkdir $install_dir/include/elk/extensions; \\
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
						cp xlib.h $install_dir/include/elk/extensions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
lint:
 | 
					lint:
 | 
				
			||||||
	lint \$(LINTFLAGS) -I\$(INC) $x11_incl \$(C)
 | 
						lint \$(LINTFLAGS) -I\$(INC) $x11_incl \$(C)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										26
									
								
								lib/xm/build
								
								
								
								
							
							
						
						
									
										26
									
								
								lib/xm/build
								
								
								
								
							| 
						 | 
					@ -102,22 +102,26 @@ text.o:			\$(H) text.d
 | 
				
			||||||
toggle-btn.o:		\$(H) toggle-btn.d
 | 
					toggle-btn.o:		\$(H) toggle-btn.d
 | 
				
			||||||
 | 
					
 | 
				
			||||||
install: \$(O)
 | 
					install: \$(O)
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime ]; then \\
 | 
						-@if [ ! -d $install_dir/lib ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime; \\
 | 
						    echo mkdir $install_dir/lib; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime; \\
 | 
						    mkdir $install_dir/lib; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime/obj ]; then \\
 | 
						-@if [ ! -d $install_dir/lib/elk ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime/obj; \\
 | 
						    echo mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime/obj; \\
 | 
						    mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime/obj/xm ]; then \\
 | 
						-@if [ ! -d $install_dir/lib/elk/obj ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime/obj/xm; \\
 | 
						    echo mkdir $install_dir/lib/elk/obj; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime/obj/xm; \\
 | 
						    mkdir $install_dir/lib/elk/obj; \\
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
						-@if [ ! -d $install_dir/lib/elk/obj/xm ]; then \\
 | 
				
			||||||
 | 
						    echo mkdir $install_dir/lib/elk/obj/xm; \\
 | 
				
			||||||
 | 
						    mkdir $install_dir/lib/elk/obj/xm; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	@for i in \$(O) ALIASES ;\\
 | 
						@for i in \$(O) ALIASES ;\\
 | 
				
			||||||
	do \\
 | 
						do \\
 | 
				
			||||||
	    echo cp \$\$i $install_dir/runtime/obj/xm; \\
 | 
						    echo cp \$\$i $install_dir/lib/elk/obj/xm; \\
 | 
				
			||||||
	    cp \$\$i $install_dir/runtime/obj/xm; \\
 | 
						    cp \$\$i $install_dir/lib/elk/obj/xm; \\
 | 
				
			||||||
	done
 | 
						done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
lint:
 | 
					lint:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -49,15 +49,19 @@ xt-motif.pre: \$(O) ../../xlib/xlib.pre
 | 
				
			||||||
	../../../scripts/makedl \$@ \$(O) ../../xlib/*.o $motif_link_libs
 | 
						../../../scripts/makedl \$@ \$(O) ../../xlib/*.o $motif_link_libs
 | 
				
			||||||
 | 
					
 | 
				
			||||||
install: xt-motif.pre
 | 
					install: xt-motif.pre
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime ]; then \\
 | 
						-@if [ ! -d $install_dir/lib ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime; \\
 | 
						    echo mkdir $install_dir/lib; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime; \\
 | 
						    mkdir $install_dir/lib; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime/obj ]; then \\
 | 
						-@if [ ! -d $install_dir/lib/elk ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime/obj; \\
 | 
						    echo mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime/obj; \\
 | 
						    mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	cp xt-motif.pre $install_dir/runtime/obj/xt-motif.o
 | 
						-@if [ ! -d $install_dir/lib/elk/obj ]; then \\
 | 
				
			||||||
 | 
						    echo mkdir $install_dir/lib/elk/obj; \\
 | 
				
			||||||
 | 
						    mkdir $install_dir/lib/elk/obj; \\
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
						cp xt-motif.pre $install_dir/lib/elk/obj/xt-motif.o
 | 
				
			||||||
 | 
					
 | 
				
			||||||
lint:
 | 
					lint:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										30
									
								
								lib/xt/build
								
								
								
								
							
							
						
						
									
										30
									
								
								lib/xt/build
								
								
								
								
							| 
						 | 
					@ -88,24 +88,32 @@ xt.pre: \$(O) ../xlib/xlib.pre
 | 
				
			||||||
	../../scripts/makedl \$@ \$(O) ../xlib/*.o
 | 
						../../scripts/makedl \$@ \$(O) ../xlib/*.o
 | 
				
			||||||
 | 
					
 | 
				
			||||||
install: xt.pre
 | 
					install: xt.pre
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime ]; then \\
 | 
						-@if [ ! -d $install_dir/lib ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime; \\
 | 
						    echo mkdir $install_dir/lib; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime; \\
 | 
						    mkdir $install_dir/lib; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime/obj ]; then \\
 | 
						-@if [ ! -d $install_dir/lib/elk ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime/obj; \\
 | 
						    echo mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime/obj; \\
 | 
						    mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	cp xt.pre $install_dir/runtime/obj/xt.o
 | 
						-@if [ ! -d $install_dir/lib/elk/obj ]; then \\
 | 
				
			||||||
 | 
						    echo mkdir $install_dir/lib/elk/obj; \\
 | 
				
			||||||
 | 
						    mkdir $install_dir/lib/elk/obj; \\
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
						cp xt.pre $install_dir/lib/elk/obj/xt.o
 | 
				
			||||||
	-@if [ ! -d $install_dir/include ]; then \\
 | 
						-@if [ ! -d $install_dir/include ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/include; \\
 | 
						    echo mkdir $install_dir/include; \\
 | 
				
			||||||
	    mkdir $install_dir/include; \\
 | 
						    mkdir $install_dir/include; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	-@if [ ! -d $install_dir/include/extensions ]; then \\
 | 
						-@if [ ! -d $install_dir/include/elk ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/include/extensions; \\
 | 
						    echo mkdir $install_dir/include/elk; \\
 | 
				
			||||||
	    mkdir $install_dir/include/extensions; \\
 | 
						    mkdir $install_dir/include/elk; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	cp xt.h $install_dir/include/extensions
 | 
						-@if [ ! -d $install_dir/include/elk/extensions ]; then \\
 | 
				
			||||||
 | 
						    echo mkdir $install_dir/include/elk/extensions; \\
 | 
				
			||||||
 | 
						    mkdir $install_dir/include/elk/extensions; \\
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
						cp xt.h $install_dir/include/elk/extensions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
lint:
 | 
					lint:
 | 
				
			||||||
	lint \$(LINTFLAGS) -I\$(INC) -I../xlib $x11_incl \$(C)
 | 
						lint \$(LINTFLAGS) -I\$(INC) -I../xlib $x11_incl \$(C)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										20
									
								
								scm/build
								
								
								
								
							
							
						
						
									
										20
									
								
								scm/build
								
								
								
								
							| 
						 | 
					@ -43,18 +43,22 @@ siteinfo.scm: ../config/system ../config/site
 | 
				
			||||||
	\$(SHELL) ./build-siteinfo
 | 
						\$(SHELL) ./build-siteinfo
 | 
				
			||||||
 | 
					
 | 
				
			||||||
install: \$(TARGETS)
 | 
					install: \$(TARGETS)
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime ]; then \\
 | 
						-@if [ ! -d $install_dir/lib ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime; \\
 | 
						    echo mkdir $install_dir/lib; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime; \\
 | 
						    mkdir $install_dir/lib; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	-@if [ ! -d $install_dir/runtime/scm ]; then \\
 | 
						-@if [ ! -d $install_dir/lib/elk ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/runtime/scm; \\
 | 
						    echo mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
	    mkdir $install_dir/runtime/scm; \\
 | 
						    mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
						-@if [ ! -d $install_dir/lib/elk/scm ]; then \\
 | 
				
			||||||
 | 
						    echo mkdir $install_dir/lib/elk/scm; \\
 | 
				
			||||||
 | 
						    mkdir $install_dir/lib/elk/scm; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	@for i in \$(FILES) ;\\
 | 
						@for i in \$(FILES) ;\\
 | 
				
			||||||
	do \\
 | 
						do \\
 | 
				
			||||||
	    echo cp \$\$i $install_dir/runtime/scm; \\
 | 
						    echo cp \$\$i $install_dir/lib/elk/scm; \\
 | 
				
			||||||
	    cp \$\$i $install_dir/runtime/scm; \\
 | 
						    cp \$\$i $install_dir/lib/elk/scm; \\
 | 
				
			||||||
	done
 | 
						done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
lint:
 | 
					lint:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -30,13 +30,17 @@ ldflags:	src/ldflags ../config/system ../config/site
 | 
				
			||||||
	chmod +x \$@
 | 
						chmod +x \$@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
install: \$(FILES)
 | 
					install: \$(FILES)
 | 
				
			||||||
	-@if [ ! -d $install_dir/lib ]; then \\
 | 
						-@if [ ! -d $install_dir/bin ]; then \\
 | 
				
			||||||
	    echo mkdir $install_dir/lib; \\
 | 
						    echo mkdir $install_dir/bin; \\
 | 
				
			||||||
	    mkdir $install_dir/lib; \\
 | 
						    mkdir $install_dir/bin; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	cp linkscheme $install_dir/lib
 | 
						cp linkscheme $install_dir/bin
 | 
				
			||||||
	cp makedl $install_dir/lib
 | 
						cp makedl $install_dir/bin
 | 
				
			||||||
	cp ldflags $install_dir/lib
 | 
						-@if [ ! -d $install_dir/lib/elk ]; then \\
 | 
				
			||||||
 | 
						    echo mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
 | 
						    mkdir -p $install_dir/lib/elk; \\
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
						cp ldflags $install_dir/lib/elk
 | 
				
			||||||
 | 
					
 | 
				
			||||||
distclean:
 | 
					distclean:
 | 
				
			||||||
	rm -f \$(FILES) Makefile.local
 | 
						rm -f \$(FILES) Makefile.local
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,6 +2,7 @@
 | 
				
			||||||
. ../config/site
 | 
					. ../config/site
 | 
				
			||||||
 | 
					
 | 
				
			||||||
cat <<HERE
 | 
					cat <<HERE
 | 
				
			||||||
 | 
					#!/bin/sh
 | 
				
			||||||
# Echo the LDFLAGS required for linking the Elk interpreter kernel.
 | 
					# Echo the LDFLAGS required for linking the Elk interpreter kernel.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
echo $ldflags
 | 
					echo $ldflags
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -19,7 +19,7 @@ then
 | 
				
			||||||
    echo Usage: "\$0: output-file [object-files]"
 | 
					    echo Usage: "\$0: output-file [object-files]"
 | 
				
			||||||
    exit 1
 | 
					    exit 1
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
ofile=$install_dir/lib/standalone.o
 | 
					ofile=$final_dir/lib/elk/standalone.o
 | 
				
			||||||
aout=\$1
 | 
					aout=\$1
 | 
				
			||||||
if [ -f \$aout ]
 | 
					if [ -f \$aout ]
 | 
				
			||||||
then
 | 
					then
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,6 @@
 | 
				
			||||||
. ../config/system
 | 
					. ../config/system
 | 
				
			||||||
. ../config/site
 | 
					. ../config/site
 | 
				
			||||||
 | 
					. ../debian/arch-config
 | 
				
			||||||
 | 
					
 | 
				
			||||||
case _$aout_format in
 | 
					case _$aout_format in
 | 
				
			||||||
_coff)   dump=dump-vanilla.c; stab=stab-coff.c;;
 | 
					_coff)   dump=dump-vanilla.c; stab=stab-coff.c;;
 | 
				
			||||||
| 
						 | 
					@ -190,8 +191,12 @@ install: scheme standalone.o module.o
 | 
				
			||||||
	    echo mkdir $install_dir/lib; \\
 | 
						    echo mkdir $install_dir/lib; \\
 | 
				
			||||||
	    mkdir $install_dir/lib; \\
 | 
						    mkdir $install_dir/lib; \\
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
	cp standalone.o $install_dir/lib
 | 
						-@if [ ! -d $install_dir/lib/elk ]; then \\
 | 
				
			||||||
	cp module.o $install_dir/lib
 | 
						    echo mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
 | 
						    mkdir $install_dir/lib/elk; \\
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
						cp standalone.o $install_dir/lib/elk
 | 
				
			||||||
 | 
						cp module.o $install_dir/lib/elk
 | 
				
			||||||
 | 
					
 | 
				
			||||||
lint:
 | 
					lint:
 | 
				
			||||||
	lint \$(LINTFLAGS) -I\$(INC) \$(C)
 | 
						lint \$(LINTFLAGS) -I\$(INC) \$(C)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -76,7 +76,7 @@ Check_Stack_Grows_Down () {
 | 
				
			||||||
 * It works independent of the direction into which the stack grows
 | 
					 * It works independent of the direction into which the stack grows
 | 
				
			||||||
 * (the stack grows upwards on HP-PA based machines and Pyramids).
 | 
					 * (the stack grows upwards on HP-PA based machines and Pyramids).
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
int Stack_Size () {
 | 
					unsigned int Stack_Size () {
 | 
				
			||||||
    char foo;
 | 
					    char foo;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return Stack_Grows_Down ? stkbase-&foo : &foo-stkbase;
 | 
					    return Stack_Grows_Down ? stkbase-&foo : &foo-stkbase;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -3,7 +3,6 @@
 | 
				
			||||||
#include <stdio.h>
 | 
					#include <stdio.h>
 | 
				
			||||||
#include <unistd.h>
 | 
					#include <unistd.h>
 | 
				
			||||||
#include <fcntl.h>
 | 
					#include <fcntl.h>
 | 
				
			||||||
#include <syms.h>
 | 
					 | 
				
			||||||
#include <sys/types.h>
 | 
					#include <sys/types.h>
 | 
				
			||||||
#include <sys/stat.h>
 | 
					#include <sys/stat.h>
 | 
				
			||||||
#include <sys/mman.h>
 | 
					#include <sys/mman.h>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -39,7 +39,7 @@ char *Temp_Name (seq) int seq; {
 | 
				
			||||||
	    tmpdir = "/tmp";
 | 
						    tmpdir = "/tmp";
 | 
				
			||||||
	tempname = Safe_Malloc (tmplen = strlen (tmpdir) + 20);
 | 
						tempname = Safe_Malloc (tmplen = strlen (tmpdir) + 20);
 | 
				
			||||||
	sprintf (tempname, "%s/ldXXXXXX", tmpdir);
 | 
						sprintf (tempname, "%s/ldXXXXXX", tmpdir);
 | 
				
			||||||
	(void)mktemp (tempname);
 | 
						(void)mkstemp (tempname);
 | 
				
			||||||
	strcat (tempname, ".");
 | 
						strcat (tempname, ".");
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    sprintf (strrchr (tempname, '.'), ".%d", seq);
 | 
					    sprintf (strrchr (tempname, '.'), ".%d", seq);
 | 
				
			||||||
| 
						 | 
					@ -55,7 +55,7 @@ void Fork_Load () {
 | 
				
			||||||
    Disable_Interrupts;
 | 
					    Disable_Interrupts;
 | 
				
			||||||
    newtemp = Safe_Malloc (tmplen);
 | 
					    newtemp = Safe_Malloc (tmplen);
 | 
				
			||||||
    sprintf (newtemp, "%s/ldXXXXXX", tmpdir);
 | 
					    sprintf (newtemp, "%s/ldXXXXXX", tmpdir);
 | 
				
			||||||
    (void)mktemp (newtemp);
 | 
					    (void)mkstemp (newtemp);
 | 
				
			||||||
    strcat (newtemp, ".");
 | 
					    strcat (newtemp, ".");
 | 
				
			||||||
    for (i = 0; i < Seq_Num; i++) {
 | 
					    for (i = 0; i < Seq_Num; i++) {
 | 
				
			||||||
	sprintf (strrchr (newtemp, '.'), ".%d", i);
 | 
						sprintf (strrchr (newtemp, '.'), ".%d", i);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -48,7 +48,7 @@ Load_Object (names) Object names; {
 | 
				
			||||||
	Loader_Output = Safe_Malloc (strlen (tmpdir) + 20);
 | 
						Loader_Output = Safe_Malloc (strlen (tmpdir) + 20);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    sprintf (Loader_Output, "%s/ldXXXXXX", tmpdir);
 | 
					    sprintf (Loader_Output, "%s/ldXXXXXX", tmpdir);
 | 
				
			||||||
    (void)mktemp (Loader_Output);
 | 
					    (void)mkstemp (Loader_Output);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    port = tail = fullnames = Null;
 | 
					    port = tail = fullnames = Null;
 | 
				
			||||||
    GC_Link3 (port, tail, fullnames);
 | 
					    GC_Link3 (port, tail, fullnames);
 | 
				
			||||||
| 
						 | 
					@ -159,7 +159,7 @@ void Fork_Load () {
 | 
				
			||||||
	Disable_Interrupts;
 | 
						Disable_Interrupts;
 | 
				
			||||||
	newlink = Safe_Malloc (strlen (tmpdir) + 20);
 | 
						newlink = Safe_Malloc (strlen (tmpdir) + 20);
 | 
				
			||||||
	sprintf (newlink, "%s/ldXXXXXX", tmpdir);
 | 
						sprintf (newlink, "%s/ldXXXXXX", tmpdir);
 | 
				
			||||||
	(void)mktemp (newlink);
 | 
						(void)mkstemp (newlink);
 | 
				
			||||||
	(void)link (Loader_Input, newlink);
 | 
						(void)link (Loader_Input, newlink);
 | 
				
			||||||
	free (Loader_Input);
 | 
						free (Loader_Input);
 | 
				
			||||||
	Loader_Input = newlink;
 | 
						Loader_Input = newlink;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,7 @@
 | 
				
			||||||
#include "kernel.h"
 | 
					#include "kernel.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <errno.h>
 | 
					#include <errno.h>
 | 
				
			||||||
 | 
					#include <limits.h>
 | 
				
			||||||
#include <sys/types.h>
 | 
					#include <sys/types.h>
 | 
				
			||||||
#include <sys/stat.h>
 | 
					#include <sys/stat.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -21,7 +22,7 @@ extern char *getenv();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
char *stkbase;
 | 
					char *stkbase;
 | 
				
			||||||
int Stack_Grows_Down;
 | 
					int Stack_Grows_Down;
 | 
				
			||||||
int Max_Stack;
 | 
					unsigned int Max_Stack;
 | 
				
			||||||
int Interpreter_Initialized;
 | 
					int Interpreter_Initialized;
 | 
				
			||||||
int GC_Debug = 0;
 | 
					int GC_Debug = 0;
 | 
				
			||||||
int Case_Insensitive;
 | 
					int Case_Insensitive;
 | 
				
			||||||
| 
						 | 
					@ -320,6 +321,7 @@ Get_Stack_Limit () {
 | 
				
			||||||
	perror ("getrlimit");
 | 
						perror ("getrlimit");
 | 
				
			||||||
	exit (1);
 | 
						exit (1);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    Max_Stack = rl.rlim_cur;
 | 
					    Max_Stack = rl.rlim_cur;
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
    Max_Stack -= STACK_MARGIN;
 | 
					    Max_Stack -= STACK_MARGIN;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										13
									
								
								src/print.c
								
								
								
								
							
							
						
						
									
										13
									
								
								src/print.c
								
								
								
								
							| 
						 | 
					@ -3,6 +3,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "kernel.h"
 | 
					#include "kernel.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include <string.h>
 | 
				
			||||||
#include <errno.h>
 | 
					#include <errno.h>
 | 
				
			||||||
#include <ctype.h>
 | 
					#include <ctype.h>
 | 
				
			||||||
#include <varargs.h>
 | 
					#include <varargs.h>
 | 
				
			||||||
| 
						 | 
					@ -557,7 +558,9 @@ Format (port, fmt, len, argc, argv) Object port; const char *fmt;
 | 
				
			||||||
    char buf[256];
 | 
					    char buf[256];
 | 
				
			||||||
    extern sys_nerr;
 | 
					    extern sys_nerr;
 | 
				
			||||||
#ifndef __bsdi__
 | 
					#ifndef __bsdi__
 | 
				
			||||||
 | 
					 #ifndef __linux__
 | 
				
			||||||
    extern char *sys_errlist[];
 | 
					    extern char *sys_errlist[];
 | 
				
			||||||
 | 
					 #endif
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
    GC_Node;
 | 
					    GC_Node;
 | 
				
			||||||
    Alloca_Begin;
 | 
					    Alloca_Begin;
 | 
				
			||||||
| 
						 | 
					@ -573,13 +576,9 @@ Format (port, fmt, len, argc, argv) Object port; const char *fmt;
 | 
				
			||||||
	    } else if (c == '%') {
 | 
						    } else if (c == '%') {
 | 
				
			||||||
		Print_Char (port, '\n');
 | 
							Print_Char (port, '\n');
 | 
				
			||||||
	    } else if (c == 'e' || c == 'E') {
 | 
						    } else if (c == 'e' || c == 'E') {
 | 
				
			||||||
		if (Saved_Errno > 0 && Saved_Errno < sys_nerr) {
 | 
							s = strerror(Saved_Errno);
 | 
				
			||||||
		    s = sys_errlist[Saved_Errno];
 | 
							sprintf (buf, "%c%s", isupper (*s) ? tolower (*s) :
 | 
				
			||||||
		    sprintf (buf, "%c%s", isupper (*s) ? tolower (*s) :
 | 
							    *s, *s ? "" : s+1);
 | 
				
			||||||
			*s, s+1);
 | 
					 | 
				
			||||||
		} else {
 | 
					 | 
				
			||||||
		    sprintf (buf, "error %d", Saved_Errno);
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
		Print_Object (Make_String (buf, strlen (buf)), port,
 | 
							Print_Object (Make_String (buf, strlen (buf)), port,
 | 
				
			||||||
		    c == 'E', 0, 0);
 | 
							    c == 'E', 0, 0);
 | 
				
			||||||
	    } else {
 | 
						    } else {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue