changeset 11401:306b976d73bf

Initial revision
author Karl Heuer <kwzh@gnu.org>
date Wed, 12 Apr 1995 04:48:18 +0000
parents 110427887843
children 66d935214d8e
files nt/_emacs nt/ebuild.bat nt/emacs.bat nt/fast-install.bat nt/inc/pwd.h nt/inc/sys/dir.h nt/inc/sys/file.h nt/inc/sys/ioctl.h nt/inc/sys/param.h nt/install.bat nt/makefile.def nt/makefile.nt nt/paths.h
diffstat 13 files changed, 286 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nt/_emacs	Wed Apr 12 04:48:18 1995 +0000
@@ -0,0 +1,3 @@
+;;; This is the user emacs startup file (.emacs in Unix land).
+
+(put 'eval-expression 'disabled nil)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nt/ebuild.bat	Wed Apr 12 04:48:18 1995 +0000
@@ -0,0 +1,1 @@
+nmake -f makefile.nt all
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nt/emacs.bat	Wed Apr 12 04:48:18 1995 +0000
@@ -0,0 +1,18 @@
+
+set emacs_path=\emacs
+
+@echo off
+
+set EMACSLOADPATH=%emacs_path%\lisp
+set SHELL=cmd
+set EMACSDATA=%emacs_path%\etc
+set EMACSPATH=%emacs_path%\bin
+set EMACSLOCKDIR=%emacs_path%\lock
+set INFOPATH=%emacs_path%\info
+set EMACSDOC=%emacs_path%\etc
+set TERM=CMD
+
+rem To find the ~\_emacs file
+set HOME=%emacs_path%\nt
+
+%emacs_path%\bin\emacs.exe %1 %2 %3 %4 %5 %6 %7 %8 %9
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nt/fast-install.bat	Wed Apr 12 04:48:18 1995 +0000
@@ -0,0 +1,1 @@
+nmake -f makefile.nt fast_install
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nt/inc/pwd.h	Wed Apr 12 04:48:18 1995 +0000
@@ -0,0 +1,18 @@
+#ifndef _PWD_H_
+#define _PWD_H_
+/*
+ * pwd.h doesn't exist on NT, so we put together our own.
+ */
+
+struct passwd {
+    char *pw_name;
+    char *pw_passwd;
+    int   pw_uid;
+    int   pw_gid;
+    int   pw_quota;
+    char *pw_gecos;
+    char *pw_dir;
+    char *pw_shell;
+};
+
+#endif /* _PWD_H_ */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nt/inc/sys/dir.h	Wed Apr 12 04:48:18 1995 +0000
@@ -0,0 +1,5 @@
+/*
+ * map sys\dir.h to ..\..\..\src\ndir.h
+ */
+
+#include "..\..\..\src\ndir.h"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nt/inc/sys/file.h	Wed Apr 12 04:48:18 1995 +0000
@@ -0,0 +1,5 @@
+/*
+ * sys\file.h doesn't exist on NT...rather than including it conditionally
+ * in some of the source files, we just extend the include path so that the
+ * compiler will pick up this empty header instead.
+ */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nt/inc/sys/ioctl.h	Wed Apr 12 04:48:18 1995 +0000
@@ -0,0 +1,5 @@
+/*
+ * sys\ioctl.h doesn't exist on NT...rather than including it conditionally
+ * in many of the source files, we just extend the include path so that the
+ * compiler will pick this up empty header instead.
+ */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nt/inc/sys/param.h	Wed Apr 12 04:48:18 1995 +0000
@@ -0,0 +1,10 @@
+#ifndef _PARAM_H_
+#define _PARAM_H_
+
+/*
+ * sys\param.h doesn't exist on NT, so we'll make one.
+ */
+
+#define NBPG 4096
+
+#endif /* _PARAM_H_ */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nt/install.bat	Wed Apr 12 04:48:18 1995 +0000
@@ -0,0 +1,1 @@
+nmake -f makefile.nt install
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nt/makefile.def	Wed Apr 12 04:48:18 1995 +0000
@@ -0,0 +1,90 @@
+#
+#  Makefile definition file for building GNU Emacs on Windows NT
+#  
+#  GNU Emacs is free software; you can redistribute it and/or modify
+#  it under the terms of the GNU General Public License as published by
+#  the Free Software Foundation; either version 2, or (at your option)
+#  any later version.
+#  
+#  GNU Emacs is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#  GNU General Public License for more details.
+#  
+#  You should have received a copy of the GNU General Public License
+#  along with GNU Emacs; see the file COPYING.  If not, write to
+#  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+#
+#     Geoff Voelker (voelker@cs.washington.edu)         9-6-94
+
+#
+# BEGIN CONFIGURATION
+#
+
+#
+# Set ARCH to the architecture on which you're building (i386, mips, alpha).
+# Set SYS_INC_DIR and SYS_LIB_DIR to your system include and library dirs.
+#
+
+ARCH            = mips
+SYS_INC_DIR     = C:\mstools\h
+SYS_LIB_DIR     = C:\mstools\lib
+
+# Set this to be the directory into which you want emacs installed
+INSTALL_DIR	= C:\emacs
+
+# May need to be cl386.exe when using the SDK on an x86.
+CC              = cl.exe
+
+# May need to be lib32.exe on NT 3.1, lib.exe on NT 3.5
+AR              = lib32.exe
+
+MAKE            = nmake.exe
+LINK            = link32.exe
+
+# If you are using VC 2.0, define COMPAT_LIB (only tested on i386)
+#COMPAT_LIB	= $(SYS_LIB_DIR)\oldnames.lib
+
+#
+# END CONFIGURATION
+#
+# You shouldn't have to change any of the below to get emacs to build and
+# install on your system.  If you did have to make changes, let me know.
+#
+
+INC             = -I. -I$(SYS_INC_DIR) -I$(SYS_INC_DIR)\crt
+CFLAGS          = -nologo $(INC) $(ARCH_CFLAGS) $(LOCAL_FLAGS) -DWIN32_LEAN_AND_MEAN -D$(ARCH)
+
+OBJDIR          = obj
+$(OBJDIR):;     -mkdir $(OBJDIR)
+BLD             = $(OBJDIR)\$(ARCH)
+$(BLD):         $(OBJDIR)
+		-mkdir $(BLD)
+
+CP		= copy
+CP_DIR		= xcopy /fried
+
+# This is completely braindamaged, but it's the only routine known to be there
+DEL_TREE	= echo y | rmdir /s
+
+!IF "$(ARCH)" == "i386"
+ARCH_CFLAGS     = -nologo -D_X86_=1 -c -Zel -W2 -H63 -G3d -Zi -Od
+ARCH_LDFLAGS	= -align:0x1000
+
+!ELSE
+!IF "$(ARCH)" == "mips"
+CC              = mcl.exe
+ARCH_CFLAGS     = -D_MIPS_=1 -c -W2 -Zi -Od -Gt0 -D__stdcall= -D__cdecl=
+ARCH_LDFLAGS	= -align:0x1000
+
+!ELSE
+!IF "$(ARCH)" == "alpha"
+CC              = claxp.exe
+ARCH_CFLAGS     = -D_ALPHA_=1 -c -Ze -Zi -W2 -D__stdcall= -D__cdecl=
+ARCH_LDFLAGS	= -align:0x2000
+
+!ELSE
+!ERROR Unknown architecture type.
+!ENDIF
+!ENDIF
+!ENDIF
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nt/makefile.nt	Wed Apr 12 04:48:18 1995 +0000
@@ -0,0 +1,83 @@
+#
+#  Top level makefile for building GNU Emacs on Windows NT
+#
+#  This file is part of GNU Emacs.
+#  
+#  GNU Emacs is free software; you can redistribute it and/or modify
+#  it under the terms of the GNU General Public License as published by
+#  the Free Software Foundation; either version 2, or (at your option)
+#  any later version.
+#  
+#  GNU Emacs is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#  GNU General Public License for more details.
+#  
+#  You should have received a copy of the GNU General Public License
+#  along with GNU Emacs; see the file COPYING.  If not, write to
+#  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+#
+#   Geoff Voelker (voelker@cs.washington.edu)	11-20-93
+#						  9-6-94
+!include makefile.def
+
+SUBDIRS	      = lib-src src lisp
+
+#
+# Build emacs
+#
+all:;		for %%f in ( $(SUBDIRS) ) do cd ..\%%f & $(MAKE) -f makefile.nt all
+
+#
+# Build and install emacs in INSTALL_DIR
+#
+install:	all
+		- mkdir $(INSTALL_DIR)
+		for %%f in ( $(SUBDIRS) ) do cd ..\%%f & $(MAKE) -f makefile.nt install
+		- $(CP) emacs.bat $(INSTALL_DIR)\bin
+		- del /q ..\same-dir.tst
+		- del /q $(INSTALL_DIR)\same-dir.tst
+		echo SameDirTest > ..\same-dir.tst
+		if not exist $(INSTALL_DIR)\same-dir.tst $(MAKE) -f makefile.nt real_install
+		- del /q ..\same-dir.tst
+		- del /q $(INSTALL_DIR)\same-dir.tst
+
+#
+# This installs executables from ..\bin into the installation directory
+# without building anything.
+#
+fast_install:
+		- mkdir $(INSTALL_DIR)\data
+		$(CP) ..\lib-src\DOC $(INSTALL_DIR)\etc
+		- mkdir $(INSTALL_DIR)\bin
+		- $(CP) emacs.bat $(INSTALL_DIR)\bin
+		- del /q ..\same-dir.tst
+		- del /q $(INSTALL_DIR)\same-dir.tst
+		echo SameDirTest > ..\same-dir.tst
+		if not exist $(INSTALL_DIR)\same-dir.tst $(CP) ..\bin\emacs.exe $(INSTALL_DIR)\bin
+		if not exist $(INSTALL_DIR)\same-dir.tst $(CP) ..\bin\etags.exe $(INSTALL_DIR)\bin
+		if not exist $(INSTALL_DIR)\same-dir.tst $(CP) ..\bin\ctags.exe $(INSTALL_DIR)\bin
+		if not exist $(INSTALL_DIR)\same-dir.tst nmake -f $(MAKE) real_install
+		- del /q ..\same-dir.tst
+		- del /q $(INSTALL_DIR)\same-dir.tst
+
+real_install:
+		- del /q ..\same-dir.tst
+		- del /q $(INSTALL_DIR)\same-dir.tst
+		echo SameDirTest > ..\same-dir.tst
+		- mkdir $(INSTALL_DIR)\etc
+		- mkdir $(INSTALL_DIR)\info
+		- mkdir $(INSTALL_DIR)\lock
+		- mkdir $(INSTALL_DIR)\data
+		if not exist $(INSTALL_DIR)\nt\same-dir.tst $(CP_DIR) ..\etc $(INSTALL_DIR)\etc
+		if not exist $(INSTALL_DIR)\nt\same-dir.tst $(CP_DIR) ..\info $(INSTALL_DIR)\info
+		- del /q ..\same-dir.tst
+		- del /q $(INSTALL_DIR)\same-dir.tst
+
+#
+# Maintenance
+# 
+clean:;		- del /q /s *~
+		- $(DEL_TREE) deleted
+		- $(DEL_TREE) ..\bin
+		for %%f in ( $(SUBDIRS) ) do cd ..\%%f & $(MAKE) -f makefile.nt clean
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nt/paths.h	Wed Apr 12 04:48:18 1995 +0000
@@ -0,0 +1,46 @@
+/* Hey Emacs, this is -*- C -*- code!  */
+
+/* Backslashify the default paths for NT */
+
+/* The default search path for Lisp function "load".
+   This sets load-path.  */
+/* #define PATH_LOADSEARCH "/usr/local/lib/emacs/lisp" */
+#define PATH_LOADSEARCH "C:\\emacs\\lisp"
+
+/* Like PATH_LOADSEARCH, but used only when Emacs is dumping.  This
+   path is usually identical to PATH_LOADSEARCH except that the entry
+   for the directory containing the installed lisp files has been
+   replaced with ../lisp.  */
+/* #define PATH_DUMPLOADSEARCH "../lisp" */
+#define PATH_DUMPLOADSEARCH "..\\..\\..\\lisp"
+
+/* The extra search path for programs to invoke.  This is appended to
+   whatever the PATH environment variable says to set the Lisp
+   variable exec-path and the first file name in it sets the Lisp
+   variable exec-directory.  exec-directory is used for finding
+   executables and other architecture-dependent files.  */
+/* #define PATH_EXEC "/usr/local/lib/emacs/etc" */
+#define PATH_EXEC "C:\\emacs\\bin"
+
+/* Where Emacs should look for its architecture-independent data
+   files, like the NEWS file.  The lisp variable data-directory
+   is set to this value.  */
+/* #define PATH_DATA "/usr/local/lib/emacs/data" */
+#define PATH_DATA "C:\\emacs\\data"
+
+/* Where Emacs should look for its docstring file.  The lisp variable
+   doc-directory is set to this value.  */
+#define PATH_DOC "C:\\emacs\\etc"
+
+/* The name of the directory that contains lock files with which we
+   record what files are being modified in Emacs.  This directory
+   should be writable by everyone.  THE STRING MUST END WITH A
+   SLASH!!!  */
+/* #define PATH_LOCK "/usr/local/lib/emacs/lock/" */
+#define PATH_LOCK "C:\\emacs\\lock\\"
+
+/* Where the configuration process believes the info tree lives.  The
+   lisp variable configure-info-directory gets its value from this
+   macro, and is then used to set the Info-default-directory-list.  */
+/* #define PATH_INFO "/usr/local/info" */
+#define PATH_INFO "C:\\emacs\\info"