Blame makelynx.bat

Packit f574b8
@echo off
Packit f574b8
@rem $LynxId: makelynx.bat,v 1.16 2011/06/04 00:59:22 tom Exp $
Packit f574b8
@echo Windows/Dos batch makefile for MingW32 and lynx.exe
Packit f574b8
@echo Remember to precede this by "command /E:8192" for Windows prior to
Packit f574b8
@echo W2000 and "cmd.exe /E:8192" for subsequent Window versions and to
Packit f574b8
@echo set the MingW32 C_INCLUDE_PATH and %C_INCLUDE_PATH%..\..\bin paths
Packit f574b8
@echo.
Packit f574b8
@echo Usage: makelynx [option]
Packit f574b8
@echo Default option: all
Packit f574b8
@echo Specifying "src" causes the libwww code to be skipped.
Packit f574b8
@echo Specifying "link" causes the batch file to skip to the final
Packit f574b8
@echo linking phase.
Packit f574b8
@echo.
Packit f574b8
@echo Note that you have to edit early versions of i386-mingw32\include\stdlib.h
Packit f574b8
@echo to put an "#ifndef WIN_EX" around the declaration for `sleep', or the
Packit f574b8
@echo compile won't work.  There is also an "#ifndef PDCURSES" around
Packit f574b8
@echo the declaration for `beep' for the same reason.
Packit f574b8
@echo.
Packit f574b8
@echo To change the console library from libpdcurses to libslang,
Packit f574b8
@echo put a "rem" before the `SET LIBRARY' line below.
Packit f574b8
@echo.
Packit f574b8
@echo If you don't have libz.a, either compile it
Packit f574b8
@echo or put a "rem" in front of the following USE_ZLIB line.
Packit f574b8
@echo This will cause the gzip.exe version of lynx
Packit f574b8
@echo to be compiled.  It doesn't work well at present:
Packit f574b8

Packit f574b8
SET LIBRARY=PDCURSES
Packit f574b8
SET USE_ZLIB=YES
Packit f574b8

Packit f574b8
rem Uncomment these lines if the slang/curses headers and libraries
Packit f574b8
rem are in the top-level lib directory:
Packit f574b8
rem set C_INCLUDE_PATH=..\lib;..\..\..\lib;%C_INCLUDE_PATH%
Packit f574b8
rem set LIBRARY_PATH=..\lib;..\..\..\lib;%LIBRARY_PATH%
Packit f574b8

Packit f574b8
echo Your compiler may not support -march=pentiumpro.
Packit f574b8
echo In that case, replace -march=pentiumpro with -mpentium or -m486 or nothing:
Packit f574b8

Packit f574b8
if "%OS%" == "Windows_NT" goto then0
Packit f574b8
rem command.com doesn't handle the 'a=b' option
Packit f574b8
set CC=gcc -mpentium
Packit f574b8
goto else0
Packit f574b8
:then0
Packit f574b8
rem assumes a cmd.exe, rather than command.com, environment
Packit f574b8
set CC=gcc -march=pentiumpro -mthreads
Packit f574b8
:else0
Packit f574b8

Packit f574b8

Packit f574b8
rem These definitions come from the Microsoft.msc makefile, with some
Packit f574b8
rem modification.  Note that -Dx=y didn't work in older versions
Packit f574b8
rem of Windows batch files, only -Dx, so a lynx_cfg.h was needed as
Packit f574b8
rem a workaround.
Packit f574b8
echo /* Generated lynx_cfg.h file in the lynx directory: */ > lynx_cfg.h
Packit f574b8
echo. >> lynx_cfg.h
Packit f574b8
echo. >> lynx_cfg.h
Packit f574b8
echo #define ANSI_VARARGS	 1 >> lynx_cfg.h
Packit f574b8
echo #define BOXHORI             0 >> lynx_cfg.h
Packit f574b8
echo #define BOXVERT             0 >> lynx_cfg.h
Packit f574b8
echo #define CAN_PIPE_TO_MAILER  0 >> lynx_cfg.h
Packit f574b8
echo #define HAVE_GETCWD	 1 >> lynx_cfg.h
Packit f574b8
echo #define HAVE_STRERROR	 1 >> lynx_cfg.h
Packit f574b8
echo #define LYNX_CFG_FILE "./lynx.cfg" >> lynx_cfg.h
Packit f574b8
echo #define LY_MAXPATH       1024 >> lynx_cfg.h
Packit f574b8
echo #define USE_BLAT_MAILER	 1 >> lynx_cfg.h
Packit f574b8
echo #define VC			2.14FM  >> lynx_cfg.h
Packit f574b8
echo #define _WIN_CC		 1 >> lynx_cfg.h
Packit f574b8
rem echo #define USE_SCROLLBAR	 1 >> lynx_cfg.h
Packit f574b8

Packit f574b8
SET DEFINES=-DCJK_EX
Packit f574b8
SET DEFINES=%DEFINES% -DUSE_ALT_BINDINGS
Packit f574b8
SET DEFINES=%DEFINES% -DEXP_NESTED_TABLES
Packit f574b8
SET DEFINES=%DEFINES% -DUSE_JUSTIFY_ELTS
Packit f574b8
SET DEFINES=%DEFINES% -DUSE_PERSISTENT_COOKIES
Packit f574b8
SET DEFINES=%DEFINES% -DUSE_READPROGRESS
Packit f574b8
if not "%OS%" == "Windows_NT" goto next11
Packit f574b8
SET DEFINES=%DEFINES% -DLY_MAXPATH=1024
Packit f574b8
rem The following is unnecessary and causes the
Packit f574b8
rem compile to fail:
Packit f574b8
rem SET DEFINES=%DEFINES% -DUSE_WINSOCK2_H
Packit f574b8
:next11
Packit f574b8
SET DEFINES=%DEFINES% -DACCESS_AUTH
Packit f574b8
SET DEFINES=%DEFINES% -DDIRED_SUPPORT
Packit f574b8
SET DEFINES=%DEFINES% -DDISP_PARTIAL
Packit f574b8
SET DEFINES=%DEFINES% -DDOSPATH
Packit f574b8
SET DEFINES=%DEFINES% -DHAVE_DIRENT_H
Packit f574b8
SET DEFINES=%DEFINES% -DHAVE_KEYPAD
Packit f574b8
SET DEFINES=%DEFINES% -DLONG_LIST
Packit f574b8
SET DEFINES=%DEFINES% -DNOSIGHUP
Packit f574b8
SET DEFINES=%DEFINES% -DNOUSERS
Packit f574b8
SET DEFINES=%DEFINES% -DNO_CONFIG_INFO
Packit f574b8
SET DEFINES=%DEFINES% -DNO_CUSERID
Packit f574b8
SET DEFINES=%DEFINES% -DNO_FILIO_H
Packit f574b8
SET DEFINES=%DEFINES% -DNO_TTYTYPE
Packit f574b8
SET DEFINES=%DEFINES% -DNO_UNISTD_H
Packit f574b8
SET DEFINES=%DEFINES% -DNO_UTMP
Packit f574b8
SET DEFINES=%DEFINES% -DSH_EX
Packit f574b8
SET DEFINES=%DEFINES% -DUSE_EXTERNALS
Packit f574b8
SET DEFINES=%DEFINES% -DUSE_PRETTYSRC
Packit f574b8
SET DEFINES=%DEFINES% -DUSE_SOURCE_CACHE
Packit f574b8
SET DEFINES=%DEFINES% -DWIN32
Packit f574b8
SET DEFINES=%DEFINES% -DWIN_EX
Packit f574b8
SET DEFINES=%DEFINES% -D_WINDOWS
Packit f574b8
if not "%USE_ZLIB%" == "YES" goto next1
Packit f574b8
SET DEFINES=%DEFINES% -DUSE_ZLIB
Packit f574b8
:next1
Packit f574b8
if "%LIBRARY%" == "PDCURSES" goto else1
Packit f574b8
SET DEFINES=%DEFINES% -DUSE_SLANG
Packit f574b8
goto endif1
Packit f574b8
:else1
Packit f574b8
SET DEFINES=%DEFINES% -DFANCY_CURSES
Packit f574b8
SET DEFINES=%DEFINES% -DCOLOR_CURSES
Packit f574b8
SET DEFINES=%DEFINES% -DPDCURSES
Packit f574b8
SET DEFINES=%DEFINES% -DUSE_MULTIBYTE_CURSES
Packit f574b8
:endif1
Packit f574b8

Packit f574b8
if not "%1" == "src" goto else
Packit f574b8
	cd src
Packit f574b8
	goto src
Packit f574b8
:else
Packit f574b8
if not "%1" == "link" goto endif
Packit f574b8
	cd src
Packit f574b8
	goto link
Packit f574b8
:endif
Packit f574b8

Packit f574b8
SET INCLUDES=-I. -I..\..\.. -I..\..\..\src
Packit f574b8

Packit f574b8
set CFLAGS=-O3 %INCLUDES% %DEFINES%
Packit f574b8
set COMPILE_CMD=%CC% -c %CFLAGS%
Packit f574b8

Packit f574b8
cd WWW\Library\Implementation
Packit f574b8
erase *.o
Packit f574b8

Packit f574b8
%COMPILE_CMD% HTAABrow.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTAAProt.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTAAUtil.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTAccess.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTAnchor.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTAssoc.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTAtom.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTBTree.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTChunk.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTDOS.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTFile.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTFinger.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTFormat.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTFTP.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTFWriter.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTGopher.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTGroup.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8

Packit f574b8
%COMPILE_CMD% HTLex.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTList.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTMIME.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTMLDTD.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTMLGen.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTNews.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTParse.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTPlain.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTRules.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTString.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8

Packit f574b8
%COMPILE_CMD% HTStyle.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTTCP.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTTelnet.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTTP.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTUU.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTWSRC.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% SGML.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8

Packit f574b8
ar crv libwww.a *.o
Packit f574b8

Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8

Packit f574b8
cd ..\..\..\src\chrtrans
Packit f574b8
erase *.o
Packit f574b8

Packit f574b8
SET INCLUDES=-I. -I.. -I..\.. -I..\..\WWW\Library\Implementation
Packit f574b8
SET CFLAGS=-O3 %INCLUDES% %DEFINES%
Packit f574b8
SET COMPILE_CMD=%CC% -c %CFLAGS%
Packit f574b8

Packit f574b8
%COMPILE_CMD% makeuctb.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%CC% -o makeuctb.exe makeuctb.o
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8

Packit f574b8
call makew32.bat
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
cd ..\
Packit f574b8

Packit f574b8
:src
Packit f574b8
SET INCLUDES=-I. -I.. -I.\chrtrans -I..\WWW\Library\Implementation
Packit f574b8
SET CFLAGS=-O3 %INCLUDES% %DEFINES%
Packit f574b8
SET COMPILE_CMD=%CC% -c %CFLAGS%
Packit f574b8
SET PATH=..\WWW\Library\Implementation;%PATH%
Packit f574b8
erase *.o
Packit f574b8

Packit f574b8
%COMPILE_CMD% DefaultStyle.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% GridText.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
if not exist TRSTable.c goto notrstable
Packit f574b8
%COMPILE_CMD% TRSTable.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
:notrstable
Packit f574b8
if not exist Xsystem.c goto noxsystem
Packit f574b8
%COMPILE_CMD% Xsystem.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
:noxsystem
Packit f574b8
%COMPILE_CMD% HTAlert.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTFWriter.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTInit.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% HTML.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYBookmark.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYCgi.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYCharSets.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYCharUtils.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYClean.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYCookie.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYCurses.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYDownload.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8

Packit f574b8
%COMPILE_CMD% LYEdit.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYEditmap.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYexit.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYExtern.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYForms.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYGetFile.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYHash.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYHistory.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYJump.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYKeymap.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYLeaks.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYList.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYLocal.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYMail.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYMain.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD%  LYMainLoop.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8

Packit f574b8
%COMPILE_CMD% LYMap.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYNews.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYOptions.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYPrettySrc.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYPrint.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYrcFile.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYReadCFG.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYSearch.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYSession.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYShowInfo.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYStrings.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYStyle.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYTraversal.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYUpload.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% LYUtils.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% UCAuto.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% UCAux.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8
%COMPILE_CMD% UCdomap.c
Packit f574b8
if errorlevel 1 PAUSE
Packit f574b8

Packit f574b8
:link
Packit f574b8
if not "%LIBRARY%" == "PDCURSES" goto else2
Packit f574b8
SET LIBS=-L..\WWW\Library\Implementation -lwww -lpdcurses
Packit f574b8
goto endif2
Packit f574b8
:else2
Packit f574b8
SET LIBS=-L..\WWW\Library\Implementation -lwww -lslang
Packit f574b8
:endif2
Packit f574b8

Packit f574b8
SET LIBS=%LIBS% -lwsock32 -luser32
Packit f574b8

Packit f574b8
if not "%USE_ZLIB%" == "YES" goto else4
Packit f574b8
SET LIBS=%LIBS% -lz
Packit f574b8
:else4
Packit f574b8

Packit f574b8
%CC% -s -o lynx *.o %LIBS%
Packit f574b8
if exist lynx.exe ECHO "Welcome to lynx!"