- Modified Makefiles to produce a shared library - Added SingletonDll Makefile git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@581 7ec92016-0320-0410-acc4-a06ded1c099a
40 lines
1.1 KiB
Makefile
Executable file
40 lines
1.1 KiB
Makefile
Executable file
SRC = $(wildcard *.cpp)
|
|
STATIC_OBJ = $(SRC:.cpp=.o)
|
|
SHARED_OBJ = $(SRC:.cpp=.lo)
|
|
|
|
LOKI_VERSION = 0.1.4
|
|
|
|
STATIC_LIB = ../lib/libloki.a
|
|
SHARED_LIB = ../lib/libloki.so.$(LOKI_VERSION)
|
|
CXXFLAGS = -Wall -Wold-style-cast -Wundef -Wsign-compare -Wconversion -Wpointer-arith -pedantic -O2
|
|
CPPFLAGS = -I../include -DNDEBUG
|
|
|
|
$(STATIC_LIB): $(STATIC_OBJ)
|
|
ar rs $(STATIC_LIB) $(STATIC_OBJ)
|
|
|
|
$(SHARED_LIB): $(SHARED_OBJ)
|
|
g++ --shared -Wl,-soname=libloki.so.$(LOKI_VERSION) -o $(SHARED_LIB) $(SHARED_OBJ)
|
|
|
|
%.lo : %.cpp
|
|
$(CXX) -c $(CXXFLAGS) -fPIC $(CPPFLAGS) -o $@ $<
|
|
|
|
.PHONY: build-static build-shared install-static install-shared clean-tmp clean
|
|
build-static: $(STATIC_LIB)
|
|
build-shared: $(SHARED_LIB)
|
|
|
|
install-static: $(STATIC_LIB)
|
|
mkdir -p $(DESTDIR)/usr/lib
|
|
install -m 644 $(STATIC_LIB) $(DESTDIR)/usr/lib
|
|
|
|
install-shared: $(SHARED_LIB)
|
|
mkdir -p $(DESTDIR)/usr/lib
|
|
install -m 644 -s $(SHARED_LIB) $(DESTDIR)/usr/lib
|
|
cd $(DESTDIR)/usr/lib/; ln -s libloki.so.$(LOKI_VERSION) libloki.so
|
|
|
|
clean-tmp:
|
|
rm -f $(STATIC_OBJ)
|
|
rm -f $(SHARED_OBJ)
|
|
|
|
clean: clean-tmp
|
|
rm -f $(STATIC_LIB)
|
|
rm -f $(SHARED_LIB)
|