#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)