diff --git a/Makefile b/Makefile index 13296f4..8cdeaa7 100644 --- a/Makefile +++ b/Makefile @@ -3,7 +3,7 @@ INCLUDE_DIR = ${PREFIX}/include LIBRARY_DIR = ${PREFIX}/lib export LIBRARY_NAME = amqpcpp export SONAME = 2.2 -export VERSION = 2.2.1 +export VERSION = 2.2.3 all: $(MAKE) -C src all @@ -17,6 +17,9 @@ static: shared: $(MAKE) -C src shared +static_fpic: + $(MAKE) -C src static_fpic + clean: $(MAKE) -C src clean @@ -25,8 +28,9 @@ install: mkdir -p ${LIBRARY_DIR} cp -f $(LIBRARY_NAME).h ${INCLUDE_DIR} cp -f include/*.h ${INCLUDE_DIR}/$(LIBRARY_NAME) - cp -f src/lib$(LIBRARY_NAME).so.$(VERSION) ${LIBRARY_DIR} - cp -f src/lib$(LIBRARY_NAME).a.$(VERSION) ${LIBRARY_DIR} + -cp -f src/lib$(LIBRARY_NAME).so.$(VERSION) ${LIBRARY_DIR} + -cp -f src/lib$(LIBRARY_NAME).a.$(VERSION) ${LIBRARY_DIR} + -cp -f src/lib$(LIBRARY_NAME)_fpic.a ${LIBRARY_DIR} ln -s -f $(LIBRARY_DIR)/lib$(LIBRARY_NAME).so.$(VERSION) $(LIBRARY_DIR)/lib$(LIBRARY_NAME).so.$(SONAME) ln -s -f $(LIBRARY_DIR)/lib$(LIBRARY_NAME).so.$(VERSION) $(LIBRARY_DIR)/lib$(LIBRARY_NAME).so ln -s -f $(LIBRARY_DIR)/lib$(LIBRARY_NAME).a.$(VERSION) $(LIBRARY_DIR)/lib$(LIBRARY_NAME).a diff --git a/src/Makefile b/src/Makefile index 1c9b188..10b81ca 100644 --- a/src/Makefile +++ b/src/Makefile @@ -1,11 +1,12 @@ -CPP = g++ -RM = rm -f -CPPFLAGS = -Wall -c -I. -flto -std=c++11 -LD = g++ -LD_FLAGS = -Wall -shared -SHARED_LIB = lib$(LIBRARY_NAME).so.$(VERSION) -STATIC_LIB = lib$(LIBRARY_NAME).a.$(VERSION) -SOURCES = $(wildcard *.cpp) +CPP = g++ +RM = rm -f +CPPFLAGS = -Wall -c -I. -std=c++11 +LD = g++ +LD_FLAGS = -Wall -shared +SHARED_LIB = lib$(LIBRARY_NAME).so.$(VERSION) +STATIC_LIB = lib$(LIBRARY_NAME).a.$(VERSION) +STATIC_FPIC_LIB = lib$(LIBRARY_NAME)_fpic.a +SOURCES = $(wildcard *.cpp) SHARED_OBJECTS = $(SOURCES:%.cpp=%.o) STATIC_OBJECTS = $(SOURCES:%.cpp=%.s.o) @@ -29,12 +30,17 @@ shared: ${SHARED_OBJECTS} ${SHARED_LIB} static: ${STATIC_OBJECTS} ${STATIC_LIB} +static_fpic: ${STATIC_FPIC_LIB} ${SHARED_OBJECTS} + ${SHARED_LIB}: ${SHARED_OBJECTS} ${LD} ${LD_FLAGS} -Wl,${SONAMEPARAMETER},lib$(LIBRARY_NAME).so.$(SONAME) -o $@ ${SHARED_OBJECTS} ${STATIC_LIB}: ${STATIC_OBJECTS} ar rcs ${STATIC_LIB} ${STATIC_OBJECTS} +${STATIC_FPIC_LIB}: ${SHARED_OBJECTS} + ar rcs ${STATIC_FPIC_LIB} ${SHARED_OBJECTS} + clean: ${RM} *.obj *~* ${SHARED_OBJECTS} ${STATIC_OBJECTS} ${SHARED_LIB} ${STATIC_LIB}