"Fossies" - the Fresh Open Source Software Archive

Member "muscle/zlib/zlib/nintendods/Makefile" (28 Nov 2019, 4741 Bytes) of package /linux/privat/muscle7.52.zip:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 #---------------------------------------------------------------------------------
    2 .SUFFIXES:
    3 #---------------------------------------------------------------------------------
    4 
    5 ifeq ($(strip $(DEVKITARM)),)
    6 $(error "Please set DEVKITARM in your environment. export DEVKITARM=<path to>devkitARM")
    7 endif
    8 
    9 include $(DEVKITARM)/ds_rules
   10 
   11 #---------------------------------------------------------------------------------
   12 # TARGET is the name of the output
   13 # BUILD is the directory where object files & intermediate files will be placed
   14 # SOURCES is a list of directories containing source code
   15 # DATA is a list of directories containing data files
   16 # INCLUDES is a list of directories containing header files
   17 #---------------------------------------------------------------------------------
   18 TARGET		:=	$(shell basename $(CURDIR))
   19 BUILD		:=	build
   20 SOURCES		:=	../../
   21 DATA		:=	data
   22 INCLUDES	:=	include
   23 
   24 #---------------------------------------------------------------------------------
   25 # options for code generation
   26 #---------------------------------------------------------------------------------
   27 ARCH	:=	-mthumb -mthumb-interwork
   28 
   29 CFLAGS	:=	-Wall -O2\
   30 		-march=armv5te -mtune=arm946e-s \
   31 		-fomit-frame-pointer -ffast-math \
   32 		$(ARCH)
   33 
   34 CFLAGS	+=	$(INCLUDE) -DARM9
   35 CXXFLAGS	:= $(CFLAGS) -fno-rtti -fno-exceptions
   36 
   37 ASFLAGS	:=	$(ARCH) -march=armv5te -mtune=arm946e-s
   38 LDFLAGS	=	-specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
   39 
   40 #---------------------------------------------------------------------------------
   41 # list of directories containing libraries, this must be the top level containing
   42 # include and lib
   43 #---------------------------------------------------------------------------------
   44 LIBDIRS	:=	$(LIBNDS)
   45 
   46 #---------------------------------------------------------------------------------
   47 # no real need to edit anything past this point unless you need to add additional
   48 # rules for different file extensions
   49 #---------------------------------------------------------------------------------
   50 ifneq ($(BUILD),$(notdir $(CURDIR)))
   51 #---------------------------------------------------------------------------------
   52 
   53 export OUTPUT	:=	$(CURDIR)/lib/libz.a
   54 
   55 export VPATH	:=	$(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
   56 			$(foreach dir,$(DATA),$(CURDIR)/$(dir))
   57 
   58 export DEPSDIR	:=	$(CURDIR)/$(BUILD)
   59 
   60 CFILES		:=	$(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
   61 CPPFILES	:=	$(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
   62 SFILES		:=	$(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
   63 BINFILES	:=	$(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
   64 
   65 #---------------------------------------------------------------------------------
   66 # use CXX for linking C++ projects, CC for standard C
   67 #---------------------------------------------------------------------------------
   68 ifeq ($(strip $(CPPFILES)),)
   69 #---------------------------------------------------------------------------------
   70 	export LD	:=	$(CC)
   71 #---------------------------------------------------------------------------------
   72 else
   73 #---------------------------------------------------------------------------------
   74 	export LD	:=	$(CXX)
   75 #---------------------------------------------------------------------------------
   76 endif
   77 #---------------------------------------------------------------------------------
   78 
   79 export OFILES	:=	$(addsuffix .o,$(BINFILES)) \
   80 			$(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)
   81 
   82 export INCLUDE	:=	$(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
   83 			$(foreach dir,$(LIBDIRS),-I$(dir)/include) \
   84 			-I$(CURDIR)/$(BUILD)
   85 
   86 .PHONY: $(BUILD) clean all
   87 
   88 #---------------------------------------------------------------------------------
   89 all: $(BUILD)
   90 	@[ -d $@ ] || mkdir -p include
   91 	@cp ../../*.h include
   92 
   93 lib:
   94 	@[ -d $@ ] || mkdir -p $@
   95 	
   96 $(BUILD): lib
   97 	@[ -d $@ ] || mkdir -p $@
   98 	@$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile
   99 
  100 #---------------------------------------------------------------------------------
  101 clean:
  102 	@echo clean ...
  103 	@rm -fr $(BUILD) lib
  104 
  105 #---------------------------------------------------------------------------------
  106 else
  107 
  108 DEPENDS	:=	$(OFILES:.o=.d)
  109 
  110 #---------------------------------------------------------------------------------
  111 # main targets
  112 #---------------------------------------------------------------------------------
  113 $(OUTPUT)	:	$(OFILES)
  114 
  115 #---------------------------------------------------------------------------------
  116 %.bin.o	:	%.bin
  117 #---------------------------------------------------------------------------------
  118 	@echo $(notdir $<)
  119 	@$(bin2o)
  120 
  121 
  122 -include $(DEPENDS)
  123 
  124 #---------------------------------------------------------------------------------------
  125 endif
  126 #---------------------------------------------------------------------------------------