# # $Id: //poco/1.3/build/rules/exec#1 $ # # exec # # Rule definitions for building executables # # # Target names # EXEC_RELEASE_STATIC = $(BINPATH)/$(target)$(OSARCH_POSTFIX)_s EXEC_DEBUG_STATIC = $(BINPATH)/$(target)d$(OSARCH_POSTFIX)_s EXEC_RELEASE_SHARED = $(BINPATH)/$(target)$(OSARCH_POSTFIX) EXEC_DEBUG_SHARED = $(BINPATH)/$(target)d$(OSARCH_POSTFIX) TARGET_LIBS_DEBUG = $(foreach l,$(target_libs),-l$(l)d$(OSARCH_POSTFIX)) TARGET_LIBS_RELEASE = $(foreach l,$(target_libs),-l$(l)$(OSARCH_POSTFIX)) # # Include the compile rules # include $(POCO_BASE)/build/rules/compile # # Rules for creating an executable # clean: $(RM) $(OBJPATH) $(RM) $(EXEC_RELEASE_STATIC) $(EXEC_DEBUG_STATIC) $(EXEC_RELEASE_SHARED) $(EXEC_DEBUG_SHARED) static_debug: bindirs $(EXEC_DEBUG_STATIC) static_release: bindirs $(EXEC_RELEASE_STATIC) shared_debug: bindirs $(EXEC_DEBUG_SHARED) shared_release: bindirs $(EXEC_RELEASE_SHARED) $(EXEC_DEBUG_STATIC): $(foreach o,$(objects),$(OBJPATH_DEBUG_STATIC)/$(o).o) @echo "** Building executable (debug)" $@ $(LINK) $(LINKFLAGS) $(DEBUGOPT_LINK) $(STATICOPT_LINK) -o $@ $^ $(LIBRARY) $(TARGET_LIBS_DEBUG) $(SYSLIBS) $(EXEC_RELEASE_STATIC): $(foreach o,$(objects),$(OBJPATH_RELEASE_STATIC)/$(o).o) @echo "** Building executable (release)" $@ $(LINK) $(LINKFLAGS) $(RELEASEOPT_LINK) $(STATICOPT_LINK) -o $@ $^ $(LIBRARY) $(TARGET_LIBS_RELEASE) $(SYSLIBS) $(STRIPCMD) $(EXEC_DEBUG_SHARED): $(foreach o,$(objects),$(OBJPATH_DEBUG_SHARED)/$(o).o) @echo "** Building shared executable (debug)" $@ $(LINK) $(LINKFLAGS) $(DEBUGOPT_LINK) $(SHAREDOPT_LINK) -o $@ $^ $(LIBRARY) $(TARGET_LIBS_DEBUG) $(SYSLIBS) $(EXEC_RELEASE_SHARED): $(foreach o,$(objects),$(OBJPATH_RELEASE_SHARED)/$(o).o) @echo "** Building shared executable (release)" $@ $(LINK) $(LINKFLAGS) $(RELEASEOPT_LINK) $(SHAREDOPT_LINK) -o $@ $^ $(LIBRARY) $(TARGET_LIBS_RELEASE) $(SYSLIBS) $(STRIPCMD) # # Include the automatically generated dependency files # sinclude $(addprefix $(DEPPATH)/,$(addsuffix .d,$(objects)))