|  | @@ -22,6 +22,7 @@ CFLAGS      = -std=c99 -O2 -W -Wall -pedantic -pthread $(COPT)
 | 
	
		
			
				|  |  |  # To build with Lua, download and unzip Lua 5.2.1 source code into the
 | 
	
		
			
				|  |  |  # mongoose directory, and then add $(LUA_SOURCES) to CFLAGS
 | 
	
		
			
				|  |  |  LUA         = lua-5.2.1/src
 | 
	
		
			
				|  |  | +LUA_FLAGS   = -I$(LUA) -DLUA_COMPAT_ALL
 | 
	
		
			
				|  |  |  LUA_SOURCES = $(LUA)/lapi.c $(LUA)/lcode.c $(LUA)/lctype.c \
 | 
	
		
			
				|  |  |                $(LUA)/ldebug.c $(LUA)/ldo.c $(LUA)/ldump.c \
 | 
	
		
			
				|  |  |                $(LUA)/lfunc.c $(LUA)/lgc.c $(LUA)/llex.c \
 | 
	
	
		
			
				|  | @@ -34,17 +35,6 @@ LUA_SOURCES = $(LUA)/lapi.c $(LUA)/lcode.c $(LUA)/lctype.c \
 | 
	
		
			
				|  |  |                $(LUA)/loslib.c $(LUA)/lstrlib.c $(LUA)/ltablib.c \
 | 
	
		
			
				|  |  |                $(LUA)/loadlib.c $(LUA)/linit.c
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -# Using Visual Studio 6.0. To build Mongoose:
 | 
	
		
			
				|  |  | -#  Set MSVC variable below to where VS 6.0 is installed on your system
 | 
	
		
			
				|  |  | -#  Run "PATH_TO_VC6\bin\nmake windows"
 | 
	
		
			
				|  |  | -MSVC        = ../vc6
 | 
	
		
			
				|  |  | -#DBG         = /Zi /Od
 | 
	
		
			
				|  |  | -DBG         = /DNDEBUG /O1
 | 
	
		
			
				|  |  | -CL          = $(MSVC)/bin/cl /MD /TC /nologo $(DBG) /Gz /W3 \
 | 
	
		
			
				|  |  | -              /I$(MSVC)/include /I$(LUA) /I. /I$(YASSL) /I$(YASSL)/cyassl /GA
 | 
	
		
			
				|  |  | -MSLIB       = /link /incremental:no /libpath:$(MSVC)/lib /machine:IX86 \
 | 
	
		
			
				|  |  | -              user32.lib shell32.lib comdlg32.lib ws2_32.lib advapi32.lib
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |  # Stock windows binary builds with Lua and YASSL library.
 | 
	
		
			
				|  |  |  YASSL       = ../cyassl-2.4.6
 | 
	
		
			
				|  |  |  YASSL_FLAGS = -I $(YASSL) -I $(YASSL)/cyassl \
 | 
	
	
		
			
				|  | @@ -70,9 +60,32 @@ YASSL_SOURCES = \
 | 
	
		
			
				|  |  |    $(YASSL)/ctaocrypt/src/ecc.c $(YASSL)/src/ocsp.c $(YASSL)/src/crl.c \
 | 
	
		
			
				|  |  |    $(YASSL)/ctaocrypt/src/hc128.c $(YASSL)/ctaocrypt/src/memory.c
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +ALL_SOURCES = main.c mongoose.c build/sqlite3.c build/lsqlite3.c \
 | 
	
		
			
				|  |  | +              $(LUA_SOURCES) $(YASSL_SOURCES)
 | 
	
		
			
				|  |  | +ALL_OBJECTS = $(ALL_SOURCES:%.c=%.o)
 | 
	
		
			
				|  |  | +ALL_WINOBJS = $(ALL_SOURCES:%.c=%.obj)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +FLAGS = -DNO_SSL_DL -DUSE_LUA -DUSE_LUA_SQLITE3 $(YASSL_FLAGS) $(LUA_FLAGS)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +# Using Visual Studio 6.0. To build Mongoose:
 | 
	
		
			
				|  |  | +#  Set MSVC variable below to where VS 6.0 is installed on your system
 | 
	
		
			
				|  |  | +#  Run "PATH_TO_VC6\bin\nmake windows"
 | 
	
		
			
				|  |  | +MSVC = ../vc6
 | 
	
		
			
				|  |  | +#DBG = /Zi /Od
 | 
	
		
			
				|  |  | +DBG  = /DNDEBUG /O1
 | 
	
		
			
				|  |  | +CL   = $(MSVC)/bin/cl /MD /TC /nologo $(DBG) /Gz /W3 /GA /I$(MSVC)/include
 | 
	
		
			
				|  |  | +LINK = $(MSVC)/bin/link /incremental:no /libpath:$(MSVC)/lib /machine:IX86 \
 | 
	
		
			
				|  |  | +       user32.lib shell32.lib comdlg32.lib ws2_32.lib advapi32.lib
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  all:
 | 
	
		
			
				|  |  |  	@echo "make (linux|bsd|solaris|mac|windows|mingw|cygwin)"
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +%.obj: %.c
 | 
	
		
			
				|  |  | +	$(CL) /c $(FLAGS) /Fo$@ $<
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +%.o: %.c
 | 
	
		
			
				|  |  | +	$(CC) -o $@ $< -c $(FLAGS) $(CFLAGS)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  # To build with lua, make sure you have Lua unpacked into lua-5.2.1 directory
 | 
	
		
			
				|  |  |  linux_lua:
 | 
	
		
			
				|  |  |  	$(CC) mongoose.c main.c build/lsqlite3.c build/sqlite3.c $(LUA_SOURCES) -DUSE_LUA -DUSE_LUA_SQLITE3 -DLUA_COMPAT_ALL -I$(LUA) -o $(PROG) -ldl $(CFLAGS)
 | 
	
	
		
			
				|  | @@ -88,11 +101,8 @@ mac: bsd
 | 
	
		
			
				|  |  |  bsd:
 | 
	
		
			
				|  |  |  	$(CC) mongoose.c main.c -o $(PROG) $(CFLAGS)
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -bsd_yassl:
 | 
	
		
			
				|  |  | -	$(CC) mongoose.c main.c build/lsqlite3.c build/sqlite3.c -o $(PROG) \
 | 
	
		
			
				|  |  | -          $(CFLAGS) -I$(LUA) -Ibuild \
 | 
	
		
			
				|  |  | -          $(YASSL_SOURCES) $(YASSL_FLAGS) -DNO_SSL_DL \
 | 
	
		
			
				|  |  | -          $(LUA_SOURCES) -DUSE_LUA -DUSE_LUA_SQLITE3 -DLUA_COMPAT_ALL
 | 
	
		
			
				|  |  | +bsd_lua: $(ALL_OBJECTS)
 | 
	
		
			
				|  |  | +	$(CC) $(ALL_OBJECTS) -o $@
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  solaris:
 | 
	
		
			
				|  |  |  	$(CC) mongoose.c main.c -lnsl -lsocket -o $(PROG) $(CFLAGS)
 | 
	
	
		
			
				|  | @@ -121,12 +131,9 @@ w:
 | 
	
		
			
				|  |  |            $(MSLIB) /out:unit_test.exe
 | 
	
		
			
				|  |  |  	./unit_test.exe
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -windows:
 | 
	
		
			
				|  |  | -	$(MSVC)/bin/rc build\res.rc
 | 
	
		
			
				|  |  | -	$(CL) main.c mongoose.c build/lsqlite3.c build/sqlite3.c \
 | 
	
		
			
				|  |  | -          $(YASSL_SOURCES) $(YASSL_FLAGS) /DNO_SSL_DL \
 | 
	
		
			
				|  |  | -          $(LUA_SOURCES) /DUSE_LUA /DUSE_LUA_SQLITE3 /DLUA_COMPAT_ALL \
 | 
	
		
			
				|  |  | -          $(MSLIB) build\res.res /out:$(PROG).exe /subsystem:windows
 | 
	
		
			
				|  |  | +windows: $(ALL_WINOBJS)
 | 
	
		
			
				|  |  | +	$(MSVC)/bin/rc build/res.rc
 | 
	
		
			
				|  |  | +	$(LINK) /nologo $(ALL_WINOBJS) build/res.res /out:$(PROG).exe
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  # Build for Windows under MinGW
 | 
	
		
			
				|  |  |  #MINGWDBG= -DDEBUG -O0 -ggdb
 | 
	
	
		
			
				|  | @@ -164,5 +171,5 @@ clean:
 | 
	
		
			
				|  |  |  	cd examples && $(MAKE) clean
 | 
	
		
			
				|  |  |  	rm -rf *.o *.core $(PROG) *.obj *.so $(PROG).txt *.dSYM *.tgz \
 | 
	
		
			
				|  |  |  	$(PROG).exe *.dll *.lib build/res.o build/res.RES *.dSYM *.zip *.pdb \
 | 
	
		
			
				|  |  | -	*.exe *.dmg $(LUA_SOURCES:%.c=%.obj) $(YASSL_SOURCES:%.c=%.obj)
 | 
	
		
			
				|  |  | +	*.exe *.dmg $(ALL_OBJECTS) $(ALL_WINOBJS)
 | 
	
		
			
				|  |  |  
 |