summaryrefslogtreecommitdiff
path: root/src/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'src/Makefile')
-rw-r--r--src/Makefile59
1 files changed, 59 insertions, 0 deletions
diff --git a/src/Makefile b/src/Makefile
new file mode 100644
index 0000000..c244e92
--- /dev/null
+++ b/src/Makefile
@@ -0,0 +1,59 @@
+#CC=gcc
+CC=g++
+CCC=g++
+
+ifeq ($(type), $(TYPE_ACCESS))
+TARGET=flowood_access
+else
+TARGET=flowood_forward.so
+endif
+
+CFLAGS += -g -fPIC -D_GNU_SOURCE=1 -D_BSD_SOURCE=1 -D__USE_MISC=1 -D__FAVOR_BSD=1 -D__USE_BSD=1
+
+H_DIR=-I../inc
+H_DIR+=-I/opt/MESA/include
+H_DIR+=-I/opt/MESA/include/MESA
+
+LIBPATH=../lib
+LIB=-L/opt/MESA/lib -lpthread -ldl -lMESA_handle_logger -lMESA_htable -lMESA_prof_load
+
+COMMON_OBJS=flowood_main.o common/flwd_common_stack.o common/flwd_sendpacket.o common/flwd_status.o
+COMMON_OBJS += common/flwd_common_tool.o
+COMMON_OBJS += common/flwd_compat_marsio_hash.o
+COMMON_OBJS += common/linux_jhash_algo.o
+COMMON_OBJS += common/flwd_arp.o
+COMMON_OBJS += common/flwd_common_hash.o
+COMMON_OBJS += packet_io/flwd_packet_io.o
+
+ACC_OBJS = access/flowood_access.o
+ACC_OBJS += access/flwd_access_ip_layer.o
+ACC_OBJS += access/flwd_access_active_ip_manage.o
+ACC_OBJS += access/flwd_access_idle_call.o
+ACC_OBJS += access/flwd_access_maat.o
+ACC_OBJS += common/flwd_common_maat.o
+ACC_OBJS += common/flwd_network_connect.o
+ACC_OBJS += ../lib/libltsm.a
+
+FWD_OBJS = forward/flowood_forward.o
+FWD_OBJS += forward/flwd_fwd_idle_call.o
+
+all:$(TARGET)
+
+.c.o:
+ $(CCC) -c $(CFLAGS) -I. $(H_DIR) $<
+
+.cpp.o:
+ $(CCC) -c $(CFLAGS) -I. $(H_DIR) $<
+
+flowood_access: $(COMMON_OBJS) $(ACC_OBJS)
+ (rm -f $@; $(CC) -o $@ -Wl,--export-dynamic $(CFLAGS) $^ $(LIB) -lmaatframe ; cp $@ ../bin;)
+
+#flowood_forward: $(COMMON_OBJS) $(FWD_OBJS)
+ #(rm -f $@; $(CC) -o $@ -Wl,--export-dynamic $(CFLAGS) $^ $(LIB); cp $@ ../bin;)
+
+flowood_forward.so: $(COMMON_OBJS) $(FWD_OBJS)
+ (rm -f $@; $(CC) -o $@ -shared $(CFLAGS) $^ $(LIB); cp $@ /opt/MESA/lib)
+
+
+clean:
+ rm -f *.o access/*.o common/*.o packet_io/*.o forward/*.o $(TARGET)