[svn] Cleanup Windows Makefiles and README.

Submitted by David Fritz.
This commit is contained in:
hniksic 2004-02-12 10:09:10 -08:00
parent a4b95084e8
commit 2bebfdb844
6 changed files with 138 additions and 102 deletions

View File

@ -1,3 +1,27 @@
2004-02-09 David Fritz <zeroxdf@att.net>
* configure.bat.in: Don't clear the screen.
* windows/README: Add introductory paragraph. Re-word a few
sentences. Correct minor typographical errors. Use consistent
capitalization of Wget, SSL, and OpenSSL. Refer to Microsoft
Visual C++ as MSVC instead of VC++. Mention the --msvc option to
configure.bat. Reflow paragraphs.
* windows/Makefile.top: Use tabs instead of spaces. Ignore errors
in clean rules. Use lowercase filenames when building distribution
.zip archive.
* windows/Makefile.doc: Use tabs instead of spaces. Ignore errors
in clean rules.
* windows/Makefile.src: Clean-up clean rules. Use tabs instead of
spaces. Link against gdi32.lib. Don't define SYSTEM_WGETRC.
Remove unused macros. Remove anachronistic and superfluous linker
flags. Don't rename wget.exe to all upper-case. Add
`preprocessor' conditionals for SSL and newer MSVC options. Use
batch rules. Don't suppress all warnings.
2003-11-26 Hrvoje Niksic <hniksic@xemacs.org>
* aclocal.m4: Don't check for AI_V4MAPPED and for AI_ALL, since

View File

@ -26,7 +26,6 @@ rem modify this file, you may extend this exception to your version of the
rem file, but you are not obligated to do so. If you do not wish to do
rem so, delete this exception statement from your version.
cls
if .%1 == .--borland goto :borland
if .%1 == .--mingw goto :mingw
if .%1 == .--msvc goto :msvc

View File

@ -28,22 +28,22 @@
# You probably need makeinfo and perl, see the README in the main
# windows directory.
RM = del
CP = copy
ATTRIB = attrib
RM = -del
CP = copy
ATTRIB = attrib
MAKEINFO = makeinfo.exe
TEXI2POD = texi2pod.pl
POD2MAN = pod2man
MAKEINFO = makeinfo.exe
TEXI2POD = texi2pod.pl
POD2MAN = pod2man
SAMPLERCTEXI = sample.wgetrc.munged_for_texi_inclusion
WGETHLP = wget.hlp
WGETINFO = wget.info
WGETTEXI = wget.texi
WGETHTML = wget.html
WGETPOD = wget.pod
manext = 1
MAN = wget.$(manext)
SAMPLERCTEXI = sample.wgetrc.munged_for_texi_inclusion
WGETHLP = wget.hlp
WGETINFO = wget.info
WGETTEXI = wget.texi
WGETHTML = wget.html
WGETPOD = wget.pod
manext = 1
MAN = wget.$(manext)
all: $(WGETHLP) $(WGETINFO) $(WGETHTML)
@ -76,10 +76,10 @@ $(WGETHLP): $(WGETTEXI) $(SAMPLERCTEXI)
hcrtf -xn wget.hpj
clean:
$(RM) *.bak
$(RM) *.hpj
$(RM) *.rtf
$(RM) *.ph
$(RM) *.bak
$(RM) *.hpj
$(RM) *.rtf
$(RM) *.ph
$(RM) $(SAMPLERCTEXI)
$(RM) $(MAN)
$(RM) $(TEXI2POD)

View File

@ -1,4 +1,4 @@
# Makefile for `wget' utility for MSVC 4.0
# Makefile for `wget' utility for MSVC
# Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
@ -25,43 +25,48 @@
# file, but you are not obligated to do so. If you do not wish to do
# so, delete this exception statement from your version.
#
# Version: 1.4.4
#
#Comment these if you don't have openssl available - however https
#won't work.
SSLDEFS = /DHAVE_SSL
SSLLIBS = libeay32.lib ssleay32.lib
SSLSRC = gen_sslfunc.c
SSLOBJ = gen_sslfunc$o
# SSL (https) support requires the OpenSSL library (see http://www.openssl.org/).
# If you do not have OpenSSL installed or wish to build Wget without SSL
# support, either comment-out the following lines or define NO_SSL.
!ifndef NO_SSL
SSLDEFS = /DHAVE_SSL
SSLLIBS = libeay32.lib ssleay32.lib
SSLSRC = gen_sslfunc.c
SSLOBJ = gen_sslfunc$o
!endif
SHELL = command
o = .obj
VPATH = .
o = .obj
OUTDIR = .
CC = cl
LD = link
RM = -del
CC = cl
LD = link
DEFS = /DWINDOWS /D_CONSOLE /DHAVE_CONFIG_H $(SSLDEFS)
LIBS = kernel32.lib advapi32.lib wsock32.lib user32.lib gdi32.lib $(SSLLIBS)
CFLAGS = /nologo /MT /W0 /O2
#DEBUGCF = /DENABLE_DEBUG /Zi /Od #/Fd /FR
CPPFLAGS =
DEFS = /DWINDOWS /D_CONSOLE /DHAVE_CONFIG_H /DSYSTEM_WGETRC=\"wgetrc\"
LDFLAGS = /subsystem:console /incremental:no /warn:3
#DEBUGLF = /pdb:wget.pdb /debug /debugtype:cv /map:wget.map /opt:noref
LIBS = kernel32.lib advapi32.lib wsock32.lib user32.lib
!ifdef DEBUG
CFLAGS = /nologo /MTd /Od /Zi /I. $(DEFS)
LDFLAGS = /debug
!else
CFLAGS = /nologo /MT /O2 /I. $(DEFS)
LDFLAGS = /opt:ref #/opt:nowin98
!endif
INCLUDES = /I.
COMPILE = $(CC) $(INCLUDES) $(CPPFLAGS) $(DEBUGCF) $(DEFS) $(SSLDEFS) $(CFLAGS)
LINK = $(LD) $(LDFLAGS) $(DEBUGLF) /out:$@
# The following enables security checks and is recommended if you are using
# MSVC 7.0 (or later) for 80x86.
!ifdef SECURITY_CHECKS
CFLAGS = $(CFLAGS) /GS
!endif
#INSTALL = @INSTALL@
#INSTALL_PROGRAM = @INSTALL_PROGRAM@
# The following enables link-time code generation (Cross-file
# interprocedural optimizations).
!ifdef LTCG
CFLAGS = $(CFLAGS) /GL
LDFLAGS = $(LDFLAGS) /ltcg:status
!endif
RM = del
SRC = cmpt.c safe-ctype.c convert.c connect.c host.c http.c netrc.c \
ftp-basic.c ftp.c ftp-ls.c ftp-opie.c getopt.c hash.c \
@ -77,17 +82,15 @@ OBJ = cmpt$o safe-ctype$o convert$o connect$o host$o http$o netrc$o \
.SUFFIXES: .c .obj
.c.obj:
$(COMPILE) /c $<
# If this doesn't work for you, remove the second colon.
.c.obj::
$(CC) $(CFLAGS) /c $<
# Dependencies for building
wget: wget.exe
wget.exe: $(OBJ)
$(LD) @<< $(LDFLAGS) $(DEBUGLF) /out:$@ $(LIBS) $(SSLLIBS) $(OBJ)
$(LD) @<< $(LDFLAGS) /out:$@ $(OBJ) $(LIBS)
<<
ren wget.exe WGET.EXE
#
@ -95,15 +98,16 @@ wget.exe: $(OBJ)
#
clean:
$(RM) *.obj
$(RM) *.exe
$(RM) *.bak
$(RM) *.pdb
$(RM) *.map
$(RM) config.h
$(RM) *.bak
$(RM) *.obj
$(RM) *.exe
$(RM) *.pdb
$(RM) *.map
$(RM) *.ilk
distclean: clean
$(RM) Makefile
$(RM) config.h
realclean: distclean
$(RM) TAGS
@ -111,3 +115,4 @@ realclean: distclean
# Dependencies:
!include "..\windows\wget.dep"

View File

@ -25,7 +25,7 @@
# file, but you are not obligated to do so. If you do not wish to do
# so, delete this exception statement from your version.
RM = del
RM = -del
CP = copy
# flags passed to recursive makes in subdirectories
@ -37,41 +37,41 @@ SUBDIRS = src doc #util
all: Makefile $(SUBDIRS)
$(SUBDIRS): FORCE
cd $@
$(MAKE)
cd ..
cd $@
$(MAKE)
cd ..
FORCE:
# install everything
install:
echo Just do it.
echo Just do it.
clean: clean-recursive clean-top
distclean: distclean-recursive distclean-top
realclean: realclean-recursive realclean-top
clean-top:
$(RM) *.bak
$(RM) *.zip
$(RM) *.bak
$(RM) *.zip
distclean-top: clean-top
$(RM) Makefile
$(RM) config.h
$(RM) Makefile
$(RM) config.h
realclean-top: distclean-top
clean-recursive distclean-recursive realclean-recursive:
cd src
$(MAKE) $(@:-recursive=)
cd ..\\doc
$(MAKE) $(@:-recursive=)
cd ..
cd src
$(MAKE) $(@:-recursive=)
cd ..\\doc
$(MAKE) $(@:-recursive=)
cd ..
bindist: wget.zip
wget.zip: $(SUBDIRS)
$(RM) wget.zip
zip -Djl9 wget.zip AUTHORS COPYING INSTALL MACHINES MAILING-LIST NEWS README DOC\\sample.wgetrc
zip -Dj9 wget.zip SRC\\WGET.EXE DOC\\WGET.HLP
$(RM) wget.zip
zip -Djl9 wget.zip AUTHORS COPYING INSTALL MACHINES MAILING-LIST NEWS README doc/sample.wgetrc
zip -Dj9 wget.zip src/wget.exe doc/wget.hlp

View File

@ -1,38 +1,46 @@
-*- text -*-
To build Wget with VC++ run configure.bat (in the main wget directory),
and then run nmake. At a certain point in time wget exposed some
compiler bugs in VC++ 5.0; VC++ 6.0 sp 5 is known to be safe. However
read the rest of this document before continuing.
You can configure the Windows port of Wget by running configure.bat (in
the main Wget directory). You can run it with no arguments to see the
list of possible options. Run it with the option corresponding to the
compiler you intend to use to build Wget and follow the (brief)
instructions printed on the screen. The instructions bellow are for
building Wget with Microsoft Visual C++ (MSVC); you may need to make
appropriate substitutions for your compiler and build environment.
For VC++ the current default is to configure wget with ssl support;
first get openssl (http://www.openssl.org), compile it and install
relevant headers and libraries where your compiler can find them;
currently this could mean (presuming default installation directories)
copy (from the compiled openssl dirctory) the whole inc32/openssl
directory and its contents to
"C:\Program Files\Microsoft Visual Studio\VC98\Include\openssl",
and from out32dll (in the openssl directory) the two needed libraries
(libeay32.lib and ssleay32.lib) to
"C:\Program Files\Microsoft Visual Studio\VC98\lib".
These locations aren't exactly the best but will get you started if you
don't know where to place these headers and libraries.
Usually at runtime some openssl libraries (currently ssleay32.dll and
libeay32.dll) will need to be available in your environment PATH.
To build Wget with MSVC run configure.bat (in the main Wget directory)
with the argument --msvc, and then run nmake. At a certain point in time
Wget exposed some compiler bugs in MSVC 5.0; MSVC 6.0 SP5 is known to be
safe. However, read the rest of this document before continuing.
For MSVC the current default is to build Wget with SSL support. For this
to work, you will need to have OpenSSL installed. First, get OpenSSL
(http://www.openssl.org), compile it and install the relevant headers and
libraries where your compiler can find them; currently this could mean
(presuming default installation directories for MSVC 6.0) copy (from the
compiled OpenSSL directory) the whole inc32\openssl directory and its
contents to "C:\Program Files\Microsoft Visual Studio\VC98\Include\openssl",
and from out32dll (in the OpenSSL directory) the two needed libraries
(libeay32.lib and ssleay32.lib) to
"C:\Program Files\Microsoft Visual Studio\VC98\lib". These locations
aren't exactly the best but will get you started if you don't know where
to place these headers and libraries. Usually at run-time some OpenSSL
libraries (currently ssleay32.dll and libeay32.dll) will need to be
available in your environment PATH.
If you don't want to/can't compile Wget with OpenSSL comment SSL related
lines in windows\Makefile.src; then follow the normal instructions
(configure.bat and so on).
If you want to build the help file you will need a copy of makeinfo to
convert wget.texi to rtf and html. I've made a copy available at
convert wget.texi to rtf and html. I've made a copy available at
<URL:ftp://sunsite.dk/projects/wget/makeinfo.zip>. This copy of
makeinfo is from the miktxt 1.10 archive available from ctan. You also
will need perl 5, one possibility is Activeperl (currently free) from
makeinfo is from the miktxt 1.10 archive available from ctan. You also
will need perl 5, one possibility is ActivePerl (currently free) from
<URL:http://www.activestate.com>; you need to locate the download and
install instructions for the current version available (since the
packages and installation instructions change from time to time).
If you don't want/can't to compile wget with openssl comment the SSL
related lines in windows\Makefile.src; then follow the normal
instructions (configure.bat and so on).
Windows contributors:
* Darko Budor <dbudor@zesoi.fer.hr> -- the initial work on the Windows