# ------------------------------------------------------------------------------ # 動的ライブラリ 生成ルール # ------------------------------------------------------------------------------ ifneq ($(strip $(NAME)),) ifeq ($(strip $(NAME).so),$(strip $(TARGET))) ## ----------------------------------------------------------------------------- ## TOPディレクトリへのコピー ## ----------------------------------------------------------------------------- $(TOP_TARGET): $(TARGET) ifneq ($(strip $(HEADER_FILES)),) $(CP) -f $(HEADER_FILES) $(TOPDIR)/include/ endif $(CP) -f -d $(TARGET)* $(TOPDIR)/lib/ ifneq ($(strip $(USE_SO_VERSION)),) ## ----------------------------------------------------------------------------- ## バージョン番号付き so ファイル生成 ## ----------------------------------------------------------------------------- # .so ファイル生成 (シンボリックリンク) $(TARGET): $(TARGET).$(MAJOR) $(LN) -fs $^ $@ # .so.X ファイル生成 (シンボリックリンク) $(TARGET).$(MAJOR): $(TARGET).$(MAJOR).$(MINOR).$(RELEASE) $(LN) -fs $^ $@ # .so.X.X.X ファイル生成 $(TARGET).$(MAJOR).$(MINOR).$(RELEASE): $(OBJS) $(LINK) $(LDFLAGS) -shared -Wl,-soname,$(TARGET).$(MAJOR) -o $(TARGET).$(MAJOR).$(MINOR).$(RELEASE) $^ $(LIBS) else ## ----------------------------------------------------------------------------- ## バージョン番号無し so ファイル生成 ## ----------------------------------------------------------------------------- # .so ファイル生成 $(TARGET): $(OBJS) $(LINK) $(LDFLAGS) -shared -Wl,-soname,$(TARGET) -o $(TARGET) $^ $(LIBS) endif endif endif