common.mk

hi,
I don’t understand very well some lines of common.mk which is in cuda_sdk.
For example the lines between 202 and 221.
what is the aim of ‘subst’? I suppose that is substitute but why?
what is ‘ar’ and ‘qv’?


Lib/exe configuration

ifneq ($(STATIC_LIB),)
TARGETDIR := $(LIBDIR)
TARGET := $(subst .a,$(LIBSUFFIX).a,$(LIBDIR)/$(STATIC_LIB))
LINKLINE = ar qv $(TARGET) $(OBJS)
else
LIB += -lcutil$(LIBSUFFIX)
# Device emulation configuration
ifeq ($(emu), 1)
NVCCFLAGS += -deviceemu
CUDACCFLAGS +=
BINSUBDIR := emu$(BINSUBDIR)
# consistency, makes developing easier
CXXFLAGS += -D__DEVICE_EMULATION__
CFLAGS += -D__DEVICE_EMULATION__
endif
TARGETDIR := $(BINDIR)/$(BINSUBDIR)
TARGET := $(TARGETDIR)/$(EXECUTABLE)
LINKLINE = $(LINK) -o $(TARGET) $(OBJS) $(LIB)
endif


thank you

Only a quick ref http://unixhelp.ed.ac.uk/CGI/man-cgi?ar

IIRC ar is used for create static libs .a, that is all I can say.

thank you