Changeset 100 for trunk/libjdkmidi/trunk

Show
Ignore:
Timestamp:
09/07/06 16:46:53 (2 years ago)
Author:
jeffk@…
Message:

oops, magic.mak caused make to crash, reverting last change for now

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/libjdkmidi/trunk/magic.mak

    r99 r100  
    1111 
    1212 
    13 # this first target, 'everything' is a placeholder which makes the required subdirectories and then 
    14 # calls make again with the required directories made. Since these subdirectories are part of the 
    15 # search paths, make must see them when invoked otherwise it gets confused. 
    16  
    17 .PHONY : everything 
    18  
    19 ifeq ($(CROSS_COMPILING),1) 
    20 everything : native_dirs dirs 
    21    @$(MAKE) all 
    22 else 
    23 everything : dirs 
    24    @$(MAKE) all 
    25 endif 
    26  
    27  
    2813# default project settings. These are usually originally set in project.mak 
    2914 
     
    228213# all source files in a specified directory class and construct the o file lists for them. 
    229214# Param $(1) is the class of program in capitals, for example TOOLS, TESTS, EXAMPLES, GUI 
    230 # Param $(2) is the lowercase directory name that these source files live in. $(2) is also 
    231 # used as the make target for the exe files in this class. 
    232215# the text returned by this function is then to be eval'd.  The appropriate lists of  
    233216# source files and O files for this class are then created dynamically. 
    234217 
    235218define search_program_group 
    236 LIB_$(1)_DIR+=$$(call target_suffix_platform_dirs,$(2)) 
    237  
    238  
    239219LIB_$(1)_CPP_FILES=$$(call get_file_list,$$(LIB_$(1)_DIR),cpp) 
    240220LIB_$(1)_CC_FILES=$$(call get_file_list,$$(LIB_$(1)_DIR),cc) 
     
    251231LIB_$(1)_EXE_FILES=$$(addprefix $$(OUTPUT_$(1)_DIR)/,$$(notdir $$(LIB_$(1)_O_FILES:.o=$$(EXE)))) 
    252232 
    253 OUTPUT_$(1)_DIR?=$$(OUTPUT_DIR)/$(2) 
    254  
    255 ALL_OUTPUT_DIRS+=$$(OUTPUT_DIR)/$(2) 
    256  
    257 .PHONY : $(2) 
    258  
    259 $(2) : lib $$(LIB_$(1)_EXE_FILES) config-tool 
    260  
    261 $$(LIB_$(1)_EXE_FILES) : $$(OUTPUT_LIB) 
    262  
    263 ifeq ($(CROSS_COMPILING),1) 
    264  
    265 NATIVE_LIB_$(1)_DIR+=$$(call native_suffix_platform_dirs,$(2)) 
    266  
     233ifeq ($(CROSS_COMPILING),1) 
    267234NATIVE_LIB_$(1)_CPP_FILES=$$(call get_file_list,$$(NATIVE_LIB_$(1)_DIR),cpp) 
    268235NATIVE_LIB_$(1)_CC_FILES=$$(call get_file_list,$$(NATIVE_LIB_$(1)_DIR),cc) 
     
    271238NATIVE_LIB_$(1)_SH_FILES=$$(call get_file_list,$$(NATIVE_LIB_$(1)_DIR),sh) 
    272239 
    273 NATIVE_LIB_$(1)_O_FILES=$$(call get_native_cpp_o_files,$$(NATIVE_LIB_$(1)_CPP_FILES)) \ 
     240NATIVE_LIB_TOOLS_O_FILES=$$(call get_native_cpp_o_files,$$(NATIVE_LIB_$(1)_CPP_FILES)) \ 
    274241   $$(call get_native_cc_o_files,$$(NATIVE_LIB_$(1)_CC_FILES)) \ 
    275242   $$(call get_native_c_o_files,$$(NATIVE_LIB_$(1)_C_FILES)) \ 
     
    278245 
    279246NATIVE_LIB_$(1)_EXE_FILES=$$(addprefix $$(NATIVE_OUTPUT_$(1)_DIR)/,$$(notdir $$(NATIVE_LIB_$(1)_O_FILES:.o=$$(NATIVE_EXE)))) 
    280  
    281 NATIVE_OUTPUT_$(1)_DIR?=$$(NATIVE_OUTPUT_DIR)/$(2) 
    282  
    283 NATIVE_ALL_OUTPUT_DIRS+=$$(NATIVE_OUTPUT_DIR)/$(2) 
    284  
    285 .PHONY : native_$(1) 
    286  
    287 native-$(2) : native-lib $$(NATIVE_LIB_$(1)_EXE_FILES) 
    288  
    289 $$(NATIVE_LIB_$(1)_EXE_FILES) : $(NATIVE_OUTPUT_LIB) 
    290 endif 
    291  
    292  
     247endif 
    293248endef 
    294249 
     
    457412LIB_INCLUDE_DIR+=$(call target_suffix_platform_dirs,include) 
    458413LIB_SRC_DIR+=$(call target_suffix_platform_dirs,src) 
     414LIB_TESTS_DIR+=$(call target_suffix_platform_dirs,tests) 
     415LIB_GUI_DIR+=$(call target_suffix_platform_dirs,gui) 
     416LIB_EXAMPLES_DIR+=$(call target_suffix_platform_dirs,examples) 
     417LIB_TOOLS_DIR+=$(call target_suffix_platform_dirs,tools) 
    459418LIB_DOCS_DIR+=$(call target_suffix_platform_dirs,docs) 
    460419 
     
    462421OUTPUT_DIR=$(BUILD_DIR)/build 
    463422OUTPUT_LIB_DIR?=$(OUTPUT_DIR)/lib 
     423OUTPUT_TESTS_DIR?=$(OUTPUT_DIR)/tests 
    464424OUTPUT_DOCS_DIR?=$(OUTPUT_DIR)/docs 
     425OUTPUT_TOOLS_DIR?=$(OUTPUT_DIR)/tools 
     426OUTPUT_GUI_DIR?=$(OUTPUT_DIR)/gui 
     427OUTPUT_EXAMPLES_DIR?=$(OUTPUT_DIR)/examples 
    465428OUTPUT_OBJ_DIR?=$(OUTPUT_DIR)/obj 
    466429 
     
    476439INSTALL_DOCS_DIR?=$(INSTALL_DIR)/share/$(PROJECT)-$(PROJECT_VERSION) 
    477440 
    478 ALL_OUTPUT_DIRS+=$(OUTPUT_LIB_DIR) $(OUTPUT_DOCS_DIR) $OUTPUT_OBJ_DIR) 
     441ALL_OUTPUT_DIRS+=$(OUTPUT_LIB_DIR) $(OUTPUT_TOOLS_DIR) $(OUTPUT_TESTS_DIR) $(OUTPUT_DOCS_DIR) $(OUTPUT_EXAMPLES_DIR) $(OUTPUT_OBJ_DIR) $(OUTPUT_GUI_DIR) 
     442 
     443 
    479444 
    480445NATIVE_USE_AR?=1 
     
    551516# calculate our output directories for our native platform results 
    552517 
    553 NATIVE_LIB_SRC_DIR+=$(call native_suffix_platform_dirs,src) 
    554  
    555518NATIVE_OUTPUT_DIR=$(NATIVE_BUILD_DIR)/native 
    556519NATIVE_OUTPUT_LIB_DIR?=$(NATIVE_OUTPUT_DIR)/lib 
     520NATIVE_OUTPUT_TESTS_DIR?=$(NATIVE_OUTPUT_DIR)/tests 
    557521NATIVE_OUTPUT_DOCS_DIR?=$(NATIVE_OUTPUT_DIR)/docs 
     522NATIVE_OUTPUT_TOOLS_DIR?=$(NATIVE_OUTPUT_DIR)/tools 
     523NATIVE_OUTPUT_EXAMPLES_DIR?=$(NATIVE_OUTPUT_DIR)/examples 
    558524NATIVE_OUTPUT_OBJ_DIR?=$(NATIVE_OUTPUT_DIR)/obj 
    559525 
    560526NATIVE_OUTPUT_LIB?=$(NATIVE_OUTPUT_LIB_DIR)/lib$(PROJECT).a 
    561527 
    562 NATIVE_ALL_OUTPUT_DIRS+=$(NATIVE_OUTPUT_LIB_DIR) $(NATIVE_OUTPUT_DOCS_DIR) $(NATIVE_OUTPUT_OBJ_DIR)  
     528 
     529NATIVE_LIB_SRC_DIR+=$(call native_suffix_platform_dirs,tests) 
     530NATIVE_LIB_TESTS_DIR+=$(call native_suffix_platform_dirs,tests) 
     531NATIVE_LIB_GUI_DIR+=$(call native_suffix_platform_dirs,gui) 
     532NATIVE_LIB_EXAMPLES_DIR+=$(call native_suffix_platform_dirs,examples) 
     533NATIVE_LIB_TOOLS_DIR+=$(call native_suffix_platform_dirs,tools) 
     534 
     535 
     536NATIVE_ALL_OUTPUT_DIRS+=$(NATIVE_OUTPUT_LIB_DIR) $(NATIVE_OUTPUT_TOOLS_DIR) $(NATIVE_OUTPUT_TESTS_DIR) $(NATIVE_OUTPUT_DOCS_DIR) $(NATIVE_OUTPUT_EXAMPLES_DIR) $(NATIVE_OUTPUT_OBJ_DIR)  
    563537 
    564538 
     
    572546vpath %.o $(OUTPUT_OBJ_DIR) 
    573547 
    574 # all source files in all of our src,tests,examples,tools,gui dirs 
     548# all source files in all of our src,tests,ecxamples,tools,gui dirs 
    575549vpath %.m $(LIB_SRC_DIR) $(LIB_TESTS_DIR) $(LIB_EXAMPLES_DIR) $(LIB_TOOLS_DIR) $(LIB_GUI_DIR) 
    576550vpath %.mm $(LIB_SRC_DIR) $(LIB_TESTS_DIR) $(LIB_EXAMPLES_DIR) $(LIB_TOOLS_DIR) $(LIB_GUI_DIR) 
     
    778752# get the list of tool program source files from the tools directories 
    779753 
    780 $(eval $(call search_program_group,TOOLS,tools)) 
     754$(eval $(call search_program_group,TOOLS)) 
    781755 
    782756# get the list of test program source files from the tests directories 
    783757 
    784 $(eval $(call search_program_group,TESTS,tests)) 
     758$(eval $(call search_program_group,TESTS)) 
    785759 
    786760# get the list of example program source files from the examples directories 
    787761 
    788 $(eval $(call search_program_group,EXAMPLES,examples)) 
     762$(eval $(call search_program_group,EXAMPLES)) 
    789763 
    790764# get the list of example program source files from the gui directories 
    791765 
    792 $(eval $(call search_program_group,GUI,gui)) 
     766$(eval $(call search_program_group,GUI)) 
    793767 
    794768 
    795769 
    796770# manipulate these file lists to create our desired output files in the proper place 
     771 
     772# this first target, 'everything' is a placeholder which makes the required subdirectories and then 
     773# calls make again with the required directories made. Since these subdirectories are part of the 
     774# search paths, make must see them when invoked otherwise it gets confused. 
     775 
     776.PHONY : everything 
     777 
     778ifeq ($(CROSS_COMPILING),1) 
     779everything : native_dirs dirs 
     780   @$(MAKE) all 
     781else 
     782everything : dirs 
     783   @$(MAKE) all 
     784endif 
     785 
    797786 
    798787 
     
    828817endif 
    829818 
     819 
     820 
     821.PHONY : tools 
     822 
     823tools : lib $(LIB_TOOLS_EXE_FILES) config-tool 
     824 
     825$(LIB_TOOLS_EXE_FILES) : $(OUTPUT_LIB) 
     826 
     827.PHONY : examples 
     828 
     829examples: lib $(LIB_EXAMPLES_EXE_FILES) 
     830 
     831$(LIB_EXAMPLES_EXE_FILES) : $(OUTPUT_LIB) 
     832 
     833.PHONY : tests 
     834 
     835tests: lib $(LIB_TESTS_EXE_FILES) 
     836 
     837$(LIB_TESTS_EXE_FILES) : $(OUTPUT_LIB) 
     838 
     839 
     840gui: lib $(LIB_GUI_EXE_FILES) 
     841 
     842$(LIB_GUI_EXE_FILES) : $(OUTPUT_LIB) 
    830843 
    831844.PHONY : install 
     
    921934 
    922935 
     936.PHONY : native_tools 
     937 
     938native-tools : native-lib $(NATIVE_LIB_TOOLS_EXE_FILES) 
     939 
     940$(NATIVE_LIB_TOOLS_EXE_FILES) : $(NATIVE_OUTPUT_LIB) 
     941 
     942.PHONY : native-examples 
     943 
     944native-examples: native-lib $(NATIVE_LIB_EXAMPLES_EXE_FILES) 
     945 
     946$(NATIVE_LIB_EXAMPLES_EXE_FILES) : $(NATIVE_OUTPUT_LIB) 
     947 
     948.PHONY : native-tests 
     949 
     950native-tests: native-lib $(NATIVE_LIB_TESTS_EXE_FILES) 
     951 
     952$(NATIVE_LIB_TESTS_EXE_FILES) : $(NATIVE_OUTPUT_LIB) 
    923953 
    924954.PHONY : native-test 
     
    968998   @echo "RANLIB : $(RANLIB)" 
    969999   @echo "COMPILE_FLAGS: $(COMPILE_FLAGS)" 
    970    @echo "DEFINES: $(DEFINES)" 
    9711000   @echo "LINK_FLAGS: $(LINK_FLAGS)" 
    9721001   @echo "LDLIBS: $(LDLIBS)"