iodine/src/Makefile

49 lines
1.4 KiB
Makefile
Raw Normal View History

2009-12-29 20:00:57 +00:00
COMMONOBJS = tun.o dns.o read.o encoding.o login.o base32.o base64.o base64u.o base128.o md5.o common.o
CLIENTOBJS = iodine.o client.o util.o
CLIENT = ../bin/iodine
SERVEROBJS = iodined.o user.o fw_query.o
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
LIBPATH = -L.
2009-08-15 19:17:02 +00:00
LDFLAGS += -lz `sh osflags $(TARGETOS) link` $(LIBPATH)
CFLAGS += -std=c99 -c -g -Wall -D$(OS) -pedantic `sh osflags $(TARGETOS) cflags` -DGITREVISION=\"$(HEAD_COMMIT)\"
2006-06-05 12:58:50 +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 $@
@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 $@
@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.*
@rm -rf obj libs #android stuff
2006-06-05 12:41:08 +00:00