Merge pull request #3 from lukeyeager/semver

Use semantic versioning
This commit is contained in:
Nathan Luehr 2015-12-18 13:22:19 -08:00
commit 4807909e3f

View File

@ -55,7 +55,9 @@ MPIFLAGS := -I$(MPI_HOME)/include -L$(MPI_HOME)/lib -lmpi
INCEXPORTS := nccl.h INCEXPORTS := nccl.h
LIBSRCFILES := libwrap.cu core.cu all_gather.cu all_reduce.cu broadcast.cu reduce.cu reduce_scatter.cu LIBSRCFILES := libwrap.cu core.cu all_gather.cu all_reduce.cu broadcast.cu reduce.cu reduce_scatter.cu
LIBNAME := libnccl.so LIBNAME := libnccl.so
APIVER := 0 VER_MAJOR := 1
VER_MINOR := 0
VER_PATCH := 0
TESTS := all_gather_test all_reduce_test broadcast_test reduce_test reduce_scatter_test TESTS := all_gather_test all_reduce_test broadcast_test reduce_test reduce_scatter_test
MPITESTS := mpi_test MPITESTS := mpi_test
@ -66,7 +68,8 @@ TSTDIR := $(BUILDDIR)/test
MPITSTDIR := $(BUILDDIR)/mpitest MPITSTDIR := $(BUILDDIR)/mpitest
INCTARGETS := $(patsubst %, $(INCDIR)/%, $(INCEXPORTS)) INCTARGETS := $(patsubst %, $(INCDIR)/%, $(INCEXPORTS))
LIBTARGET := $(patsubst %, $(LIBDIR)/%.$(APIVER), $(LIBNAME)) LIBSONAME := $(patsubst %,%.$(VER_MAJOR),$(LIBNAME))
LIBTARGET := $(patsubst %,%.$(VER_MAJOR).$(VER_MINOR).$(VER_PATCH),$(LIBNAME))
LIBLINK := $(patsubst lib%.so, -l%, $(LIBNAME)) LIBLINK := $(patsubst lib%.so, -l%, $(LIBNAME))
LIBOBJ := $(patsubst %.cu, $(OBJDIR)/%.o, $(filter %.cu, $(LIBSRCFILES))) LIBOBJ := $(patsubst %.cu, $(OBJDIR)/%.o, $(filter %.cu, $(LIBSRCFILES)))
TESTBINS := $(patsubst %, $(TSTDIR)/%, $(TESTS)) TESTBINS := $(patsubst %, $(TSTDIR)/%, $(TESTS))
@ -80,8 +83,9 @@ lib : $(INCTARGETS) $(LIBTARGET)
$(LIBTARGET) : $(LIBOBJ) $(LIBTARGET) : $(LIBOBJ)
@printf "Linking %-25s\n" $@ @printf "Linking %-25s\n" $@
@mkdir -p $(LIBDIR) @mkdir -p $(LIBDIR)
@$(GPP) $(CPPFLAGS) $(CXXFLAGS) -shared -Wl,-soname,$(LIBNAME).$(APIVER) -o $@ $(LDFLAGS) $(LIBOBJ) @$(GPP) $(CPPFLAGS) $(CXXFLAGS) -shared -Wl,-soname,$(LIBSONAME) -o $(LIBDIR)/$@ $(LDFLAGS) $(LIBOBJ)
@ln -sf $(LIBNAME).$(APIVER) $(LIBDIR)/$(LIBNAME) @ln -sf $(LIBSONAME) $(LIBDIR)/$(LIBNAME)
@ln -sf $(LIBTARGET) $(LIBDIR)/$(LIBSONAME)
$(INCDIR)/%.h : src/%.h $(INCDIR)/%.h : src/%.h
@printf "Grabbing %-25s > %-25s\n" $< $@ @printf "Grabbing %-25s > %-25s\n" $< $@