X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/3382cd59427d1d87d2d2500fd94462d102eab750..fe185b94aba626a61d8d28eab3d202873fada051:/config.bat diff --git a/config.bat b/config.bat index 4f8767975b..446060c186 100644 --- a/config.bat +++ b/config.bat @@ -1,6 +1,8 @@ @echo off rem ---------------------------------------------------------------------- rem Configuration script for MSDOS +rem Copyright (C) 1994 Free Software Foundation, Inc. + rem This file is part of GNU Emacs. rem GNU Emacs is free software; you can redistribute it and/or modify @@ -19,25 +21,74 @@ rem the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. rem ---------------------------------------------------------------------- rem YOU'LL NEED THE FOLLOWING UTILITIES TO MAKE EMACS: rem -rem + djgpp. -rem + make utility that allows breaking of 128 chars limit of commands. -rem ndmake (as of version 4.5) won't work due to a line length limit. +rem + msdos version 3 or better. +rem + djgpp version 1,11 maint 4 or better. +rem + make utility that allows breaking of the 128 chars limit on +rem command lines. ndmake (as of version 4.5) won't work due to a +rem line length limit. rem + rm, mv, chmod (From GNU file utilities). rem + sed. -rem + patch (Larry Wall's for instance. I think it's supplied with djgpp). +rem +rem You should be able to get all the above utilities from all +rem Simtel repositories, e.g., oak.oakland.edu in the directories +rem "/pub/msdos/djgpp" and "/pub/msdos/gnuish". As usual, please +rem use your local mirroring site to reduce trans-Atlantic traffic. rem ---------------------------------------------------------------------- -if not "%2" == "" goto usage +set X11= +set nodebug= +:again +if "%1" == "" goto usage +if "%1" == "--with-x" goto withx +if "%1" == "--no-debug" goto nodebug if "%1" == "msdos" goto msdos :usage -echo Usage: config msdos -echo [Read the script before you run it; also check that you have all the -echo necessary utilities.] +echo Usage: config [--with-x] [--no-debug] msdos +echo [Read the script before you run it.] goto end rem ---------------------------------------------------------------------- -:msdos -rem Change to the Emacs root -cd c:\emacs +:withx +set X11=Y +shift +goto again rem ---------------------------------------------------------------------- +:nodebug +set nodebug=Y +shift +goto again +rem ---------------------------------------------------------------------- +:msdos +Echo Checking whether `sed' is available... +Sed -e "w junk.$$$" junk.1 +mv junk.1 junk.2 +If Exist junk.2 Goto mvOk +Echo To configure `Emacs' you need to have `mv'! +rm -f junk.1 +Goto End +:mvOk +rm -f junk.2 +Echo Checking whether `gcc' is available... +echo main(){} >junk.c +gcc -c junk.c +if exist junk.o goto gccOk +Echo To configure `Emacs' you need to have `gcc'! +rm -f junk.c +Goto End +:gccOk +rm -f junk.c junk.o +Rem ---------------------------------------------------------------------- Echo Configuring the source directory... cd src set PATHSH=paths-h.in @@ -66,36 +117,78 @@ goto end :src3 rem Create "paths.h" -rm -f paths.h -sed -e "s!/lib/emacs!!" -e "s!/usr/local!c:/emacs!" -e "s!/data!/etc!" <%PATHSH% >paths.h +sed -f ../msdos/sed4.inp <%PATHSH% >paths.tmp +update paths.tmp paths.h >nul +rm -f paths.tmp rem Create "config.h" -rm -f config.h -sed -f ../msdos/sed2.inp <%CONFIGH% >config.h +rm -f config.h2 config.tmp +cp %CONFIGH% config.tmp +if "%X11%" == "" goto src4 +sed -f ../msdos/sed2x.inp <%CONFIGH% >config.tmp +:src4 +sed -f ../msdos/sed2.inp config.h2 +update config.h2 config.h >nul +rm -f config.tmp config.h2 rem On my system dir.h gets in the way. It's a VMS file so who cares. if exist dir.h ren dir.h vmsdir.h -rem Create "makefile" from "makefile.in.in" using a context patch. -rm -f makefile -cp %MAKEFILEIN% makefile -patch -p1 -B ! -r patch.rjt makefile ../msdos/patch1 -echo All hunks above should have passed! If they didn't, you'll have to -echo update manually. That should be easy though. -mv makefile junk.c +rem Create "makefile" from "makefile.in.in". +rm -f makefile junk.c +sed -e "1,/cpp stuff/s@^# .*$@@" <%MAKEFILEIN% >junk.c gcc -E junk.c | sed -f ../msdos/sed1.inp >makefile -del !makefile -del junk.c +rm -f junk.c +if "%X11%" == "" goto src5 +mv makefile makefile.tmp +sed -f ../msdos/sed1x.inp makefile +rm -f makefile.tmp +:src5 + +if "%nodebug%" == "" goto src6 +sed -e "/^CFLAGS *=/s/ *-g//" makefile.tmp +mv -f makefile.tmp makefile +:src6 cd .. rem ---------------------------------------------------------------------- Echo Configuring the library source directory... cd lib-src +set MAKEFILEIN=makefile.in-in +if exist %MAKEFILEIN% goto libsrc1 +set MAKEFILEIN=makefile-in.in +if exist %MAKEFILEIN% goto libsrc1 +echo makefile: *** The file originally called "lib-src/Makefile.in.in" cannot be found. +cd .. +goto end +:libsrc1 rem Create "makefile" from "makefile.in". -copy makefile makefile.bak >nul -sed -f ../msdos/sed3.inp makefile +sed -e "1,/cpp stuff/s@^# .*$@@" <%MAKEFILEIN% >junk.c +gcc -E -I. -I../src junk.c | sed -e "s/^ / /" -e "/^#/d" -e "/^[ ]*$/d" >Makefile.new +sed -f ../msdos/sed3.inp makefile +rm -f makefile.new junk.c +if "%nodebug%" == "" goto libsrc2 +sed -e "/^CFLAGS *=/s/ *-g//" makefile.tmp +mv -f makefile.tmp makefile +:libsrc2 +cd .. +rem ---------------------------------------------------------------------- +if "%X11%" == "" goto oldx1 +Echo Configuring the oldxmenu directory... +cd oldxmenu +sed -f ../msdos/sed5x.inp makefile +if "%nodebug%" == "" goto oldx2 +sed -e "/^CFLAGS *=/s/ *-g//" makefile.tmp +mv -f makefile.tmp makefile +:oldx2 cd .. +:oldx1 rem ---------------------------------------------------------------------- Echo Configuring the main directory... copy msdos\mainmake makefile >nul rem ---------------------------------------------------------------------- :end +set X11= +set nodebug= +set MAKEFILEIN= +set PATHSH= +set CONFIGH=