--- library/Makefile +++ library/Makefile @@ -22,9 +22,7 @@ CFLAGS += -fPIC endif -SONAME=libpolarssl.so.5 - -DLEXT=so.5 +DLEXT=so # OSX shared library extension: # DLEXT=dylib @@ -34,6 +32,13 @@ LDFLAGS += -lws2_32 endif +VERSION=0.0.0 +VERSION_MAJOR=$(word 1,$(subst ., ,$(VERSION))) +VERSION_MINOR=$(word 2,$(subst ., ,$(VERSION))) +LIB_SO=libpolarssl.$(DLEXT) +LIB_SO_VERSION=$(LIB_SO).$(VERSION) +LIB_SO_SONAME=$(LIB_SO).$(VERSION_MAJOR).$(VERSION_MINOR) + OBJS= aes.o arc4.o asn1parse.o \ asn1write.o base64.o bignum.o \ blowfish.o camellia.o \ @@ -61,7 +66,7 @@ static: libpolarssl.a -shared: libpolarssl.$(DLEXT) libpolarssl.so +shared: $(LIB_SO_VERSION) libpolarssl.a: $(OBJS) echo " AR $@" @@ -69,13 +74,11 @@ echo " RL $@" $(AR) s $@ -libpolarssl.${DLEXT}: libpolarssl.a +$(LIB_SO_VERSION): $(OBJS) echo " LD $@" - $(CC) ${LDFLAGS} -shared -Wl,-soname,$(SONAME) -o $@ $(OBJS) - -libpolarssl.so: libpolarssl.${DLEXT} - echo " LN $@ -> libpolarssl.${DLEXT}" - ln -sf libpolarssl.${DLEXT} $@ + $(CC) ${LDFLAGS} -shared -Wl,-soname,$(LIB_SO_SONAME) -o $@ $(OBJS) \ + && ln -fs $@ $(LIB_SO_SONAME) \ + && ln -fs $(LIB_SO_SONAME) $(LIB_SO) libpolarssl.dylib: libpolarssl.a echo " LD $@"