| # |
| # Watcom / OpenWatcom Win32 makefile for libssh2. |
| # |
| # Comments to: Guenter Knauf http://www.gknw.net/phpbb |
| # |
| |
| !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 |
| |
| !ifdef %libname |
| LIBNAME = $(%libname) |
| !else |
| LIBNAME = libssh2 |
| !endif |
| TARGETS = $(LIBNAME).dll $(LIBNAME)_imp.lib $(LIBNAME).lib |
| |
| CC = wcc386 |
| LD = wlink |
| AR = wlib |
| RC = wrc |
| |
| !ifdef __LOADDLL__ |
| ! loaddll wcc386 wccd386 |
| ! loaddll wpp386 wppd386 |
| ! loaddll wlib wlibd |
| ! if $(__VERSION__) > 1270 |
| ! loaddll wlink wlinkd |
| ! else |
| ! loaddll wlink wlink |
| ! endif |
| !endif |
| |
| !if $(__VERSION__) < 1250 |
| RM = del /q /f 2>NUL |
| !else |
| RM = rm -f |
| !endif |
| MD = mkdir |
| RD = rmdir /q /s 2>NUL |
| CP = copy |
| |
| CFLAGS = -3r -mf -hc -zff -zgf -zq -zm -zc -s -fr=nul -w2 -fpi -oilrtfm & |
| -wcd=201 -bt=nt -d+ -dWIN32 -DLIBSSH2_WIN32 & |
| -I. -I..\include $(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 %openssl_root |
| OPENSSL_ROOT = $(%openssl_root) |
| !else |
| OPENSSL_ROOT = ..\..\openssl-0.9.8r |
| !endif |
| |
| #!ifdef %use_zlib |
| CFLAGS += -dHAVE_ZLIB_H -dHAVE_LIBZ -I$(ZLIB_ROOT) |
| #!endif |
| |
| #!ifdef %use_ssl |
| CFLAGS += -wcd=138 -dUSE_OPENSSL -dUSE_SSLEAY -I$(OPENSSL_ROOT)\inc32 |
| #!endif |
| |
| !ifdef %use_watt32 |
| CFLAGS += -dUSE_WATT32 -I$(%watt_root)\inc |
| !endif |
| |
| OBJ_BASE = WC_Win32.obj |
| LINK_ARG = $(OBJ_BASE)\dyn\wlink.arg |
| LIB_ARG = $(OBJ_BASE)\stat\wlib.arg |
| |
| # In order to process Makefile.inc wmake must be called with -u switch! |
| !ifndef %MAKEFLAGS |
| !error You MUST call wmake with the -u switch! |
| !else |
| !include ..\Makefile.inc |
| !endif |
| |
| OBJS = $(CSOURCES:.c=.obj) |
| OBJS = $OBJ_DIR\$(OBJS: = $OBJ_DIR\) |
| |
| # |
| # Use $(OBJS) as a template to generate $(OBJS_STAT) and $(OBJS_DYN). |
| # |
| OBJ_DIR = $(OBJ_BASE)\stat |
| OBJS_STAT = $+ $(OBJS) $- |
| |
| OBJ_DIR = $(OBJ_BASE)\dyn |
| OBJS_DYN = $+ $(OBJS) $- |
| |
| RESOURCE = $(OBJ_BASE)\dyn\libssh2.res |
| |
| .c: ..\src |
| |
| |
| all: $(OBJ_BASE) $(TARGETS) .SYMBOLIC |
| @echo Welcome to libssh2 |
| |
| clean: .SYMBOLIC |
| -$(RM) $(OBJS_STAT) |
| -$(RM) $(OBJS_DYN) |
| -$(RM) $(RESOURCE) $(LINK_ARG) $(LIB_ARG) |
| |
| vclean realclean: clean .SYMBOLIC |
| -$(RM) $(TARGETS) $(LIBNAME).map $(LIBNAME).sym |
| -$(RD) $(OBJ_BASE)\stat |
| -$(RD) $(OBJ_BASE)\dyn |
| -$(RD) $(OBJ_BASE) |
| |
| $(OBJ_BASE): |
| -$(MD) $^@ |
| -$(MD) $^@\stat |
| -$(MD) $^@\dyn |
| |
| $(LIBNAME).dll: $(OBJS_DYN) $(RESOURCE) $(LINK_ARG) |
| $(LD) name $^@ @$]@ |
| |
| $(LIBNAME).lib: $(OBJS_STAT) $(LIB_ARG) |
| $(AR) -q -b -c $^@ @$]@ |
| |
| .ERASE |
| $(RESOURCE): libssh2.rc |
| $(RC) $(DEBUG) -q -r -zm -DLIBSSH2_VERSION_ONLY -I..\include $(SYS_INCL) $[@ -fo=$^@ |
| |
| .ERASE |
| .c{$(OBJ_BASE)\dyn}.obj: |
| $(CC) $(CFLAGS) -bd -br $[@ -fo=$^@ |
| |
| .ERASE |
| .c{$(OBJ_BASE)\stat}.obj: |
| $(CC) $(CFLAGS) $[@ -fo=$^@ |
| |
| $(LINK_ARG): $(__MAKEFILES__) |
| %create $^@ |
| @%append $^@ system nt dll |
| @%append $^@ file { $(OBJS_DYN) } |
| !ifdef %debug |
| @%append $^@ debug all |
| @%append $^@ option symfile |
| !endif |
| @%append $^@ option quiet, map, caseexact, eliminate, implib=$(LIBNAME)_imp.lib, |
| @%append $^@ res=$(RESOURCE) libpath $(SYS_LIBS) |
| !ifdef %use_watt32 |
| @%append $^@ library $(%watt_root)\lib\wattcpw_imp.lib |
| !else |
| @%append $^@ library ws2_32.lib |
| !endif |
| #!ifdef %use_zlib |
| @%append $^@ library $(ZLIB_ROOT)\zlib.lib |
| #!endif |
| #!ifdef %use_ssl |
| @%append $^@ library $(OPENSSL_ROOT)\out32\libeay32.lib, $(OPENSSL_ROOT)\out32\ssleay32.lib |
| #!endif |
| |
| $(LIB_ARG): $(__MAKEFILES__) |
| %create $^@ |
| @for %f in ($(OBJS_STAT)) do @%append $^@ +- %f |
| |
| |