blob: ef749dfecfad70c832a9ab5790da3535a58bd6d2 [file] [log] [blame] [raw]
########## BEGIN LOCAL CONFIGURATIONS ##########
FACIL_INCLUDE_DIR := ../facil.io/lib/facil
FACIL_LIB_DIR := /usr/local/lib
CC := gcc-4.3.2
CFLAGS := -Wall -O1 --std gnu99 -D NODEBUG -D HAVE_ZLIB
#LIBS :=
SOCKET_LIBS := -l socket -l nsl
########## END LOCAL CONFIGURATIONS ##########
# Copied from facil.io source
# Set Endian Flag
ifeq ($(shell printf "int main(void) {int i = 1; return (int)(i & ((unsigned char *)&i)[sizeof(i)-1]);}\n" | $(CC) -x c -o _fio___endian_test - >> /dev/null 2> /dev/null ; ./_fio___endian_test >> /dev/null 2> /dev/null; echo $$?; rm _fio___endian_test 2> /dev/null), 1)
$(info * Detected Big Endian byte order.)
CFLAGS += -D__BIG_ENDIAN__=1
else ifeq ($(shell printf "int main(void) {int i = 1; return (int)(i & ((unsigned char *)&i)[0]);}\n" | $(CC) -xc -o _fio___endian_test - >> /dev/null 2> /dev/null ; ./_fio___endian_test >> /dev/null 2> /dev/null; echo $$?; rm _fio___endian_test 2> /dev/null), 1)
$(info * Detected Little Endian byte order.)
CFLAGS += -D__BIG_ENDIAN__=0
else
$(info * Byte ordering (endianness) detection failed)
endif
CFLAGS += -I $(FACIL_INCLUDE_DIR)
LDFLAGS += -L $(FACIL_LIB_DIR)
LIBS += -l facil
all: wscat wspppd
wspppd: wspppd.c
$(CC) $(CFLAGS) $(LDFLAGS) $< -o $@ $(SOCKET_LIBS) $(LIBS)
clean:
rm -f *.o wscat wspppd
%: %.c
$(CC) $(CFLAGS) $(LDFLAGS) $< -o $@ $(LIBS)
%: %.o
$(CC) $(LDFLAGS) $< -o $@ $(LIBS)