Blob Blame History Raw
diff -ru tcsh-6.24.05.orig/Makefile.in tcsh-6.24.05/Makefile.in
--- tcsh-6.24.05.orig/Makefile.in       2022-12-04 09:20:48.000000000 +0100
+++ tcsh-6.24.05/Makefile.in    2022-12-13 13:36:05.821910068 +0100
@@ -421,6 +421,7 @@
 #CC=   cc      -h0,ansi,novector,float0
 #CC=   lcc     -wa
 CC_FOR_GETHOST = @CC_FOR_GETHOST@
+CPPFLAGS_FOR_GETHOST=-I. -I$(srcdir)
 ED=	ed
 AS=	as
 RM=	rm
@@ -497,7 +498,7 @@
 #	emxbind tcsh

 gethost.${SUF}: gethost.c sh.err.h tc.const.h sh.h
-	${CC_FOR_GETHOST} ${CF} ${CPPFLAGS} ${CFLAGS} $(srcdir)/gethost.c
+	${CC_FOR_GETHOST} ${CF} ${CPPFLAGS_FOR_GETHOST} ${CFLAGS_FOR_GETHOST} $(srcdir)/gethost.c

 gethost:  gethost.${SUF}
        rm -f gethost
diff -ru tcsh-6.23.02.orig/config_f.h tcsh-6.23.02/config_f.h
--- tcsh-6.23.02.orig/config_f.h        2022-01-03 09:03:03.000000000 +0100
+++ tcsh-6.23.02/config_f.h     2022-02-01 11:36:23.327968800 +0100
@@ -149,7 +149,7 @@
  *             This can be much slower and no memory statistics will be
  *             provided.
  */
-#if defined(__MACHTEN__) || defined(PURIFY) || defined(MALLOC_TRACE) || defined(_OSD_POSIX) || defined(__MVS__) || defined (__CYGWIN__) || defined(__GLIBC__) || defined(__OpenBSD__) || defined(__APPLE__) || defined (__ANDROID__) || defined(__NetBSD__) || !defined(HAVE_WORKING_SBRK)
+#if defined(__MACHTEN__) || defined(PURIFY) || defined(MALLOC_TRACE) || defined(_OSD_POSIX) || defined(__MVS__) || defined (__CYGWIN__) || defined(__GLIBC__) || defined(__OpenBSD__) || defined(__APPLE__) || defined (__ANDROID__) || defined(__NetBSD__) || defined(__midipix__) || !defined(HAVE_WORKING_SBRK)
 # define SYSMALLOC
 #else
 # undef SYSMALLOC
diff -Nru tcsh-6.22.00.orig/config/midipix tcsh-6.22.00/config/midipix
--- tcsh-6.22.00.orig/system/midipix	1970-01-01 01:00:00.000000000 +0100
+++ tcsh-6.22.00/system/midipix	2020-08-21 19:12:56.066600827 +0200
@@ -0,0 +1,138 @@
+/*
+ * config.h -- configure various defines for tcsh
+ *
+ * All source files should #include this FIRST.
+ *
+ * This is the config file for midipix systems
+ */
+
+#ifndef _h_config
+#define _h_config
+/****************** System dependant compilation flags ****************/
+/*
+ * POSIX	This system supports IEEE Std 1003.1-1988 (POSIX).
+ */
+#define POSIX
+
+/*
+ * POSIXJOBS	This system supports the optional IEEE Std 1003.1-1988 (POSIX)
+ *		job control facilities.
+ */
+#define POSIXJOBS
+
+/*
+ * VFORK	This machine has a vfork().  
+ *		It used to be that for job control to work, this define
+ *		was mandatory. This is not the case any more.
+ *		If you think you still need it, but you don't have vfork, 
+ *		define this anyway and then do #define vfork fork.  
+ *		I do this anyway on a Sun because of yellow pages brain damage,
+ *		[should not be needed under 4.1]
+ *		and on the iris4d cause	SGI's fork is sufficiently "virtual" 
+ *		that vfork isn't necessary.  (Besides, SGI's vfork is weird).
+ *		Note that some machines eg. rs6000 have a vfork, but not
+ *		with the berkeley semantics, so we cannot use it there either.
+ */
+#undef VFORK
+
+/*
+ * BSDJOBS	You have BSD-style job control (both process groups and
+ *		a tty that deals correctly
+ */
+#define BSDJOBS
+
+/*
+ * BSDTIMES	You have BSD-style process time stuff (like rusage)
+ *		This may or may not be true.  For example, Apple Unix
+ *		(OREO) has BSDJOBS but not BSDTIMES.
+ */
+#define BSDTIMES
+
+/*
+ * BSDLIMIT	You have BSD-style resource limit stuff (getrlimit/setrlimit)
+ */
+#define BSDLIMIT
+
+/*
+ * TERMIO	You have struct termio instead of struct sgttyb.
+ * 		This is usually the case for SVID systems, where
+ *		BSD uses sgttyb. POSIX systems should define this
+ *		anyway, even though they use struct termios.
+ */
+#define TERMIO
+
+/*
+ * SYSVREL	Your machine is SYSV based (HPUX, A/UX)
+ *		NOTE: don't do this if you are on a Pyramid -- tcsh is
+ *		built in a BSD universe.
+ *		Set SYSVREL to 1, 2, 3, or 4, depending the version of System V
+ *		you are running. Or set it to 0 if you are not SYSV based
+ *
+ *		Note: Linux should work with any SYSVREL < 3.
+ */
+#define SYSVREL	2
+
+/*
+ * YPBUGS	Work around Sun YP bugs that cause expansion of ~username
+ *		to send command output to /dev/null
+ */
+#undef YPBUGS
+
+/*
+ * Get the name space we want.
+ *
+ * The more recent defaults for gcc (e.g. on Red Hat 7.0)
+ * also define _POSIX_C_SOURCE, which throws our code off.
+ */
+
+#define __STRICT_ANSI__
+#ifndef _BSD_SOURCE
+# define _BSD_SOURCE
+#endif
+#ifndef _SVID_SOURCE
+# define _SVID_SOURCE
+#endif
+#ifndef _POSIX_SOURCE
+# define _POSIX_SOURCE
+#endif
+#ifndef _XOPEN_SOURCE
+# define _XOPEN_SOURCE 500
+#endif
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE
+#endif
+
+/*
+ * Large file support from <features.h>
+ */
+
+#ifndef _LARGEFILE_SOURCE
+# define _LARGEFILE_SOURCE
+#endif
+#ifndef _LARGEFILE64_SOURCE
+# define _LARGEFILE64_SOURCE
+#endif
+#ifndef _FILE_OFFSET_BITS
+# define _FILE_OFFSET_BITS 64
+#endif
+
+/****************** local defines *********************/
+#ifndef _PATH_TCSHELL
+#define _PATH_TCSHELL "/bin/tcsh"
+#endif
+#define ECHO_STYLE      BOTH_ECHO
+
+#if !defined(SYSMALLOC)
+# define SYSMALLOC
+#endif
+#if !defined(NISPLUS)
+# define NISPLUS
+#endif
+#if !defined(POSIX)
+# define POSIX
+#endif
+
+/* midipix allows paths prepended with double slashes (network paths). */
+#define HAVE_SLASHSLASH 1
+
+#endif /* _h_config */
diff -Nru tcsh-6.22.00.orig/configure tcsh-6.22.00/configure
--- tcsh-6.22.00.orig/configure	2019-11-28 17:00:05.000000000 +0100
+++ tcsh-6.22.00/configure	2020-08-21 19:08:03.600976202 +0200
@@ -2975,6 +2975,11 @@
     tcsh_config_file=qnx6
   ;;
 
+  ## midipix
+  *-midipix*)
+    tcsh_config_file=midipix
+  ;;
+
   * )
     as_fn_error $? "Tcsh can't guess the configuration file name
 for \`${host}' systems.
diff -Nru tcsh-6.22.00.orig/ed.inputl.c tcsh-6.22.00/ed.inputl.c
--- tcsh-6.22.00.orig/ed.inputl.c	2019-11-28 17:00:05.000000000 +0100
+++ tcsh-6.22.00/ed.inputl.c	2020-08-21 19:22:12.899460169 +0200
@@ -34,6 +34,8 @@
 #include "ed.defns.h"		/* for the function names */
 #include "tw.h"			/* for twenex stuff */
 
+#include <wchar.h>
+
 #define OKCMD INT_MAX
 
 /* ed.inputl -- routines to get a single line from the input. */
diff -Nru tcsh-6.22.00.orig/sh.h tcsh-6.22.00/sh.h
--- tcsh-6.22.00.orig/sh.h	2019-11-28 17:00:05.000000000 +0100
+++ tcsh-6.22.00/sh.h	2020-08-21 19:10:44.030604961 +0200
@@ -337,7 +337,7 @@
 #endif /* POSIX && !WINNT_NATIVE */
 #include <limits.h>
 
-#if SYSVREL > 0 || defined(_IBMR2) || defined(_MINIX) || defined(__linux__) || defined(__GNU__) || defined(__GLIBC__)
+#if SYSVREL > 0 || defined(_IBMR2) || defined(_MINIX) || defined(__linux__) || defined(__GNU__) || defined(__GLIBC__) || defined(__midipix__)
 # if !defined(pyr) && !defined(stellar)
 #  include <time.h>
 #  ifdef _MINIX