2015-08-21 03:05:50 +00:00
|
|
|
COMMONOBJS = tun.o dns.o read.o encoding.o login.o base32.o base64.o base64u.o base128.o md5.o window.o common.o
|
2009-08-16 12:30:26 +00:00
|
|
|
CLIENTOBJS = iodine.o client.o util.o
|
2006-11-09 19:08:28 +00:00
|
|
|
CLIENT = ../bin/iodine
|
2008-08-07 21:18:15 +00:00
|
|
|
SERVEROBJS = iodined.o user.o fw_query.o
|
2006-11-09 19:08:28 +00:00
|
|
|
SERVER = ../bin/iodined
|
2006-06-05 12:41:08 +00:00
|
|
|
|
2009-01-25 16:28:17 +00:00
|
|
|
OS = `echo $(TARGETOS) | tr "a-z" "A-Z"`
|
2007-01-28 04:17:33 +00:00
|
|
|
ARCH = `uname -m`
|
2014-01-29 19:25:45 +00:00
|
|
|
HEAD_COMMIT = `git rev-parse --short HEAD`
|
2006-06-05 12:58:50 +00:00
|
|
|
|
2009-01-24 22:19:11 +00:00
|
|
|
LIBPATH = -L.
|
2009-08-15 19:17:02 +00:00
|
|
|
LDFLAGS += -lz `sh osflags $(TARGETOS) link` $(LIBPATH)
|
2014-05-29 16:37:40 +00:00
|
|
|
CFLAGS += -std=c99 -c -g -Wall -D$(OS) -pedantic `sh osflags $(TARGETOS) cflags` -DGITREVISION=\"$(HEAD_COMMIT)\"
|
2006-06-05 12:58:50 +00:00
|
|
|
|
2007-12-01 21:23:59 +00:00
|
|
|
all: stateos $(CLIENT) $(SERVER)
|
2006-08-24 21:02:52 +00:00
|
|
|
|
2006-06-05 12:58:50 +00:00
|
|
|
stateos:
|
2007-01-28 04:17:33 +00:00
|
|
|
@echo OS is $(OS), arch is $(ARCH)
|
2006-06-05 12:41:08 +00:00
|
|
|
|
2007-06-09 17:48:28 +00:00
|
|
|
$(CLIENT): $(COMMONOBJS) $(CLIENTOBJS)
|
2006-06-05 13:44:15 +00:00
|
|
|
@echo LD $@
|
2006-11-09 19:08:28 +00:00
|
|
|
@mkdir -p ../bin
|
2007-06-09 17:48:28 +00:00
|
|
|
@$(CC) $(COMMONOBJS) $(CLIENTOBJS) -o $(CLIENT) $(LDFLAGS)
|
2006-06-05 18:47:09 +00:00
|
|
|
|
2007-06-09 17:48:28 +00:00
|
|
|
$(SERVER): $(COMMONOBJS) $(SERVEROBJS)
|
2006-06-05 18:47:09 +00:00
|
|
|
@echo LD $@
|
2006-11-09 19:08:28 +00:00
|
|
|
@mkdir -p ../bin
|
2007-06-09 17:48:28 +00:00
|
|
|
@$(CC) $(COMMONOBJS) $(SERVEROBJS) -o $(SERVER) $(LDFLAGS)
|
2006-06-05 12:41:08 +00:00
|
|
|
|
2014-06-01 06:34:18 +00:00
|
|
|
.c.o:
|
2006-06-05 13:45:20 +00:00
|
|
|
@echo CC $<
|
2006-06-05 13:16:24 +00:00
|
|
|
@$(CC) $(CFLAGS) $< -o $@
|
2006-06-05 12:41:08 +00:00
|
|
|
|
2009-12-29 20:00:57 +00:00
|
|
|
base64u.o client.o iodined.o: base64u.h
|
|
|
|
base64u.c: base64.c
|
|
|
|
@echo Making $@
|
|
|
|
@echo '/* No use in editing, produced by Makefile! */' > $@
|
2009-12-29 20:25:33 +00:00
|
|
|
@sed -e 's/\([Bb][Aa][Ss][Ee]64\)/\1u/g ; s/0123456789+/0123456789_/' < base64.c >> $@
|
2009-12-29 20:00:57 +00:00
|
|
|
base64u.h: base64.h
|
|
|
|
@echo Making $@
|
|
|
|
@echo '/* No use in editing, produced by Makefile! */' > $@
|
2009-12-29 20:25:33 +00:00
|
|
|
@sed -e 's/\([Bb][Aa][Ss][Ee]64\)/\1u/g ; s/0123456789+/0123456789_/' < base64.h >> $@
|
2009-12-29 20:00:57 +00:00
|
|
|
|
2006-06-05 12:41:08 +00:00
|
|
|
clean:
|
2006-11-18 13:37:37 +00:00
|
|
|
@echo "Cleaning src/"
|
2009-12-29 20:00:57 +00:00
|
|
|
@rm -f $(CLIENT){,.exe} $(SERVER){,.exe} *~ *.o *.core base64u.*
|
2012-02-04 23:36:15 +00:00
|
|
|
@rm -rf obj libs #android stuff
|
2006-06-05 12:41:08 +00:00
|
|
|
|