##############################################
#                                            #
#   NetCrack Server 1.0 - Salvatore Fresta   #
#                                            #
#   Usage: make help                         #
#                                            #
##############################################

SOURCE = src/main.c
EXEC   = netcrackd
SQL    = -lmysqlclient -DSQL
WIN32  = -lws2_32
WIN32SQL  = -lws2_32 -lmysqlclient -DSQL
LIBS   = src/include/mybrute.c src/include/options.c src/include/pkg.c src/include/server.c src/include/socks.c src/include/crypto/md/md5/md5.c src/include/crypto/sha/sha-1/sha1.c
CFLAGS = -lpthread -O2 -Wall

HELP = echo "" && echo "Make options:" && echo "" && echo "" && echo "mysql       - Compile with MySQL support" && echo "win32mysql  - Compile with MySQL support under Microsoft Windows" && echo "win32       - Compile under Microsoft Windows" && echo "unix        - Compile under Unix-like system" && echo "clean       - Delete the executable file on Unix system" && echo "install     - Install on Unix systems" && echo "uninstall   - Uninstall on Unix system" && echo "" && echo ""

MESSAGE = echo "" && echo "" && echo "Compiled successful! Now you can do make install by root user if you are using a Unix system." && echo "" && echo ""

netcrack:
	$(HELP)
	
mysql:
	$(CC) $(LIBS) $(SOURCE) $(CFLAGS) $(SQL) -o $(EXEC) && $(MESSAGE)
	
unix:
	$(CC) $(LIBS) $(SOURCE) $(CFLAGS) -o $(EXEC) && $(MESSAGE)

win32:
	$(CC) $(LIBS) $(SOURCE) $(CFLAGS) $(WIN32) -o $(EXEC)
	
win32mysql:
	$(CC) $(LIBS) $(SOURCE) $(CFLAGS) $(WIN32SQL) -o $(EXEC)

clean:
	@rm -f $(EXEC)
	
help:
	$(HELP)
	
install:
	install $(EXEC) $(DESTDIR)/usr/local/bin
	chmod 755 $(DESTDIR)/usr/local/bin/$(EXEC)
	
uninstall:
	rm -f $(DESTDIR)/usr/local/bin/$(EXEC)

.PHONY: netcrack help sql clean install uninstall
