# # Watcom / OpenWatcom / Win32 makefile for cURL. # G. Vanem # !ifndef %watcom !error WATCOM environment variable not set! !else SYS_INCL = -I$(%watcom)\h\nt -I$(%watcom)\h SYS_LIBS = $(%watcom)\lib386\nt;$(%watcom)\lib386 !endif TARGETS = libcurl_wc.dll libcurl_wc_imp.lib libcurl_wc.lib CC = wcc386 LD = wlink RC = wrc AR = wlib !ifdef __LOADDLL__ ! loaddll wcc386 wccd386 ! loaddll wpp386 wppd386 ! loaddll wlink wlinkd ! loaddll wlib wlibd !endif MD = mkdir RM = del /q /f >NUL 2>&1 RD = rmdir /q /s >NUL 2>&1 CP = copy CFLAGS = -3r -mf -hc -zff -zgf -zq -zm -s -fr=con -w2 -fpi -oilrtfm & -wcd=201 -bt=nt -bc -d+ -dWIN32 -dHAVE_STRTOLL & -I..\include -I..\lib $(SYS_INCL) !ifdef %debug DEBUG = -dDEBUG=1 -dDEBUGBUILD CFLAGS += -d3 $(DEBUG) !else CFLAGS += -d0 !endif !ifdef %use_ipv6 CFLAGS += -d_WIN32_WINNT=0x0501 -dENABLE_IPV6 !endif # # Change to suite. # !ifdef %zlib_root ZLIB_ROOT = $(%zlib_root) !else ZLIB_ROOT = ..\..\zlib-1.2.5 !endif !ifdef %ares_root ARES_ROOT = $(%ares_root) !else ARES_ROOT = ..\ares !endif OBJ_DIR = WC_Win32.obj LINK_ARG = $(OBJ_DIR)\wlink.arg # In order to process Makefile.inc wmake must be called with -u switch! !ifneq __MAKEOPTS__ -u !error You MUST call wmake with the -u switch! !else !include Makefile.inc !endif # Unfortunately, we can't include Makefile.inc here because wmake doesn't # use backslash as the line continuation character by default CURL_SOURCES = main.c hugehelp.c urlglob.c writeout.c writeenv.c & getpass.c homedir.c curlutil.c os-specific.c CURLX_SOURCES = rawstr.c nonblock.c OBJS = $(CURL_SOURCES:.c=.obj) !ifdef %curl_static CFLAGS += -DCURL_STATICLIB !else OBJS += $(CURLX_SOURCES:.c=.obj) !endif OBJS = $OBJ_DIR\$(OBJS: = $OBJ_DIR\) RESOURCE = $(OBJ_DIR)\curl.res all: hugehelp.c $(OBJ_DIR) curl.exe .SYMBOLIC @echo Welcome to cURL hugehelp.c: hugehelp.c.cvs $(CP) $[@ $^@ hugehelp.c.cvs: .EXISTSONLY $(CP) hugehelp.c $^@ $(OBJ_DIR): -$(MD) $^@ curl.exe: $(OBJS) $(RESOURCE) $(LINK_ARG) $(LD) name $^@ @$(LINK_ARG) $(LINK_ARG): $(__MAKEFILES__) %create $^@ @%append $^@ system nt @%append $^@ file { $(OBJS) } @%append $^@ option quiet, map, caseexact, eliminate, @%append $^@ res=$(RESOURCE) libpath $(SYS_LIBS) # @%append $^@ library clib3r.lib !ifdef %curl_static @%append $^@ library wldap32.lib @%append $^@ library ..\lib\libcurl_wc.lib !ifdef %use_zlib @%append $^@ library $(ZLIB_ROOT)\zlib.lib !endif !ifdef %use_ares @%append $^@ library $(ARES_ROOT)\cares.lib !endif !else @%append $^@ library ..\lib\libcurl_wc_imp.lib !endif !ifeq USE_WATT32 1 @%append $^@ library $(%watt_root)\lib\wattcpw_imp.lib !else @%append $^@ library ws2_32.lib !endif clean: .SYMBOLIC -$(RM) $(OBJS) -$(RM) $(RESOURCE) $(LINK_ARG) vclean realclean: clean .SYMBOLIC -$(RD) $(OBJ_DIR) -$(RM) curl.exe curl.map hugehelp.c $(RESOURCE): curl.rc $(RC) $(DEBUG) -q -r -zm -I..\include $(SYS_INCL) $[@ -fo=$^@ .ERASE .c{$(OBJ_DIR)}.obj: $(CC) $(CFLAGS) $[@ -fo=$^@ .ERASE $(OBJ_DIR)\rawstr.obj: ..\lib\rawstr.c $(CC) $(CFLAGS) $[@ -fo=$^@ .ERASE $(OBJ_DIR)\nonblock.obj: ..\lib\nonblock.c $(CC) $(CFLAGS) $[@ -fo=$^@ # # Dependencies based on "gcc -MM .." # $(OBJ_DIR)\getpass.obj: getpass.c setup.h config-win32.h ..\lib\setup_once.h getpass.h & ..\lib\memdebug.h ..\lib\setup.h ..\lib\config-win32.h & ..\include\curl\curlbuild.h ..\include\curl\curlrules.h & ..\include\curl\curl.h ..\include\curl\curlver.h & ..\include\curl\curlrules.h ..\include\curl\easy.h & ..\include\curl\multi.h ..\include\curl\curl.h $(OBJ_DIR)\homedir.obj: homedir.c setup.h config-win32.h ..\lib\setup_once.h homedir.h & ..\lib\memdebug.h ..\lib\setup.h ..\lib\config-win32.h & ..\include\curl\curlbuild.h ..\include\curl\curlrules.h & ..\include\curl\curl.h ..\include\curl\curlver.h & ..\include\curl\curlrules.h ..\include\curl\easy.h & ..\include\curl\multi.h ..\include\curl\curl.h $(OBJ_DIR)\hugehelp.obj: hugehelp.c $(OBJ_DIR)\main.obj: main.c setup.h config-win32.h ..\lib\setup_once.h & ..\include\curl\curl.h ..\include\curl\curlver.h & ..\include\curl\curlbuild.h ..\include\curl\curlrules.h & ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h & urlglob.h writeout.h getpass.h homedir.h curlutil.h hugehelp.h & version.h ..\include\curl\curlver.h ..\lib\curlx.h & ..\include\curl\mprintf.h ..\lib\strequal.h ..\lib\strtoofft.h & ..\lib\setup.h ..\lib\config-win32.h ..\include\curl\curlbuild.h & ..\include\curl\curlrules.h ..\lib\timeval.h ..\lib\memdebug.h & os-specific.h $(OBJ_DIR)\urlglob.obj: urlglob.c setup.h config-win32.h ..\lib\setup_once.h & ..\include\curl\curl.h ..\include\curl\curlver.h & ..\include\curl\curlbuild.h ..\include\curl\curlrules.h & ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h & ..\include\curl\mprintf.h urlglob.h ..\lib\memdebug.h ..\lib\setup.h & ..\lib\config-win32.h ..\include\curl\curlbuild.h & ..\include\curl\curlrules.h os-specific.h $(OBJ_DIR)\writeenv.obj: writeenv.c setup.h config-win32.h ..\lib\setup_once.h $(OBJ_DIR)\writeout.obj: writeout.c setup.h config-win32.h ..\lib\setup_once.h & ..\include\curl\curl.h ..\include\curl\curlver.h & ..\include\curl\curlbuild.h ..\include\curl\curlrules.h & ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h & ..\include\curl\mprintf.h writeout.h $(OBJ_DIR)\curlutil.obj: curlutil.c setup.h config-win32.h ..\lib\setup_once.h & curlutil.h $(OBJ_DIR)\os-specific.obj: os-specific.c os-specific.h setup.h config-win32.h & ..\lib\setup_once.h $(OBJ_DIR)\rawstr.obj: ..\lib\rawstr.c ..\lib\setup.h ..\lib\config-win32.h & ..\include\curl\curlbuild.h ..\include\curl\curlrules.h ..\lib\setup_once.h & ..\include\curl\curl.h ..\include\curl\curlver.h ..\include\curl\curlrules.h & ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h & ..\lib\strerror.h ..\lib\urldata.h ..\lib\cookie.h ..\lib\formdata.h & ..\lib\timeval.h ..\lib\http_chunks.h ..\lib\hostip.h ..\lib\hash.h & ..\lib\llist.h ..\lib\splay.h ..\include\curl\mprintf.h $(OBJ_DIR)\nonblock.obj: ..\lib\nonblock.c ..\lib\setup.h ..\lib\config-win32.h & ..\include\curl\curlbuild.h ..\include\curl\curlrules.h ..\lib\setup_once.h & ..\include\curl\curl.h ..\include\curl\curlver.h ..\include\curl\curlrules.h & ..\include\curl\easy.h ..\include\curl\multi.h ..\include\curl\curl.h & ..\lib\strerror.h ..\lib\urldata.h ..\lib\cookie.h ..\lib\formdata.h & ..\lib\timeval.h ..\lib\http_chunks.h ..\lib\hostip.h ..\lib\hash.h & ..\lib\llist.h ..\lib\splay.h ..\include\curl\mprintf.h ..\lib\nonblock.h