summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQiuwen Lu <[email protected]>2016-05-10 23:38:42 +0800
committerQiuwen Lu <[email protected]>2016-05-11 14:27:14 +0800
commit804c4819b899a0e78b093b9e9a54795efa26776b (patch)
treea681517401f7820d7453fa936c24624be330aaed
parent2c0e6cfd58f21e155d4e398026420639575cda9f (diff)
去除Makefile编译系统,完全改用CMake编译。根目录的Makefile调用CMake
-rw-r--r--Makefile164
-rw-r--r--driver/Makefile44
-rw-r--r--logreader/Makefile49
-rw-r--r--logreader/dlogreader/Makefile40
-rw-r--r--logreader/ethreader/Makefile34
-rw-r--r--support/Makefile19
-rw-r--r--worker/Makefile48
7 files changed, 43 insertions, 355 deletions
diff --git a/Makefile b/Makefile
index 0d53114..cf77eb7 100644
--- a/Makefile
+++ b/Makefile
@@ -1,121 +1,43 @@
-#######################################################
-# Project: Serial-Multiprocess Project
-# Version: 1.1.0
-# Author: Lu Qiuwen<[email protected]>
-# Date: 2014-12-11
-#######################################################
-
-#######################################################
-
-OPTFLAGS = -O2
-QUITE = 1
-MODULES_VLAN_DMAC = 0
-MODULES_ENERGY = 1
-MODULES_STATS = 1
-MODULES_WATCHDOG = 1
-
-#######################################################
-# Toolchain Options
-
-CC = gcc
-CXX = g++
-LD = ld
-AS = as
-AR = ar
-
-######################################################
-
-DPDK_ROOT = $(RTE_SDK)
-DPDK_TARGET = $(RTE_TARGET)
-APP_ROOT = $(CURDIR)
-MK_ROOT = $(CURDIR)/mk
-INSTALL = $(CURDIR)/build
-LIB_INSTALL = /usr/lib
-GITVER = $(shell git describe --long)
-
-include mk/config.mk
-
-export CC
-export CXX
-export LD
-export AS
-export AR
-
-export EXTRA_CFLAGS
-export EXTRA_LDFLAGS
-
-export OPTFLAGS
-export QUITE
-export MODULES_VLAN_DMAC
-export MODULES_ENERGY
-export MODULES_STATS
-export MODULES_WATCHDOG
-
-export RTE_SDK
-export RTE_TARGET
-export RTE_IBV_INSTALL
-
-export DPDK_SDK
-export DPDK_TARGET
-export APP_ROOT
-export MK_ROOT
-export INSTALL
-export LIB_INSTALL
-export GITVER
-
-WORKER = worker
-DRIVER = driver
-SUPPORT = support
-TOOLS = tools
-LOGREADER = logreader
-TEST = test
-
-ifeq ($(RTE_SDK),)
-$(error "Please define RTE_SDK environment variable")
-endif
-
-ifeq ($(RTE_TARGET),)
-$(error "Please define RTE_TARGET environment variable")
-endif
-
-
-.PHONY: install clean
-
-all:
- make -C $(SUPPORT)
- make -C $(WORKER)
- make -C $(DRIVER)
- make -C $(LOGREADER)
-
-clean:
- make -C $(SUPPORT) clean
- make -C $(WORKER) clean
- make -C $(DRIVER) clean
- make -C $(LOGREADER) clean
- make -C $(TEST) clean
-
-install:
- make -C $(WORKER) install
- make -C $(DRIVER) install
- make -C $(TOOLS) install
- make -C $(LOGREADER) install
-
-distclean:
- make -C $(WORKER) distclean
- make -C $(DRIVER) distclean
- make -C $(LOGREADER) distclean
- make -C $(TEST) distclean
-
-test:
- make -C $(TEST)
- make -C $(TEST) install
-
-dpdk:
-
-ifeq ($(CONFIG_RTE_LIBRTE_MLX4_PMD)$(CONFIG_RTE_LIBRTE_RSYS),y)
- export EXTRA_CFLAGS="-g -fPIC -I$(RTE_IBV_INSTALL)/usr/local/include" && \
- export EXTRA_LDFLAGS="-L$(RTE_IBV_INSTALL)/usr/local/lib" &&\
- cd $(RTE_SDK) && $(MAKE) install T=$(RTE_TARGET)
-else
- export EXTRA_CFLAGS="-g -fPIC" && cd $(RTE_SDK) && $(MAKE) install T=$(DPDK_TARGET)
-endif
+ifeq ($(RTE_SDK),)
+$(error "Please define RTE_SDK environment variable")
+endif
+
+ifeq ($(RTE_TARGET),)
+$(error "Please define RTE_TARGET environment variable")
+endif
+
+BUILD_DIR = $(CURDIR)/build
+LOCAL_DIR = $(CURDIR)
+DEBUG_FLAGS = -DCMAKE_BUILD_TYPE=Debug
+REL_FLAGS = -DCMAKE_BUILD_TYPE=Release
+
+ifneq ($(INSTALL_PREFIX),)
+DEBUG_FLAGS += -DCMAKE_INSTALL_PREFIX=$(INSTALL_PREFIX)
+REL_FLAGS += -DCMAKE_INSTALL_PREFIX=$(INSTALL_PREFIX)
+endif
+
+all: _make_build_dir _compile_rel
+
+PHONY: all _make_build_dir _compile_debug _compile_rel _install \
+ build_release build_debug install
+
+_make_build_dir:
+ mkdir -p $(BUILD_DIR)
+
+_compile_debug:
+ cd $(BUILD_DIR) && cmake $(LOCAL_DIR) $(DEBUG_FLAGS) && make
+
+_compile_rel:
+ cd $(BUILD_DIR) && cmake $(LOCAL_DIR) $(REL_FLAGS) && make
+
+_install:
+ cd $(BUILD_DIR) && make install
+_dpdk:
+ export EXTRA_CFLAGS="-g -fPIC" && cd $(RTE_SDK) && $(MAKE) install T=$(RTE_TARGET)
+
+# Release Version, No Debug Symbol and Optimized with -O2
+build_release: _make_build_dir _compile_rel
+# Debug Version, Optimized with -O0
+build_debug: _make_build_dir _compile_debug
+# Install
+install: _install \ No newline at end of file
diff --git a/driver/Makefile b/driver/Makefile
deleted file mode 100644
index 263bd89..0000000
--- a/driver/Makefile
+++ /dev/null
@@ -1,44 +0,0 @@
-
-include $(MK_ROOT)/config.mk
-
-ifeq ($(MODULES_STATS),0)
- MODULES_CFAGS += -DAPP_STAT=0
-endif
-
-ifneq ($(GITVER),)
- CFLAGS += -DGITVER=\"$(GITVER)\"
-endif
-
-TARGET = driver
-MAJOR_VERSION = 1
-SUB_VERSION = 1
-
-DIR_INC = -I$(APP_ROOT)/include/MESA -I$(APP_ROOT)/include/serial
-DIR_SRC = ./
-DIR_OBJ = ./
-DIR_BIN = ./
-DIR_LIB = $(APP_ROOT)/lib/
-
-MODULES += $(APP_ROOT)/lib/libMESA_prof_load.a
-
-CC ?= gcc
-SRC = $(wildcard ${DIR_SRC}/*.c)
-OBJ = $(patsubst %.c,${DIR_OBJ}/%.o,$(notdir ${SRC}))
-LDFLAG += $(DPDK_LDFLAGS) -lrt -lpthread -ldl $(EXTRA_LDFLAGS)
-CFLAGS += $(DPDK_CFLAGS) -g -fPIC ${OPTFLAGS} ${DIR_INC} -L${DIR_LIB} -std=gnu99
-
-${TARGET}:${OBJ}
- ${CC} ${LDFLAG} -o $@ ${OBJ} ${MODULES}
-${DIR_OBJ}/%.o:${DIR_SRC}/%.c
- ${CC} ${CFLAGS} -c $< -o $@
-
-.PHONY:install clean
-
-all: $(TARGET)
-
-clean:
- rm -f *.o
-install:
- install -m 0755 ${TARGET} ${INSTALL}
-distclean: clean
- rm -f ${TARGET}
diff --git a/logreader/Makefile b/logreader/Makefile
deleted file mode 100644
index 60530cf..0000000
--- a/logreader/Makefile
+++ /dev/null
@@ -1,49 +0,0 @@
-#######################################################
-# Project: Serial-Multiprocess Project
-# Version: 1.1.0
-# Author: Lu Qiuwen<[email protected]>
-# Date: 2014-12-11
-#######################################################
-
-LOGREADER=dlogreader
-ETHREADER=ethreader
-
-export CC
-export CXX
-export LD
-export AS
-export AR
-
-export EXTRA_CFLAGS
-export EXTRA_LDFLAGS
-
-export OPTFLAGS
-export QUITE
-export MODULES_VLAN_DMAC
-export MODULES_ENERGY
-export MODULES_STATS
-export MODULES_WATCHDOG
-
-export RTE_SDK
-export RTE_TARGET
-export APP_ROOT
-export MK_ROOT
-export INSTALL
-export LIB_INSTALL
-
-.PHONY: install clean
-
-all:
- cd $(LOGREADER) && $(MAKE)
- cd $(ETHREADER) && $(MAKE)
-
-clean:
- cd $(LOGREADER) && $(MAKE) clean
- cd $(ETHREADER) && $(MAKE) clean
-
-install:
- cd $(LOGREADER) && $(MAKE) install
- cd $(ETHREADER) && $(MAKE) install
-distclean:
- cd $(LOGREADER) && $(MAKE) distclean
- cd $(ETHREADER) && $(MAKE) distclean
diff --git a/logreader/dlogreader/Makefile b/logreader/dlogreader/Makefile
deleted file mode 100644
index 803b29d..0000000
--- a/logreader/dlogreader/Makefile
+++ /dev/null
@@ -1,40 +0,0 @@
-
-ifeq ($(MODULES_STATS),0)
- MODULES_CFAGS += -DAPP_STAT=0
-endif
-
-include $(MK_ROOT)/config.mk
-
-TARGET = dlogreader
-MAJOR_VERSION = 1
-SUB_VERSION = 1
-
-DIR_INC = -I$(APP_ROOT)/include/MESA -I$(APP_ROOT)/include/serial
-DIR_SRC = ./
-DIR_OBJ = ./
-DIR_BIN = ./
-DIR_LIB = $(APP_ROOT)/lib/
-
-MODULES += $(APP_ROOT)/lib/libMESA_prof_load.a
-
-CC ?= gcc
-SRC = $(wildcard ${DIR_SRC}/*.c)
-OBJ = $(patsubst %.c,${DIR_OBJ}/%.o,$(notdir ${SRC}))
-LDFLAG += $(DPDK_LDFLAGS) -lrt -lpthread -ldl
-CFLAGS += $(DPDK_CFLAGS) -g -fPIC ${OPTFLAGS} ${DIR_INC} -L${DIR_LIB} -std=gnu99 -include ${DPDK_CONFIG} $(MODULES_CFAGS)
-
-${TARGET}:${OBJ}
- ${CC} ${LDFLAG} -o $@ ${OBJ} ${MODULES}
-${DIR_OBJ}/%.o:${DIR_SRC}/%.c
- ${CC} ${CFLAGS} -c $< -o $@
-
-.PHONY:install clean
-
-all: $(TARGET)
-
-clean:
- rm -f *.o
-install:
- cp -f ${TARGET} ${INSTALL}
-distclean: clean
- rm -f ${TARGET}
diff --git a/logreader/ethreader/Makefile b/logreader/ethreader/Makefile
deleted file mode 100644
index a5be846..0000000
--- a/logreader/ethreader/Makefile
+++ /dev/null
@@ -1,34 +0,0 @@
-
-include $(MK_ROOT)/config.mk
-
-TARGET = ethreader
-MAJOR_VERSION = 1
-SUB_VERSION = 1
-
-DIR_INC = -I$(APP_ROOT)/include/MESA -I$(APP_ROOT)/include/serial
-DIR_SRC = ./
-DIR_OBJ = ./
-DIR_BIN = ./
-DIR_LIB = $(APP_ROOT)/lib/
-
-CC ?= gcc
-SRC = $(wildcard ${DIR_SRC}/*.c)
-OBJ = $(patsubst %.c,${DIR_OBJ}/%.o,$(notdir ${SRC}))
-LDFLAG += $(DPDK_LDFLAGS) -lrt -lpthread -ldl
-CFLAGS += $(DPDK_CFLAGS) -g -fPIC ${OPTFLAGS} ${DIR_INC} -L${DIR_LIB} -std=gnu99 $(MODULES_CFAGS)
-
-${TARGET}:${OBJ}
- ${CC} ${LDFLAG} -o $@ ${OBJ} ${MODULES}
-${DIR_OBJ}/%.o:${DIR_SRC}/%.c
- ${CC} ${CFLAGS} -c $< -o $@
-
-.PHONY:install clean
-
-all: $(TARGET)
-
-clean:
- rm -f *.o
-install:
- cp -f ${TARGET} ${INSTALL}
-distclean: clean
- rm -f ${TARGET}
diff --git a/support/Makefile b/support/Makefile
deleted file mode 100644
index 655a87e..0000000
--- a/support/Makefile
+++ /dev/null
@@ -1,19 +0,0 @@
-export OPTFLAGS
-export QUITE
-export MODULES_VLAN_DMAC
-export MODULES_ENERGY
-export MODULES_STATS
-export MODULES_WATCHDOG
-
-export DPDK_ROOT
-export DPDK_TARGET
-export APP_ROOT
-export INSTALL
-export LIB_INSTALL
-
-.PHONY:all install clean
-
-all:
- cd MESA_prof_load && $(MAKE)
-clean:
- cd MESA_prof_load && $(MAKE) clean
diff --git a/worker/Makefile b/worker/Makefile
deleted file mode 100644
index 6c8a539..0000000
--- a/worker/Makefile
+++ /dev/null
@@ -1,48 +0,0 @@
-
-include $(MK_ROOT)/config.mk
-
-ifneq ($(GITVER),)
- CFLAGS += -DGITVER=\"$(GITVER)\"
-endif
-
-MAJOR_VERSION = 1
-SUB_VERSION = 1
-
-DIR_INC = -I$(APP_ROOT)/include/MESA -I$(APP_ROOT)/include/serial
-DIR_SRC = ./
-DIR_OBJ = ./
-DIR_BIN = ./
-DIR_LIB = $(APP_ROOT)/lib/
-
-MODULES += $(APP_ROOT)/lib/libMESA_prof_load.a
-
-SRC = $(wildcard ${DIR_SRC}/*.c)
-OBJ = $(patsubst %.c,%.o,$(notdir ${SRC}))
-
-BSNAME = libnl2fwd.so
-TARGET = libnl2fwd.so.${MAJOR_VERSION}.${SUB_VERSION}
-SONAME = libnl2fwd.so.${MAJOR_VERSION}
-SOFILE = ${DIR_BIN}/${TARGET}
-
-LDFLAG = $(DPDK_LDFLAGS) -lpthread -lrt -lm -lpcap -lnet -ldl
-CC ?= gcc
-CFLAGS = -g -fPIC $(DPDK_CFLAGS) $(OPTFLAGS) $(DIR_INC) -L${DIR_LIB} -std=gnu99
-
-
-${SOFILE}:${OBJ}
- ${CC} --shared -fPIC -Wl,-soname,${SONAME} ${LDFLAG} -o $@ -Wl,--whole-archive ${OBJ} ${MODULES} -Wl,--no-whole-archive
-${DIR_OBJ}/%.o:${DIR_SRC}/%.c
- ${CC} ${CFLAGS} -c $< -o $@
-
-.PHONY:install clean
-
-install:
- install -d ${LIB_INSTALL}
- install -p -D -m 0755 ${TARGET} ${LIB_INSTALL}
- -ln -s -f ${LIB_INSTALL}/${TARGET} ${LIB_INSTALL}/${SONAME}
- -ln -s -f ${LIB_INSTALL}/${SONAME} ${LIB_INSTALL}/${BSNAME}
- -ldconfig
-clean:
- rm -f *.o
-distclean: clean
- rm -f $(TARGET)