mirror of
				https://github.com/pocoproject/poco.git
				synced 2025-11-03 19:40:37 +01:00 
			
		
		
		
	feat(build): add gen directory (for generated sources) and macchina lib link dirs (if needed)
This commit is contained in:
		@@ -36,6 +36,9 @@ $(OBJPATH_RELEASE_STATIC) $(OBJPATH_DEBUG_STATIC) $(OBJPATH_RELEASE_SHARED) $(OB
 | 
			
		||||
#
 | 
			
		||||
# Rules for compiling
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
# Regular sources
 | 
			
		||||
 | 
			
		||||
$(OBJPATH_DEBUG_STATIC)/%.o: $(SRCDIR)/%.cpp $(DEPPATH)/%.d $(POCO_BASE)/build/config/$(POCO_CONFIG)
 | 
			
		||||
	@echo "** Compiling" $< "(debug, static)"
 | 
			
		||||
	$(CXX) $(INCLUDE) $(CXXFLAGS) $(DEBUGOPT_CXX) $(STATICOPT_CXX) -c $< -o $@
 | 
			
		||||
@@ -68,9 +71,47 @@ $(OBJPATH_RELEASE_SHARED)/%.o: $(SRCDIR)/%.c $(DEPPATH)/%.d $(POCO_BASE)/build/c
 | 
			
		||||
	@echo "** Compiling" $< "(release, shared)"
 | 
			
		||||
	$(CC) $(INCLUDE) $(CFLAGS) $(RELEASEOPT_CC) $(SHAREDOPT_CC) -c $< -o $@
 | 
			
		||||
 | 
			
		||||
# Generated sources
 | 
			
		||||
 | 
			
		||||
$(OBJPATH_DEBUG_STATIC)/%.o: $(GENDIR)/%.cpp $(DEPPATH)/%.d $(POCO_BASE)/build/config/$(POCO_CONFIG)
 | 
			
		||||
	@echo "** Compiling" $< "(debug, static)"
 | 
			
		||||
	$(CXX) $(INCLUDE) $(CXXFLAGS) $(DEBUGOPT_CXX) $(STATICOPT_CXX) -c $< -o $@
 | 
			
		||||
 | 
			
		||||
$(OBJPATH_RELEASE_STATIC)/%.o: $(GENDIR)/%.cpp $(DEPPATH)/%.d $(POCO_BASE)/build/config/$(POCO_CONFIG)
 | 
			
		||||
	@echo "** Compiling" $< "(release, static)"
 | 
			
		||||
	$(CXX) $(INCLUDE) $(CXXFLAGS) $(RELEASEOPT_CXX) $(STATICOPT_CXX) -c $< -o $@
 | 
			
		||||
 | 
			
		||||
$(OBJPATH_DEBUG_STATIC)/%.o: $(GENDIR)/%.c $(DEPPATH)/%.d $(POCO_BASE)/build/config/$(POCO_CONFIG)
 | 
			
		||||
	@echo "** Compiling" $< "(debug, static)"
 | 
			
		||||
	$(CC) $(INCLUDE) $(CFLAGS) $(DEBUGOPT_CC) $(STATICOPT_CC) -c $< -o $@
 | 
			
		||||
 | 
			
		||||
$(OBJPATH_RELEASE_STATIC)/%.o: $(GENDIR)/%.c $(DEPPATH)/%.d $(POCO_BASE)/build/config/$(POCO_CONFIG)
 | 
			
		||||
	@echo "** Compiling" $< "(release, static)"
 | 
			
		||||
	$(CC) $(INCLUDE) $(CFLAGS) $(RELEASEOPT_CC) $(STATICOPT_CC) -c $< -o $@
 | 
			
		||||
 | 
			
		||||
$(OBJPATH_DEBUG_SHARED)/%.o: $(GENDIR)/%.cpp $(DEPPATH)/%.d $(POCO_BASE)/build/config/$(POCO_CONFIG)
 | 
			
		||||
	@echo "** Compiling" $< "(debug, shared)"
 | 
			
		||||
	$(CXX) $(INCLUDE) $(CXXFLAGS) $(DEBUGOPT_CXX) $(SHAREDOPT_CXX) -c $< -o $@
 | 
			
		||||
 | 
			
		||||
$(OBJPATH_RELEASE_SHARED)/%.o: $(GENDIR)/%.cpp $(DEPPATH)/%.d $(POCO_BASE)/build/config/$(POCO_CONFIG)
 | 
			
		||||
	@echo "** Compiling" $< "(release, shared)"
 | 
			
		||||
	$(CXX) $(INCLUDE) $(CXXFLAGS) $(RELEASEOPT_CXX) $(SHAREDOPT_CXX) -c $< -o $@
 | 
			
		||||
 | 
			
		||||
$(OBJPATH_DEBUG_SHARED)/%.o: $(GENDIR)/%.c $(DEPPATH)/%.d $(POCO_BASE)/build/config/$(POCO_CONFIG)
 | 
			
		||||
	@echo "** Compiling" $< "(debug, shared)"
 | 
			
		||||
	$(CC) $(INCLUDE) $(CFLAGS) $(DEBUGOPT_CC) $(SHAREDOPT_CC) -c $< -o $@
 | 
			
		||||
 | 
			
		||||
$(OBJPATH_RELEASE_SHARED)/%.o: $(GENDIR)/%.c $(DEPPATH)/%.d $(POCO_BASE)/build/config/$(POCO_CONFIG)
 | 
			
		||||
	@echo "** Compiling" $< "(release, shared)"
 | 
			
		||||
	$(CC) $(INCLUDE) $(CFLAGS) $(RELEASEOPT_CC) $(SHAREDOPT_CC) -c $< -o $@
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Rules for creating dependency information
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
# Regular sources rules
 | 
			
		||||
 | 
			
		||||
$(DEPPATH)/%.d: $(SRCDIR)/%.cpp
 | 
			
		||||
	@echo "** Creating dependency info for" $^
 | 
			
		||||
	$(MKDIR) $(DEPPATH)
 | 
			
		||||
@@ -81,4 +122,16 @@ $(DEPPATH)/%.d: $(SRCDIR)/%.c
 | 
			
		||||
	$(MKDIR) $(DEPPATH)
 | 
			
		||||
	$(DEP) $(SRCDIR)/$(patsubst %.d,%.c,$(notdir $@)) $@ $(OBJPATH_DEBUG_STATIC) $(OBJPATH_RELEASE_STATIC) $(OBJPATH_DEBUG_SHARED) $(OBJPATH_RELEASE_SHARED) $(INCLUDE) $(CFLAGS)
 | 
			
		||||
 | 
			
		||||
# Generated sources rules
 | 
			
		||||
 | 
			
		||||
$(DEPPATH)/%.d: $(GENDIR)/%.cpp
 | 
			
		||||
	@echo "** Creating dependency info for" $^
 | 
			
		||||
	$(MKDIR) $(DEPPATH)
 | 
			
		||||
	$(DEP) $(GENDIR)/$(patsubst %.d,%.cpp,$(notdir $@)) $@ $(OBJPATH_DEBUG_STATIC) $(OBJPATH_RELEASE_STATIC) $(OBJPATH_DEBUG_SHARED) $(OBJPATH_RELEASE_SHARED) $(INCLUDE) $(CXXFLAGS)
 | 
			
		||||
 | 
			
		||||
$(DEPPATH)/%.d: $(GENDIR)/%.c
 | 
			
		||||
	@echo "** Creating dependency info for" $^
 | 
			
		||||
	$(MKDIR) $(DEPPATH)
 | 
			
		||||
	$(DEP) $(GENDIR)/$(patsubst %.d,%.c,$(notdir $@)) $@ $(OBJPATH_DEBUG_STATIC) $(OBJPATH_RELEASE_STATIC) $(OBJPATH_DEBUG_SHARED) $(OBJPATH_RELEASE_SHARED) $(INCLUDE) $(CFLAGS)
 | 
			
		||||
 | 
			
		||||
depend: $(addprefix $(DEPPATH)/,$(addsuffix .d,$(objects)))
 | 
			
		||||
 
 | 
			
		||||
@@ -197,6 +197,7 @@ COMPONENT := $(shell $(POCO_BASE)/build/script/projname "$(PROJECT_BASE)")
 | 
			
		||||
#
 | 
			
		||||
SRCDIR   = src
 | 
			
		||||
INCDIR   = include
 | 
			
		||||
GENDIR   = gen
 | 
			
		||||
LIBDIR   = lib/$(OSNAME)/$(OSARCH)
 | 
			
		||||
BINDIR   = bin/$(OSNAME)/$(OSARCH)
 | 
			
		||||
OBJDIR   = obj/$(OSNAME)/$(OSARCH)
 | 
			
		||||
@@ -229,6 +230,14 @@ else
 | 
			
		||||
POCO_LIBRARY = -L$(POCO_BASE)/$(LIBDIR)
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
ifeq ($(MACCHINA_BASE),)
 | 
			
		||||
MACCHINA_LIBRARY =
 | 
			
		||||
else ifeq ($(MACCHINA_BASE),$(PROJECT_BASE))
 | 
			
		||||
MACCHINA_LIBRARY =
 | 
			
		||||
else
 | 
			
		||||
MACCHINA_LIBRARY = -L$(MACCHINA_BASE)/$(LIBDIR)
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
ifndef LIBPREFIX
 | 
			
		||||
LIBPREFIX = lib
 | 
			
		||||
endif
 | 
			
		||||
@@ -309,7 +318,7 @@ INCLUDE = -Iinclude $(foreach p,$(COMPONENTS),-I$(POCO_BASE)/$(p)/$(INCDIR)) $(f
 | 
			
		||||
#
 | 
			
		||||
# Build Library Directory List
 | 
			
		||||
#
 | 
			
		||||
LIBRARY = -L$(LIBPATH) $(POCO_LIBRARY) $(foreach p,$(POCO_ADD_LIBRARY),-L$(p))
 | 
			
		||||
LIBRARY = -L$(LIBPATH) $(POCO_LIBRARY) $(MACCHINA_LIBRARY) $(foreach p,$(POCO_ADD_LIBRARY),-L$(p))
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Strip Command definition
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user