mirror of
https://github.com/yanyiwu/cppjieba.git
synced 2025-07-18 00:00:12 +08:00
add cmakelists.txt
This commit is contained in:
parent
e55b65fd8a
commit
a44b04df20
@ -1,4 +1,4 @@
|
|||||||
PROJECT(CPPJIEBA)
|
PROJECT(CPPJIEBA)
|
||||||
ADD_SUBDIRECTORY(cppjieba)
|
ADD_SUBDIRECTORY(cppjieba)
|
||||||
ADD_SUBDIRECTORY(husky)
|
ADD_SUBDIRECTORY(husky)
|
||||||
ADD_SUBDIRECTORY(limonp)
|
ADD_SUBDIRECTORY(demo)
|
||||||
|
@ -1 +1,3 @@
|
|||||||
ADD_LIBRARY(cppjieba)
|
SET(LIBCPPJIEBA_SRC HMMSegment.cpp KeyWordExt.cpp MixSegment.cpp MPSegment.cpp Trie.cpp)
|
||||||
|
INCLUDE_DIRECTORIES(../limonp)
|
||||||
|
ADD_LIBRARY(cppjieba SHARED ${LIBCPPJIEBA_SRC})
|
||||||
|
@ -1,66 +0,0 @@
|
|||||||
CXX := g++
|
|
||||||
LD := g++
|
|
||||||
AR := ar rc
|
|
||||||
|
|
||||||
DEBUG_CXXFLAGS := -g -Wall -DDEBUG
|
|
||||||
RELEASE_CXXFLAGS := -Wall -O3
|
|
||||||
|
|
||||||
ifeq (YES, ${RELEASE})
|
|
||||||
CXXFLAGS := ${RELEASE_CXXFLAGS}
|
|
||||||
LDFLAGS := ${RELEASE_LDFLAGS}
|
|
||||||
else
|
|
||||||
CXXFLAGS := ${DEBUG_CXXFLAGS}
|
|
||||||
LDFLAGS := ${DEBUG_LDFLAGS}
|
|
||||||
endif
|
|
||||||
|
|
||||||
SOURCES := $(wildcard *.cpp)
|
|
||||||
OBJS := $(patsubst %.cpp,%.o,$(SOURCES))
|
|
||||||
|
|
||||||
INC := -I../limonp
|
|
||||||
|
|
||||||
LIBA := libcppjieba.a
|
|
||||||
|
|
||||||
# remove the objs after compilation
|
|
||||||
.INTERMEDIATE:
|
|
||||||
#.PHONY: clean $(CMLIB)
|
|
||||||
.PHONY: clean
|
|
||||||
|
|
||||||
all: $(LIBA)
|
|
||||||
|
|
||||||
# This is a suffix rule
|
|
||||||
#.c.o:
|
|
||||||
%.o: %.cpp
|
|
||||||
$(CXX) -c $(CXXFLAGS) $< $(INC)
|
|
||||||
|
|
||||||
|
|
||||||
${LIBA}: $(OBJS)
|
|
||||||
$(AR) $@ $(OBJS)
|
|
||||||
|
|
||||||
#unit test
|
|
||||||
Trie.ut: Trie.cpp Trie.h globals.h TransCode.cpp TransCode.hpp $(CMLIB)
|
|
||||||
$(CXX) -o $@ $(CXXFLAGS) Trie.cpp TransCode.cpp -DTRIE_UT $(CMLIB)
|
|
||||||
|
|
||||||
MPSegment.ut: MPSegment.cpp Trie.cpp MPSegment.h Trie.h globals.h $(CMLIB)
|
|
||||||
$(CXX) -o $@ $(CXXFLAGS) MPSegment.cpp Trie.cpp TransCode.cpp -DSEGMENT_UT $(CMLIB)
|
|
||||||
|
|
||||||
KeyWordExt.ut: KeyWordExt.cpp KeyWordExt.h MPSegment.h Trie.h globals.h TransCode.cpp TransCode.hpp $(CMLIB)
|
|
||||||
$(CXX) -o $@ $(CXXFLAGS) KeyWordExt.cpp MPSegment.cpp Trie.cpp TransCode.cpp -DKEYWORDEXT_UT $(CMLIB)
|
|
||||||
|
|
||||||
TransCode.ut: TransCode.cpp TransCode.hpp globals.h $(CMLIB)
|
|
||||||
$(CXX) -o $@ $(CXXFLAGS) TransCode.cpp -DCPPJIEBA_TRANSCODE_UT $(CMLIB)
|
|
||||||
HMMSegment.ut: HMMSegment.cpp TransCode.cpp TransCode.hpp HMMSegment.h $(CMLIB)
|
|
||||||
$(CXX) -o $@ $(CXXFLAGS) TransCode.cpp HMMSegment.cpp -DHMMSEGMENT_UT $(CMLIB)
|
|
||||||
MixSegment.ut: MixSegment.cpp MixSegment.h HMMSegment.cpp MPSegment.cpp Trie.cpp MPSegment.h Trie.h globals.h $(CMLIB)
|
|
||||||
$(CXX) -o $@ $(CXXFLAGS) MixSegment.cpp HMMSegment.cpp MPSegment.cpp Trie.cpp TransCode.cpp -DMIXSEGMENT_UT $(CMLIB)
|
|
||||||
ChineseFilter.ut: ChineseFilter.cpp ChineseFilter.hpp
|
|
||||||
$(CXX) -o $@ $(CXXFLAGS) ChineseFilter.cpp -DUT
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -f *.o *.d *.d.* *.ut $(LIBA)
|
|
||||||
|
|
||||||
sinclude $(SOURCES:.cpp=.d)
|
|
||||||
%.d:%.cpp
|
|
||||||
@set -e; rm -f $@; \
|
|
||||||
$(CXX) -MM $< > $@.$$$$; \
|
|
||||||
sed 's,\($*\).o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
|
|
||||||
rm -f $@.$$$$
|
|
8
demo/CMakeLists.txt
Normal file
8
demo/CMakeLists.txt
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
ADD_EXECUTABLE(segment.demo segment.cpp)
|
||||||
|
ADD_EXECUTABLE(server.demo server.cpp)
|
||||||
|
ADD_EXECUTABLE(keywordext.demo keywordext.cpp)
|
||||||
|
INCLUDE_DIRECTORIES(../limonp ../cppjieba ../husky)
|
||||||
|
LINK_DIRECTORIES(../cppjieba ../husky)
|
||||||
|
TARGET_LINK_LIBRARIES(segment.demo cppjieba)
|
||||||
|
TARGET_LINK_LIBRARIES(server.demo cppjieba husky -lpthread)
|
||||||
|
TARGET_LINK_LIBRARIES(keywordext.demo cppjieba)
|
@ -1,53 +0,0 @@
|
|||||||
CXX := g++
|
|
||||||
LD := g++
|
|
||||||
AR := ar rc
|
|
||||||
|
|
||||||
|
|
||||||
DEBUG_CXXFLAGS := -g -Wall -DDEBUG
|
|
||||||
RELEASE_CXXFLAGS := -Wall -O3
|
|
||||||
|
|
||||||
ifeq (YES, ${DEBUG})
|
|
||||||
CXXFLAGS := ${DEBUG_CXXFLAGS}
|
|
||||||
LDFLAGS := ${DEBUG_LDFLAGS}
|
|
||||||
else
|
|
||||||
CXXFLAGS := ${RELEASE_CXXFLAGS}
|
|
||||||
LDFLAGS := ${RELEASE_LDFLAGS}
|
|
||||||
endif
|
|
||||||
|
|
||||||
INCS := -I../limonp
|
|
||||||
LINK := -lpthread
|
|
||||||
|
|
||||||
SOURCES := $(wildcard *.cpp)
|
|
||||||
OBJS := $(patsubst %.cpp,%.o,$(SOURCES))
|
|
||||||
DEMOS := $(patsubst %.cpp,%.demo,$(SOURCES))
|
|
||||||
|
|
||||||
CPPJIEBADIR := ../cppjieba
|
|
||||||
LIBCPPJIEBA := $(CPPJIEBADIR)/libcppjieba.a
|
|
||||||
|
|
||||||
HUSKYDIR := ../husky
|
|
||||||
LIBHUSKYA := $(HUSKYDIR)/libhusky.a
|
|
||||||
|
|
||||||
.PHONY: clean $(LIBCPPJIEBA)
|
|
||||||
|
|
||||||
all: $(DEMOS)
|
|
||||||
|
|
||||||
%.demo: %.cpp $(LIBCPPJIEBA) $(LIBHUSKYA)
|
|
||||||
$(CXX) -o $@ $(CXXFLAGS) $^ $(INCS) $(LINK)
|
|
||||||
|
|
||||||
$(LIBCPPJIEBA):
|
|
||||||
cd $(CPPJIEBADIR) && $(MAKE)
|
|
||||||
|
|
||||||
$(LIBHUSKYA):
|
|
||||||
cd $(HUSKYDIR) && $(MAKE)
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -f *.o *.ut *.d *.d.* $(DEMOS)
|
|
||||||
cd $(CPPJIEBADIR) && make clean
|
|
||||||
cd $(HUSKYDIR) && make clean
|
|
||||||
|
|
||||||
sinclude $(SOURCES:.cpp=.d)
|
|
||||||
%.d:%.cpp
|
|
||||||
@set -e; rm -f $@; \
|
|
||||||
$(CXX) -MM $< > $@.$$$$; \
|
|
||||||
sed 's,\($*\).o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
|
|
||||||
rm -f $@.$$$$
|
|
3
husky/CMakeLists.txt
Normal file
3
husky/CMakeLists.txt
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
SET(LIBHUSKY_SRC Daemon.cpp ServerFrame.cpp)
|
||||||
|
INCLUDE_DIRECTORIES(../limonp)
|
||||||
|
ADD_LIBRARY(husky SHARED ${LIBHUSKY_SRC})
|
@ -1,42 +0,0 @@
|
|||||||
CXX := g++
|
|
||||||
LD := g++
|
|
||||||
AR := ar rc
|
|
||||||
|
|
||||||
DEBUG_CXXFLAGS := -g -Wall -DDEBUG
|
|
||||||
RELEASE_CXXFLAGS := -Wall -O3
|
|
||||||
|
|
||||||
ifeq (YES, ${RELEASE})
|
|
||||||
CXXFLAGS := ${RELEASE_CXXFLAGS}
|
|
||||||
LDFLAGS := ${RELEASE_LDFLAGS}
|
|
||||||
else
|
|
||||||
CXXFLAGS := ${DEBUG_CXXFLAGS}
|
|
||||||
LDFLAGS := ${DEBUG_LDFLAGS}
|
|
||||||
endif
|
|
||||||
|
|
||||||
DOLINK := $(LD) $(LDFLAGS) -o $@ $^
|
|
||||||
DOPACK := $(AR)
|
|
||||||
SOURCES = $(wildcard *.cpp)
|
|
||||||
OBJS := $(patsubst %.cpp,%.o,$(SOURCES))
|
|
||||||
|
|
||||||
INC := -I../limonp
|
|
||||||
LIBA := libhusky.a
|
|
||||||
|
|
||||||
.PHONY: clean
|
|
||||||
|
|
||||||
all: $(LIBA)
|
|
||||||
|
|
||||||
%.o: %.cpp
|
|
||||||
$(CXX) -c $(CXXFLAGS) $< $(INC)
|
|
||||||
|
|
||||||
${LIBA}: $(OBJS)
|
|
||||||
$(DOPACK) $@ $(OBJS)
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -f *.o *.d *.d.* $(LIBA)
|
|
||||||
|
|
||||||
sinclude $(SOURCES:.cpp=.d)
|
|
||||||
%.d:%.cpp
|
|
||||||
@set -e; rm -f $@; \
|
|
||||||
$(CXX) -MM $< > $@.$$$$; \
|
|
||||||
sed 's,\($*\).o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
|
|
||||||
rm -f $@.$$$$
|
|
Loading…
x
Reference in New Issue
Block a user