Makefile.src.in
changeset 7564 fa54ab680589
parent 7256 d05502614a2c
child 7618 21fddd467b0f
equal deleted inserted replaced
7563:305b8bdd94da 7564:fa54ab680589
   247 	$(Q)$(WINDRES) -o $@ -I $(MEDIA_DIR) $<
   247 	$(Q)$(WINDRES) -o $@ -I $(MEDIA_DIR) $<
   248 
   248 
   249 $(BIN_DIR)/$(TTD): $(TTD)
   249 $(BIN_DIR)/$(TTD): $(TTD)
   250 	$(Q)cp $< $@
   250 	$(Q)cp $< $@
   251 
   251 
   252 $(TTD): rev.o $(OBJS) $(CONFIG_CACHE_LINKER)
   252 $(TTD): $(OBJS) $(CONFIG_CACHE_LINKER)
   253 	$(E) '$(STAGE) Linking $@'
   253 	$(E) '$(STAGE) Linking $@'
   254 ifeq ($(OS), PSP)
   254 ifeq ($(OS), PSP)
   255 	# Because of a bug in the PSP GCC tools, linking via CXX results
   255 	# Because of a bug in the PSP GCC tools, linking via CXX results
   256 	#  in total chaos and more problems then you can handle. So we need
   256 	#  in total chaos and more problems then you can handle. So we need
   257 	#  CC to link OpenTTD for PSP
   257 	#  CC to link OpenTTD for PSP
   258 	$(Q)$(CC_HOST) $(LDFLAGS) rev.o $(OBJS) $(LIBS) -o $@
   258 	$(Q)$(CC_HOST) $(LDFLAGS) $(OBJS) $(LIBS) -o $@
   259 else
   259 else
   260 	$(Q)$(CXX_HOST) $(LDFLAGS) rev.o $(OBJS) $(LIBS) -o $@
   260 	$(Q)$(CXX_HOST) $(LDFLAGS) $(OBJS) $(LIBS) -o $@
   261 endif
   261 endif
   262 ifdef STRIP
   262 ifdef STRIP
   263 	$(Q)$(STRIP) $@
   263 	$(Q)$(STRIP) $@
   264 endif
   264 endif
   265 
   265 
   273 	$(E) '$(STAGE) Compiling and Linking $@'
   273 	$(E) '$(STAGE) Compiling and Linking $@'
   274 	$(Q)$(CXX_BUILD) $(CFLAGS_BUILD) $< -o $@
   274 	$(Q)$(CXX_BUILD) $(CFLAGS_BUILD) $< -o $@
   275 
   275 
   276 # Revision files
   276 # Revision files
   277 
   277 
   278 rev.cpp: $(CONFIG_CACHE_VERSION)
   278 $(SRC_DIR)/rev.cpp: $(CONFIG_CACHE_VERSION) $(SRC_DIR)/rev.cpp.in
   279 # setting the revision number in a place, there the binary can read it
   279 	$(Q)cat $(SRC_DIR)/rev.cpp.in      | sed "s#@@VERSION@@#$(REV)#g;s#@@DATE@@#`date +%d.%m.%y`#g" > $(SRC_DIR)/rev.cpp
   280 	@echo 'extern const char _openttd_revision[] = "$(REV)";' > rev.cpp
   280 
   281 # Some additions for MorphOS versions tag
   281 $(SRC_DIR)/ottdres.rc: $(CONFIG_CACHE_VERSION) $(SRC_DIR)/ottdres.rc.in
   282 ifeq ($(OS),MORPHOS)
   282 	$(Q)cat $(SRC_DIR)/ottdres.rc.in | sed "s#@@VERSION@@#$(REV)#g;s#@@DATE@@#`date +%d.%m.%y`#g" > $(SRC_DIR)/ottdres.rc
   283 	@echo '#ifdef __MORPHOS__' >> rev.cpp
       
   284 	@echo 'extern const char morphos_versions_tag[] = "\\0$$VER: OpenTTD $(REV) ('`date +%d.%m.%y`') (C) OpenTTD Team [MorphOS, PowerPC]";' >> rev.cpp
       
   285 	@echo '#endif' >> rev.cpp
       
   286 endif
       
   287 
       
   288 rev.o: rev.cpp $(FILE_DEP)
       
   289 	$(E) '$(STAGE) Compiling $(<:$(SRC_DIR)/%.cpp=%.cpp)'
       
   290 	$(Q)$(CXX_HOST) $(CFLAGS) -c -o $@ $<
       
   291 
   283 
   292 FORCE:
   284 FORCE:
   293 
   285 
   294 depend: $(DEPS)
   286 depend: $(DEPS)
   295 
   287 
   296 clean:
   288 clean:
   297 	$(E) '$(STAGE) Cleaning up object files'
   289 	$(E) '$(STAGE) Cleaning up object files'
   298 	$(Q)rm -f $(DEPS) $(OBJS) $(TTD) $(TTD:%=$(BIN_DIR)/%) $(CONFIG_CACHE_COMPILER) $(CONFIG_CACHE_LINKER) $(CONFIG_CACHE_ENDIAN) $(CONFIG_CACHE_SOURCE) $(ENDIAN_TARGETS) rev.o rev.cpp
   290 	$(Q)rm -f $(DEPS) $(OBJS) $(TTD) $(TTD:%=$(BIN_DIR)/%) $(CONFIG_CACHE_COMPILER) $(CONFIG_CACHE_LINKER) $(CONFIG_CACHE_ENDIAN) $(CONFIG_CACHE_SOURCE) $(ENDIAN_TARGETS)
   299 
   291 
   300 mrproper: clean
   292 mrproper: clean
   301 	$(Q)rm -f rev.cpp
   293 	$(Q)rm -f $(SRC_DIR)/rev.cpp $(SRC_DIR)/ottdres.rc
   302 
   294 
   303 %.o:
   295 %.o:
   304 	@echo '$(STAGE) No such source-file: $(@:%.o=%).[c|cpp|mm|rc]'
   296 	@echo '$(STAGE) No such source-file: $(@:%.o=%).[c|cpp|mm|rc]'
   305 
   297 
   306 .PHONY: all mrproper depend clean FORCE
   298 .PHONY: all mrproper depend clean FORCE