Blob Blame History Raw
diff -ru tcsh-6.24.07.orig/configure tcsh-6.24.07/configure
--- tcsh-6.24.07.orig/configure 2022-12-21 20:44:53.000000000 +0100
+++ tcsh-6.24.07/configure      2022-12-27 12:27:29.897963800 +0100
@@ -6171,6 +6171,10 @@
   *-qnx6*) :
         tcsh_config_file=qnx6
    ;; #(
+  ## Midipix
+  *-midipix*) :
+        tcsh_config_file=midipix
+   ;; #(
   *) :
     as_fn_error $? "Tcsh can't guess the configuration file name
 for \`${host}' systems.
--- tcsh-6.24.07/Makefile.in.orig	2022-12-21 20:44:53.000000000 +0100
+++ tcsh-6.24.07/Makefile.in	2023-03-26 13:56:59.529589767 +0200
@@ -431,6 +431,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
@@ -506,7 +507,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
@@ -595,7 +596,7 @@
 	@echo '/* Do not edit this file, make creates it. */' > $@.tmp
 	@echo '#ifndef _h_tc_const' >> $@.tmp
 	@echo '#define _h_tc_const' >> $@.tmp
-	${CPP} $(CPPFLAGS) ${DFLAGS} ${EXTRAFLAGS} -D_h_tc_const\
+	${CPP} $(CFLAGS) $(CPPFLAGS) ${DFLAGS} ${EXTRAFLAGS} -D_h_tc_const\
 	    $(srcdir)/tc.const.c | \
 	    sed -n -e 's/^\(Char STR[a-zA-Z0-9_]*\) *\[ *\].*/extern \1[];/p' | \
 	    LC_COLLATE=C sort >> $@.tmp
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/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