2007-07-02 13:28:06 +00:00
|
|
|
include $(MODDIR)/make/defs.mk
|
|
|
|
|
include $(MODDIR)/make/rules.mk
|
|
|
|
|
include $(MODDIR)/make/depend.mk
|
|
|
|
|
|
|
|
|
|
# === change this >
|
2007-08-18 20:32:41 +00:00
|
|
|
TOOLS_DIR ?= $(TOPDIR)/tools
|
2007-07-02 13:28:06 +00:00
|
|
|
|
2007-08-18 20:32:41 +00:00
|
|
|
CPP_PREFIX ?= YLo
|
2007-08-21 19:56:22 +00:00
|
|
|
SO_PREFIX ?= lo_
|
2007-08-17 10:41:30 +00:00
|
|
|
#SO_PREFIX ?= \
|
|
|
|
|
# $(shell sed '/const char \*YAbstractLoadableObject::_soPrefix/ !d; s/[^"]*"//; s/".*//' \
|
|
|
|
|
# $(YTOOLS_DIR)/YLoadableObject/YAbstractLoadableObject.cpp)
|
2007-08-18 20:32:41 +00:00
|
|
|
LOADABLE_OBJ_HOOK ?= LOADABLE_OBJECT_HOOK
|
2007-07-02 13:28:06 +00:00
|
|
|
# === change this <
|
|
|
|
|
|
|
|
|
|
.PRECIOUS: %.cpp
|
|
|
|
|
|
2007-08-18 20:32:41 +00:00
|
|
|
LOADABLE_OBJS = $(patsubst $(CPP_PREFIX)%,%,$(basename $(notdir $(wildcard $(TOOLS_DIR)/$(CPP_PREFIX)*.h))))
|
2007-07-14 16:45:15 +00:00
|
|
|
ifneq ($(TARGET),mingw)
|
2007-08-18 20:32:41 +00:00
|
|
|
LOADABLE_OBJ_LIBS = $(addprefix $(SO_PREFIX), $(addsuffix .so, $(LOADABLE_OBJS)))
|
2007-07-14 16:45:15 +00:00
|
|
|
else
|
2007-08-18 20:32:41 +00:00
|
|
|
LOADABLE_OBJ_LIBS = $(addprefix $(SO_PREFIX), $(addsuffix .dll, $(LOADABLE_OBJS)))
|
2007-07-14 16:45:15 +00:00
|
|
|
endif
|
2007-08-21 16:20:19 +00:00
|
|
|
BUILD_LOADABLE_OBJ_LIBS = $(addprefix $(BUILD_LIBDIR)/, $(LOADABLE_OBJ_LIBS))
|
2007-08-18 20:32:41 +00:00
|
|
|
INSTALLED_LOADABLE_OBJ_LIBS = $(addprefix $(INSTALL_LIBDIR)/, $(LOADABLE_OBJ_LIBS))
|
2007-07-02 13:28:06 +00:00
|
|
|
|
|
|
|
|
all: $(LOADABLE_OBJ_LIBS) $(BUILD_LOADABLE_OBJ_LIBS)
|
2007-08-18 20:32:41 +00:00
|
|
|
install: $(INSTALLED_LOADABLE_OBJ_LIBS)
|
|
|
|
|
clean: clean.lo
|
|
|
|
|
|
2007-12-01 22:43:17 +00:00
|
|
|
clean.lo: profclean
|
2007-07-16 15:15:16 +00:00
|
|
|
rm -f *.o *.cpp *.so *.done *.dll
|
2007-07-02 13:28:06 +00:00
|
|
|
|
2007-07-14 16:45:15 +00:00
|
|
|
$(SO_PREFIX)%.so $(SO_PREFIX)%.dll: %.o
|
|
|
|
|
$(CPP) -shared $^ $(LDFLAGS) -o $@
|
2007-07-02 13:28:06 +00:00
|
|
|
|
|
|
|
|
%.cpp: $(TOOLS_DIR)/$(CPP_PREFIX)%.h
|
|
|
|
|
echo -e "#include \"$<\"\n$(LOADABLE_OBJ_HOOK)($(CPP_PREFIX)$*);\n" > $@
|
|
|
|
|
|
2007-08-21 16:20:19 +00:00
|
|
|
$(BUILD_LIBDIR)/%.so: %.so
|
2007-07-02 13:28:06 +00:00
|
|
|
install -m 755 $< $@
|
2007-08-21 16:20:19 +00:00
|
|
|
$(BUILD_LIBDIR)/%.dll: %.dll
|
2007-07-14 16:45:15 +00:00
|
|
|
install -m 755 $< $@
|