+2007-10-02 Gisle Vanem <gvanem@broadpark.no>
+
+ * config.h: Removed unused defines, added needed 'HAVE_*' defines.
+
+ * Makefile.DJ: rewritten to be used from './src' directory.
+ Added '-DOPENSSL_NO_KRB5' for OpenSSL build. Target is
+ now wget.exe.
+
+ * Makefile.WC: Added for building with OpenWatcom targeting
+ 32-bit DOS (DOS32A extender).
+
2007-09-24 Gisle Vanem <giva@bgnett.no>
* Makefile.DJ, config.h: Added to support building on MS-DOS via
#
# GNU Makefile for wget / djgpp / MSDOS.
-# By Gisle Vanem <giva@bgnett.no>.
+# By Gisle Vanem <giva@bgnett.no> 2007.
#
-.SUFFIXES: .exe .map
+# `cd' to `./src' and issue the command:
+# make -f ../msdos/Makefile.dj
+#
+.SUFFIXES: .exe
USE_OPENSSL = 0
USE_IPV6 = 1
+#
+# Change to suite.
+#
OPENSSL_ROOT = e:/net/OpenSSL.099
ZLIB_ROOT = e:/djgpp/contrib/zlib
-VPATH = ../src
OBJ_DIR = djgpp.obj
CC = gcc
-CFLAGS = -O2 -g -Wall -Wcast-align -I. -I../src -I/dev/env/WATT_ROOT/inc \
+CFLAGS = -O2 -g -Wall -Wcast-align -I. -I../msdos -I/dev/env/WATT_ROOT/inc \
-DHAVE_CONFIG_H -DENABLE_DEBUG
# LDFLAGS = -s
ifeq ($(USE_OPENSSL),1)
- CFLAGS += -DHAVE_OPENSSL -DHAVE_SSL -I$(OPENSSL_ROOT)
+ CFLAGS += -DHAVE_OPENSSL -DHAVE_SSL -DOPENSSL_NO_KRB5 -I$(OPENSSL_ROOT)
EX_LIBS += $(OPENSSL_ROOT)/lib/libssl.a $(OPENSSL_ROOT)/lib/libcrypt.a \
$(ZLIB_ROOT)/libz.a
- SOURCES = ../src/openssl.c ../src/http-ntlm.c
+ SOURCES += openssl.c http-ntlm.c
endif
ifeq ($(USE_IPV6),1)
EX_LIBS += /dev/env/WATT_ROOT/lib/libwatt.a
-SOURCES += $(addprefix ../src/, cmpt.c connect.c cookies.c ftp.c ftp-basic.c \
- ftp-ls.c ftp-opie.c getopt.c hash.c host.c html-parse.c html-url.c \
- http.c init.c log.c main.c gen-md5.c gnu-md5.c netrc.c progress.c \
- recur.c res.c retr.c safe-ctype.c url.c utils.c version.c convert.c \
- xmalloc.c ptimer.c spider.c)
+SOURCES += cmpt.c connect.c cookies.c ftp.c ftp-basic.c ftp-ls.c \
+ ftp-opie.c getopt.c hash.c host.c html-parse.c html-url.c \
+ http.c init.c log.c main.c gen-md5.c gnu-md5.c netrc.c \
+ progress.c recur.c res.c retr.c safe-ctype.c url.c utils.c \
+ version.c convert.c xmalloc.c ptimer.c spider.c
-OBJECTS = $(addprefix $(OBJ_DIR)/, $(notdir $(SOURCES:.c=.o)))
+OBJECTS = $(addprefix $(OBJ_DIR)/, $(SOURCES:.c=.o))
-all: $(OBJ_DIR) ../wget-dos.exe
+all: $(OBJ_DIR) wget.exe
@echo 'Welcome to Wget'
$(OBJ_DIR):
mkdir $(OBJ_DIR)
-../wget-dos.exe: $(OBJECTS)
+wget.exe: $(OBJECTS)
$(CC) $(LDFLAGS) -o $@ $^ $(EX_LIBS)
clean:
rm -f $(OBJECTS) $(MAPFILE)
vclean realclean: clean
- rm -f ../wget-dos.exe depend.dj
+ rm -f wget.exe depend.dj
- rmdir $(OBJ_DIR)
$(OBJ_DIR)/%.o: %.c
--- /dev/null
+#
+# Makefile for Wget / DOS32A / OpenWatcom
+# by G. Vanem <gvanem@broadpark.no> 2007
+#
+
+COMPILE = *wcc386 -mf -3r -w6 -d2 -zq -zm -of -I. -I$(%watt_root)\inc &
+ -I..\msdos -fr=nul -bt=dos -s -dHAVE_CONFIG_H -dENABLE_DEBUG &
+ -dSIZEOF_INT=4
+
+LINK = *wlink option quiet, map, verbose, eliminate, caseexact, stack=100k &
+ debug all system dos32a
+
+OBJ_DIR = Watcom.obj
+
+OBJECTS = $(OBJ_DIR)\cmpt.obj $(OBJ_DIR)\connect.obj &
+ $(OBJ_DIR)\convert.obj $(OBJ_DIR)\cookies.obj &
+ $(OBJ_DIR)\ftp-basic.obj $(OBJ_DIR)\ftp-ls.obj &
+ $(OBJ_DIR)\ftp-opie.obj $(OBJ_DIR)\ftp.obj &
+ $(OBJ_DIR)\gen-md5.obj $(OBJ_DIR)\getopt.obj &
+ $(OBJ_DIR)\gnu-md5.obj $(OBJ_DIR)\hash.obj &
+ $(OBJ_DIR)\host.obj $(OBJ_DIR)\html-parse.obj &
+ $(OBJ_DIR)\html-url.obj $(OBJ_DIR)\http.obj &
+ $(OBJ_DIR)\init.obj $(OBJ_DIR)\log.obj &
+ $(OBJ_DIR)\main.obj $(OBJ_DIR)\netrc.obj &
+ $(OBJ_DIR)\progress.obj $(OBJ_DIR)\ptimer.obj &
+ $(OBJ_DIR)\recur.obj $(OBJ_DIR)\res.obj &
+ $(OBJ_DIR)\retr.obj $(OBJ_DIR)\safe-ctype.obj &
+ $(OBJ_DIR)\spider.obj $(OBJ_DIR)\url.obj &
+ $(OBJ_DIR)\utils.obj $(OBJ_DIR)\version.obj &
+ $(OBJ_DIR)\xmalloc.obj
+
+all: $(OBJ_DIR) wget.exe .SYMBOLIC
+ @echo 'Welcome to Wget / Watcom'
+
+$(OBJ_DIR):
+ - mkdir $^@
+
+.ERASE
+.c{$(OBJ_DIR)}.obj:
+ *$(COMPILE) $[@ -fo=$@
+
+wget.exe: $(OBJECTS)
+ $(LINK) name $@ file { $(OBJECTS) } library $(%watt_root)\lib\wattcpwf.lib
+
+
+clean: .SYMBOLIC
+ - rm $(OBJ_DIR)\*.obj wget.exe wget.map
+ - rmdir $(OBJ_DIR)
+
#endif
#if defined(__HIGHC__)
- #define inline
#define HAVE_UNISTD_H 1
#define HAVE_UTIME_H 1
#endif
-#if defined(__WATCOMC__) || defined(__BORLANDC__)
+#if defined(__WATCOMC__) || defined(__BORLANDC__) || defined(__HIGHC__)
#define inline
#endif
-#ifdef HAVE_SSL
- #define OPENSSL_NO_KRB5
-#endif
-
-#define STDC_HEADERS 1
-#define RETSIGTYPE void
-
#define USE_OPIE 1
#define USE_DIGEST 1
#define DEBUG
#ifdef __DJGPP__
- #define HAVE_STRUCT_UTIMBUF 1
- #define HAVE_UNAME 1
- #define HAVE_UTIME_H 1
+ #define HAVE__BOOL 1
#define HAVE_STRCASECMP 1
#define HAVE_STRNCASECMP 1
- #define HAVE_SYS_SELECT_H 1
- #define HAVE_USLEEP 1
- #define HAVE_SIGNAL 1
- #define HAVE_BASENAME 1
#define HAVE_SIGSETJMP 1
#define HAVE_SIGBLOCK 1
- #define HAVE__BOOL 1
+ #define HAVE_STRUCT_UTIMBUF 1
+ #define HAVE_SYS_SELECT_H 1
+ #define HAVE_USLEEP 1
+ #define HAVE_UTIME_H 1
+ #define HAVE_INT64_T 1
#if (DJGPP_MINOR >= 4)
#include <stdbool.h>
#endif
#ifdef OPENWATCOM_15
- #define HAVE_STRCASECMP
- #define HAVE_STRNCASECMP
+ #define HAVE_INT64_T 1
+ #define HAVE_STRCASECMP 1
+ #define HAVE_STRNCASECMP 1
+ #define HAVE_UTIME_H 1
#endif
-#define HAVE_GETHOSTBYNAME 1
-#define HAVE_GETHOSTNAME 1
-#define HAVE_SELECT 1
+#define HAVE_PROCESS_H 1
#define HAVE_STRDUP 1
-#define HAVE_STRERROR 1
-#define HAVE_STRSTR 1
-#define HAVE_MKTIME 1
-#define HAVE_STDARG_H 1
#define HAVE_STDLIB_H 1
#define HAVE_STRING_H 1
-#define HAVE_SIGNAL_H 1
-#define HAVE_GETTIMEOFDAY 1
-#define HAVE_MD5 1
#define HAVE_BUILTIN_MD5 1
#define HAVE_ISATTY 1
-#define HAVE_MEMMOVE 1
-
-#define OS_TYPE "DOS"
-#define CTRLBREAK_BACKGND 1
-#define PROTOTYPES 1
-
-#define WGET_USE_STDARG
#define lookup_host wget_lookuphost
#define select select_s
#define sock_write wget_sock_write
#define sock_close wget_sock_close
-#if defined(__DJGPP__)
- #define MKDIR(p,a) mkdir(p,a)
-#else
+#if !defined(__DJGPP__)
+ #include <direct.h>
+ #define mkdir(p,a) (mkdir)(p)
#define strcasecmp stricmp
- #define MKDIR(p,a) mkdir(p)
#endif
#if !defined(MSDOS)
-#define MSDOS
+ #define MSDOS
#endif
+#define OS_TYPE "DOS"
+
#endif /* CONFIG_DOS_H */
+2007-10-02 Gisle Vanem <gvanem@broadpark.no>
+
+ * ftp.c: Use "_listing" for MSDOS (".listing" is illegal).
+
+ * url.c: Update comment for 'filechr_not_windows'.
+
+ * utils.c: Include <process.h> for 'getpid()' on Watcom.
+
2007-10-04 Micah Cowan <micah@cowan.name>
* http.c (http_loop): We've got_name if content_disposition
#include "recur.h" /* for INFINITE_RECURSION */
/* File where the "ls -al" listing will be saved. */
+#ifdef MSDOS
+#define LIST_FILENAME "_listing"
+#else
#define LIST_FILENAME ".listing"
+#endif
typedef struct
{
enum {
filechr_not_unix = 1, /* unusable on Unix, / and \0 */
- filechr_not_windows = 2, /* unusable on MSDOS/Windows, one of \|/<>?:*" */
+ filechr_not_windows = 2, /* unusable on Windows, one of \|/<>?:*" */
filechr_control = 4 /* a control character, e.g. 0-31 */
};
#ifdef HAVE_MMAP
# include <sys/mman.h>
#endif
+#ifdef HAVE_PROCESS_H
+# include <process.h> /* getpid() */
+#endif
#ifdef HAVE_UTIME_H
# include <utime.h>
#endif