| | |
| | | # Makefile for common library. |
| | | # |
| | | ROOT=.. |
| | | PLATFORM=$(shell $(ROOT)/systype.sh) |
| | | INCLUDE+=-I./ -I./include -I$(ROOT)/common/include |
| | | LIBCOMMON=$(ROOT)/common/libusgcommon.a |
| | | LIBSQUEUE = libsqueue.a |
| | | DLIBSQUEUE = libsqueue.so |
| | | LDLIBS =-L$(ROOT)/common -lusgcommon $(EXTRALIBS) |
| | | #LDLIBS+=-Wl,-rpath=$(ROOT)/common:$(ROOT)/lib/jsoncpp |
| | | # 开源工具包路径 |
| | | #LDDIR += -L$(ROOT)/lib/jsoncpp -L$(ROOT)/lib/nng |
| | | |
| | | # 开源工具包 |
| | | #LDLIBS += -ljsoncpp -lnng -lpthread |
| | | |
| | | #INCLUDE += -I$(ROOT)/device/include |
| | | |
| | | PLATFORM=$(shell $(ROOT)/systype.sh) |
| | | include $(ROOT)/Make.defines.$(PLATFORM) |
| | | |
| | | LIBSQUEUE = libsqueue.a |
| | | DLIBSQUEUE = libsqueue.so |
| | | |
| | | OBJS = mm.o pcsem.o hashtable.o |
| | | SOURCES := $(wildcard *.c) |
| | | OBJS = $(patsubst %.c, %.o, $(SOURCES)) |
| | | |
| | | all: $(LIBSQUEUE) |
| | | MYLIBS = $(LIBSQUEUE) |
| | | |
| | | mm.o: $(LIBCOMMON) |
| | | all: build |
| | | |
| | | |
| | | pcsem.o: $(LIBCOMMON) |
| | | |
| | | test: $(OBJS) $(LIBCOMMON) |
| | | |
| | | build: $(MYLIBS) |
| | | |
| | | #static lib |
| | | $(LIBSQUEUE): $(OBJS) $(LIBCOMMON) |
| | | $(LIBSQUEUE): $(OBJS) |
| | | $(AR) rv $@ $? |
| | | $(RANLIB) $@ |
| | | |
| | | #dynamic lib |
| | | $(DLIBSQUEUE): $(OBJS) $(LIBCOMMON) |
| | | $(CC) -fPIC -shared -o $@ $^ |
| | | $(DLIBSQUEUE): $(SOURCES) |
| | | rm -f *.o |
| | | $(CC) -fPIC -shared $(CFLAGS) $^ -o $@ $(LDFLAGS) |
| | | |
| | | |
| | | #PREFIX is environment variable, but if it is not set, then set default value |
| | | ifeq ($(PREFIX),) |
| | |
| | | endif |
| | | |
| | | # 使用方式: g++ test1.c -lcommon |
| | | install: $(DLIBSQUEUE) $(LIBSQUEUE) |
| | | sudo install -d $(PREFIX)/lib/ |
| | | sudo install -m 644 $^ $(PREFIX)/lib/ |
| | | sudo install -d $(PREFIX)/include/ |
| | | sudo install -m 644 include/* $(PREFIX)/include/ |
| | | install: $(MYLIBS) |
| | | install -d $(PREFIX)/lib/ |
| | | install -m 644 $^ $(PREFIX)/lib/ |
| | | install -d $(PREFIX)/include/ |
| | | install -m 644 include/* $(PREFIX)/include/ |
| | | |
| | | clean: |
| | | rm -f *.o a.out core temp.* *.a *.so |
| | | rm -f $(TEMPFILES) |
| | | |
| | | |
| | | |
| | | include $(ROOT)/Make.common.inc |
| | | .PHONY: build clean install |