aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2004-02-26 16:23:28 +0000
committerDaniel Stenberg <daniel@haxx.se>2004-02-26 16:23:28 +0000
commit4515d06465da15340c56d5b4f14ab4950fd59baa (patch)
treeede4a04b2ee9145fa76a0b55f813570190065fea
parentb6a4ca9bc82c4dbf4f3abaa6ff63bb832fa1bd03 (diff)
David Byron's fixes to make the latest curl build fine under MSVC 6.
-rw-r--r--CVS-INFO10
-rw-r--r--Makefile.dist16
-rw-r--r--include/curl/multi.h2
-rw-r--r--lib/Makefile.vc66
-rw-r--r--lib/config-win32.h4
-rw-r--r--src/Makefile.vc639
-rw-r--r--src/main.c7
7 files changed, 46 insertions, 38 deletions
diff --git a/CVS-INFO b/CVS-INFO
index 985b32c64..d004807fe 100644
--- a/CVS-INFO
+++ b/CVS-INFO
@@ -25,7 +25,8 @@ Compile and build instructions follow below.
perl/ is a subdirectory with various perl scripts
-To build after having extracted everything from CVS, do this:
+To build in environments that support configure, after having extracted
+everything from CVS, do this:
./buildconf
./configure
@@ -35,10 +36,15 @@ make
./configure --disable-shared --enable-debug --enable-maintainer-mode
+In environments that don't support configure (i.e. Microsoft), do this:
+
+buildconf.bat
+
REQUIREMENTS
- You need the following software installed:
+ For buildconf (not buildconf.bat) to work, you need the following software
+installed:
o autoconf 2.57 (or later)
o automake 1.7 (or later)
diff --git a/Makefile.dist b/Makefile.dist
index 031ff2971..45593f4d3 100644
--- a/Makefile.dist
+++ b/Makefile.dist
@@ -43,27 +43,27 @@ mingw32-ssl:
vc:
cd lib
- nmake -f Makefile.vc6 cfg=release
+ nmake /f Makefile.vc6 cfg=release
cd ..\src
- nmake -f Makefile.vc6
+ nmake /f Makefile.vc6
vc-ssl:
cd lib
- nmake -f Makefile.vc6 cfg=release-ssl
+ nmake /f Makefile.vc6 cfg=release-ssl
cd ..\src
- nmake -f Makefile.vc6 cfg=release-ssl
+ nmake /f Makefile.vc6 cfg=release-ssl
vc-ssl-dll:
cd lib
- nmake -f Makefile.vc6 cfg=release-ssl-dll
+ nmake /f Makefile.vc6 cfg=release-ssl-dll
cd ..\src
- nmake -f Makefile.vc6
+ nmake /f Makefile.vc6
vc-libcurl-ssl-dll:
cd lib
- nmake -f Makefile.vc6 cfg=release-libcurl-ssl-dll
+ nmake /f Makefile.vc6 cfg=release-libcurl-ssl-dll
cd ..\src
- nmake -f Makefile.vc6
+ nmake /f Makefile.vc6
djgpp:
make -C lib -f Makefile.dj
diff --git a/include/curl/multi.h b/include/curl/multi.h
index 04a7dcc33..0ed48bf2b 100644
--- a/include/curl/multi.h
+++ b/include/curl/multi.h
@@ -52,7 +52,7 @@
#endif
#if defined(WIN32) && !defined(__GNUC__) || defined(__MINGW32__)
-#include <winsock.h>
+#include <winsock2.h>
#else
#ifdef _AIX
diff --git a/lib/Makefile.vc6 b/lib/Makefile.vc6
index e1deba6b8..d84f17f3b 100644
--- a/lib/Makefile.vc6
+++ b/lib/Makefile.vc6
@@ -43,10 +43,10 @@ OPENSSL_PATH = ../../openssl-0.9.7a
CCNODBG = cl.exe /MD /O2 /D "NDEBUG"
CCDEBUG = cl.exe /MDd /Od /Gm /Zi /D "_DEBUG" /GZ
CFLAGSSSL = /D "USE_SSLEAY" /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
-CFLAGS = /I "../include" /nologo /W3 /GX /D "WIN32" /D "VC6" /D "_MBCS" /D "_LIB" /YX /FD /c /D "MSDOS"
+CFLAGS = /I "." /I "../include" /nologo /W3 /GX /D "WIN32" /D "VC6" /D "_MBCS" /D "_LIB" /YX /FD /c /D "MSDOS"
LNKDLL = link.exe /DLL /def:libcurl.def
-LNKLIB = link.exe -lib
+LNKLIB = link.exe /lib
LFLAGS = /nologo
LINKLIBS = ws2_32.lib winmm.lib
SSLLIBS = libeay32.lib ssleay32.lib
@@ -170,7 +170,7 @@ RESOURCE = $(DIROBJ)\libcurl.res
# Usage
#
!IF "$(CFGSET)" == "FALSE"
-!MESSAGE Usage: nmake -f makefile.vc6 CFG=<config> <target>
+!MESSAGE Usage: nmake /f makefile.vc6 CFG=<config> <target>
!MESSAGE where <config> is one of:
!MESSAGE release - release static library
!MESSAGE release-dll - release dll
diff --git a/lib/config-win32.h b/lib/config-win32.h
index 63847426d..d6665896d 100644
--- a/lib/config-win32.h
+++ b/lib/config-win32.h
@@ -32,6 +32,10 @@
#endif
/* The size of a `curl_off_t', as computed by sizeof. */
+#ifdef SIZEOF_CURL_OFF_T
+#undef SIZEOF_CURL_OFF_T
+#endif
+
#define SIZEOF_CURL_OFF_T 8
/* Define if you have the ANSI C header files. */
diff --git a/src/Makefile.vc6 b/src/Makefile.vc6
index d8b65f066..392df671d 100644
--- a/src/Makefile.vc6
+++ b/src/Makefile.vc6
@@ -28,7 +28,7 @@ LINKD = link.exe /incremental:yes /debug /libpath:"../lib"
ZLIB_PATH = ../../zlib-1.1.4
!ENDIF
-CFLAGS = /I "../include" /I "$(ZLIB_PATH)" /nologo /W3 /GX /D "WIN32" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+CFLAGS = /I "../lib" /I "../include" /I "$(ZLIB_PATH)" /nologo /W3 /GX /D "WIN32" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
LFLAGS = /nologo /libpath:"$(ZLIB_PATH)" /out:$(PROGRAM_NAME) /subsystem:console /machine:I386
LINKLIBS = ws2_32.lib libcurl.lib winmm.lib zlib.lib
LINKLIBS_DEBUG = ws2_32.lib libcurld.lib winmm.lib zlib.lib
@@ -49,14 +49,6 @@ DEBUG_OBJS= \
homedird.obj \
maind.obj
-LINK_OBJS= \
- hugehelp.obj \
- writeout.obj \
- urlglob.obj \
- getpass.obj \
- homedir.obj \
- main.obj
-
######################
# release-ssl
@@ -67,44 +59,45 @@ OPENSSL_PATH = ../../openssl-0.9.7a
LFLAGSSSL = /LIBPATH:"$(OPENSSL_PATH)/out32"
SSLLIBS = libeay32.lib ssleay32.lib gdi32.lib
LINKLIBS = $(LINKLIBS) $(SSLLIBS)
+LINKLIBS_DEBUG = $(LINKLIBS_DEBUG) $(SSLLIBS)
LFLAGS = $(LFLAGS) $(LFLAGSSSL)
!ENDIF
all : release
release: $(RELEASE_OBJS)
- $(LINKR) $(LFLAGS) $(LINKLIBS) $(LINK_OBJS)
+ $(LINKR) $(LFLAGS) $(LINKLIBS) $(RELEASE_OBJS)
debug: $(DEBUG_OBJS)
- $(LINKD) $(LFLAGS) $(LINKLIBS_DEBUG) $(LINK_OBJS)
+ $(LINKD) $(LFLAGS) $(LINKLIBS_DEBUG) $(DEBUG_OBJS)
## Release
hugehelpr.obj: hugehelp.c
- $(CCR) $(CFLAGS) /Zm200 hugehelp.c
+ $(CCR) $(CFLAGS) /Zm200 /Fo"$@" hugehelp.c
writeoutr.obj: writeout.c
- $(CCR) $(CFLAGS) writeout.c
+ $(CCR) $(CFLAGS) /Fo"$@" writeout.c
urlglobr.obj: urlglob.c
- $(CCR) $(CFLAGS) urlglob.c
+ $(CCR) $(CFLAGS) /Fo"$@" urlglob.c
getpassr.obj: getpass.c
- $(CCR) $(CFLAGS) getpass.c
+ $(CCR) $(CFLAGS) /Fo"$@" getpass.c
homedirr.obj: homedir.c
- $(CCR) $(CFLAGS) homedir.c
+ $(CCR) $(CFLAGS) /Fo"$@" homedir.c
mainr.obj: main.c
- $(CCR) $(CFLAGS) main.c
+ $(CCR) $(CFLAGS) /Fo"$@" main.c
## Debug
hugehelpd.obj: hugehelp.c
- $(CCD) $(CFLAGS) /Zm200 hugehelp.c
+ $(CCD) $(CFLAGS) /Zm200 /Fo"$@" hugehelp.c
writeoutd.obj: writeout.c
- $(CCD) $(CFLAGS) writeout.c
+ $(CCD) $(CFLAGS) /Fo"$@" writeout.c
urlglobd.obj: urlglob.c
- $(CCD) $(CFLAGS) urlglob.c
+ $(CCD) $(CFLAGS) /Fo"$@" urlglob.c
getpassd.obj: getpass.c
- $(CCD) $(CFLAGS) getpass.c
+ $(CCD) $(CFLAGS) /Fo"$@" getpass.c
homedird.obj: homedir.c
- $(CCD) $(CFLAGS) homedir.c
+ $(CCD) $(CFLAGS) /Fo"$@" homedir.c
maind.obj: main.c
- $(CCD) $(CFLAGS) main.c
+ $(CCD) $(CFLAGS) /Fo"$@" main.c
clean:
-@erase homedir.obj
diff --git a/src/main.c b/src/main.c
index ded76944c..bda7f2b19 100644
--- a/src/main.c
+++ b/src/main.c
@@ -52,7 +52,7 @@
#define CURLseparator "--_curl_--"
#if defined(WIN32)&&!defined(__CYGWIN32__)
-#include <winsock.h>
+#include <winsock2.h>
#endif
#ifdef TIME_WITH_SYS_TIME
@@ -1017,9 +1017,14 @@ static int str2offset(curl_off_t *val, char *str)
* definitions for LLONG_{MIN,MAX} or LONG_LONG_{MIN,MAX}.
*/
#ifndef LLONG_MAX
+#ifdef _MSC_VER
+#define LLONG_MAX (curl_off_t)0x7FFFFFFFFFFFFFFFi64
+#define LLONG_MIN (curl_off_t)0x8000000000000000i64
+#else
#define LLONG_MAX (curl_off_t)0x7FFFFFFFFFFFFFFFLL
#define LLONG_MIN (curl_off_t)0x8000000000000000LL
#endif
+#endif
/* this is a duplicate of the function that is also used in libcurl */
*val = strtoofft(str, NULL, 0);