Newer
Older
project / mk / link-so-rule.mk
Nomura Kei on 24 Apr 2020 954 bytes first commit
# ------------------------------------------------------------------------------
#  動的ライブラリ 生成ルール
# ------------------------------------------------------------------------------
ifneq ($(strip $(NAME)),)
ifeq  ($(strip $(NAME).so),$(strip $(TARGET)))

ifneq ($(strip $(USE_SO_VERSION)),)
##
## バージョン番号付き so ファイル生成
##

# .so ファイル生成 (シンボリックリンク)
$(TARGET): $(TARGET).$(MAJOR)
	$(LN) -fs $^ $@

# .so.X ファイル生成 (シンボリックリンク)
$(TARGET).$(MAJOR): $(TARGET).$(VERSION)
	$(LN) -fs $^ $@

# .so.X.X.X ファイル生成
$(TARGET).$(VERSION): $(OBJS)
	$(LINK) $(LDFLAGS) -shared -Wl,-soname,$(TARGET).$(MAJOR) -o $(TARGET).$(VERSION) $^ $(LIBS)


else
##
## バージョン番号無し so ファイル生成
##

# .so ファイル生成
$(TARGET): $(OBJS)
	$(LINK) $(LDFLAGS) -shared -Wl,-soname,$(TARGET) -o $(TARGET) $^ $(LIBS)


endif

endif
endif