genlibrary.make

来自「This is a resource based on j2me embedde」· MAKE 代码 · 共 393 行 · 第 1/2 页

MAKE
393
字号
######################################################################LIB_HEADER_DIR=$(LIB_BLD_PATH)/includeLIB_HEADER_PATHS = $(addprefix $(LIB_BLD_PATH)/include/,$(LIB_HEADER_FILES))## Rule to generate library.make for the specified library and implementation## IMPL_NOTE: insert fixcygpath where necessary#all:	$(A)echo ... Generating makefile for $(LIBRARY) library, $(LIB_IMPL) implementation	$(A)mkdir -p $(LIB_BLD_PATH)	$(A)echo "" > $(LIB_MAKEFILE)	$(A)echo "ifndef _$(LIBRARY)_makefile_" >> $(LIB_MAKEFILE)	$(A)echo "_$(LIBRARY)_makefile_ = $(LIBRARY)" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "include $(JWC_WORK_SPACE)/build/share/libdefs.gmk" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo ".PHONY: $(LIBRARY)_all $(LIBRARY)_clean" >> $(LIB_MAKEFILE)	$(A)echo ".PHONY: $(DEPENDENCIES_ALL) $(DEPENDENCIES_CLEAN)" >> $(LIB_MAKEFILE)	$(A)echo ".PHONY: $(LIBRARY)_self $(LIBRARY)_classes" >> $(LIB_MAKEFILE)	$(A)echo ".PHONY: $(LIBRARY)_lib $(LIBRARY)_headers" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIBRARY)_all: $(DEPENDENCY_MAKEFILES) $(NL)" >> $(LIB_MAKEFILE) 	$(A)echo "                $(DEPENDENCIES_ALL) $(LIBRARY)_self" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIBRARY)_clean: $(DEPENDENCY_MAKEFILES) $(NL)" >> $(LIB_MAKEFILE) 	$(A)echo "     $(LIBRARY)_clean_self $(DEPENDENCIES_CLEAN)" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)for i in $(LIB_DEPENDENCIES); do \	     echo "-include $(JWC_BUILD_SPACE)/$$i/library.make" >> $(LIB_MAKEFILE); \	done	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIBRARY)_self: $(LIBRARY)_classes $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "      $(LIBRARY)_lib $(LIBRARY)_headers \$$(SIGTEST_JAR)" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIBRARY)_clean_self:" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)echo ... Cleaning $(LIBRARY)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)rm -rf $(LIB_CLASS_DIR)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)rm -f $(LIB_CLASS_LIST)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)rm -f $(LIB_CLASSES_ZIP)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)rm -rf $(LIB_EXPORT_CLASS_DIR)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)rm -f $(LIB_EXPORT_CLASS_LIST)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)rm -f $(LIB_EXPORT_CLASSES_ZIP)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)rm -rf $(LIB_I3TEST_CLASS_DIR)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)rm -f $(LIB_I3TEST_CLASS_LIST)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)rm -f $(LIB_I3TEST_CLASSES_ZIP)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)rm -rf $(LIB_OBJ_DIR)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)rm -f $(LIB_LIBRARY)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)rm -rf $(LIB_HEADER_DIR)" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIBRARY)_classes: $(LIB_EXPORT_CLASSES_ZIP) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "               $(LIB_CLASSES_ZIP)" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIB_CLASSES_ZIP): $(LIB_CLASS_DIR) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "      $(LIB_CLASS_LIST) $(LIB_EXPORT_CLASSES_ZIP) " >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)if grep -q java $(LIB_CLASS_LIST); then $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    echo ... Compiling $(NL)" >> $(LIB_MAKEFILE)	$(A)echo             "implementation classes for $(LIBRARY);$(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    sort $(LIB_CLASS_LIST) | $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        uniq > $(LIB_TEMP_CLASS_LIST); $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    mv $(LIB_TEMP_CLASS_LIST) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        $(LIB_CLASS_LIST); $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    \$$(JAVAC_CMD) @$(LIB_CLASS_LIST) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        -g\$$(JAVAC_DEBUG) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        -classpath $(LIB_CLASS_DIR)\$$(JVM_PATHSEP)$(LIB_EXPORT_CLASSES_ZIP)\$$(JVM_PATHSEP)$(LIB_JAVAC_FULL_CLASSPATH) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        -bootclasspath $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	          $(CLDC_DIST_DIR)/lib/cldc_classes.zip $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        -d $(LIB_CLASS_DIR);  $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	fi" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)echo > $(LIB_CLASS_LIST)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)\$$(JAR_CMD) -cf $(LIB_CLASSES_ZIP) -C $(LIB_CLASS_DIR) ." >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)echo ... Compatibility test for $(LIBRARY)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)cd $(shell dirname $(LIB_SIGNATURE_FILE)); $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(JAVA_CMD) -cp $(LIB_EXPORT_CLASSES_ZIP)\$$(JVM_PATHSEP)$(LIB_JAVAC_FULL_CLASSPATH)\$$(JVM_PATHSEP)\$$(SIGTEST_JAR) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	   com.sun.tdk.signaturetest.Setup -allpublic $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	   -classpath $(LIB_EXPORT_CLASSES_ZIP) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	   -filename $(notdir $(LIB_SIGNATURE_FILE)); $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	if [ "$$\$$?" != "95" ]; then $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    rm -f $(LIB_CLASSES_ZIP); $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    exit 1; $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	fi" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)cd $(shell dirname $(LIB_SIGNATURE_FILE)); $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(JAVA_CMD) -cp $(LIB_CLASSES_ZIP)\$$(JVM_PATHSEP)$(LIB_EXPORT_CLASSES_ZIP)\$$(JVM_PATHSEP)$(LIB_JAVAC_FULL_CLASSPATH)\$$(JVM_PATHSEP)\$$(SIGTEST_JAR) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    com.sun.tdk.signaturetest.SignatureTest -allpublic $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    -classpath $(LIB_CLASSES_ZIP)\$$(JVM_PATHSEP)$(LIB_EXPORT_CLASSES_ZIP) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    -enablesuperset $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    -filename $(notdir $(LIB_SIGNATURE_FILE)); $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	if [ "$$\$$?" != "95" ]; then $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    rm -f $(LIB_CLASSES_ZIP); $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    rm -f $(LIB_SIGNATURE_FILE); $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    exit 1; $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	fi" >> $(LIB_MAKEFILE)	$(A)echo "	$(A)rm -f $(LIB_SIGNATURE_FILE)" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIB_CLASS_LIST): $(LIB_JAVA_PATHS)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)echo \$$? >> \$$@" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIB_EXPORT_CLASSES_ZIP): $(LIB_EXPORT_CLASS_DIR) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "                           $(LIB_EXPORT_CLASS_LIST)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)if grep -q java $(LIB_EXPORT_CLASS_LIST); then $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    echo ... Compiling $(NL)" >> $(LIB_MAKEFILE)	$(A)echo                  "interface classes for $(LIBRARY);$(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    sort $(LIB_EXPORT_CLASS_LIST) | $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        uniq > $(LIB_TEMP_EXPORT_CLASS_LIST); $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    mv $(LIB_TEMP_EXPORT_CLASS_LIST) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        $(LIB_EXPORT_CLASS_LIST); $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    \$$(JAVAC_CMD) @$(LIB_EXPORT_CLASS_LIST) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        -g\$$(JAVAC_DEBUG) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        -classpath $(LIB_EXPORT_CLASS_DIR)\$$(JVM_PATHSEP)$(LIB_JAVAC_FULL_CLASSPATH) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        -bootclasspath $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	          $(CLDC_DIST_DIR)/lib/cldc_classes.zip $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        -d $(LIB_EXPORT_CLASS_DIR); $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	fi" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)echo > $(LIB_EXPORT_CLASS_LIST)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)\$$(JAR_CMD) -cf $(LIB_EXPORT_CLASSES_ZIP) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    -C $(LIB_EXPORT_CLASS_DIR) ." >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIB_EXPORT_CLASS_LIST): $(LIB_EXPORT_JAVA_PATHS)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)echo \$$? >> \$$@" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIB_I3TEST_CLASSES_ZIP): $(LIB_I3TEST_CLASS_DIR) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "                           $(LIB_I3TEST_CLASS_LIST)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)if grep -q java $(LIB_I3TEST_CLASS_LIST); then $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    echo ... Compiling $(NL)" >> $(LIB_MAKEFILE)	$(A)echo                  "I3 test classes for $(LIBRARY);$(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    sort $(LIB_I3TEST_CLASS_LIST) | $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        uniq > $(LIB_TEMP_I3TEST_CLASS_LIST); $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    mv $(LIB_TEMP_I3TEST_CLASS_LIST) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        $(LIB_I3TEST_CLASS_LIST); $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    \$$(JAVAC_CMD) @$(LIB_I3TEST_CLASS_LIST) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        -g\$$(JAVAC_DEBUG) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        -classpath $(LIB_I3TEST_CLASS_DIR)\$$(JVM_PATHSEP)$(LIB_JAVAC_FULL_CLASSPATH) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        -bootclasspath $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	          $(CLDC_DIST_DIR)/lib/cldc_classes.zip $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	        -d $(LIB_I3TEST_CLASS_DIR); $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	fi" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)echo > $(LIB_I3TEST_CLASS_LIST)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)\$$(JAR_CMD) -cf $(LIB_I3TEST_CLASSES_ZIP) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	    -C $(LIB_I3TEST_CLASS_DIR) ." >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIB_I3TEST_CLASS_LIST): $(LIB_I3TEST_JAVA_PATHS)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)echo \$$? >> \$$@" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIB_CLASS_DIR) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "$(LIB_EXPORT_CLASS_DIR) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "$(LIB_I3TEST_CLASS_DIR):" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)mkdir -p \$$@" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIBRARY)_lib: $(LIB_OBJ_DIR) $(LIB_LIBRARY)" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIB_LIBRARY): $(LIB_OBJ_FILES)" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)echo ... Linking \$$@" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)\$$(JVM_LIBMGR) \$$(JVM_LIB_FLAGS) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "	      \$$(JVM_LINK_OUT_SWITCH2)\$$@ $(LIB_OBJ_FILES)" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIB_OBJ_DIR)/%\$$(JVM_OBJ_SUFFIX): $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "             $(LIB_SRC_PATH)/$(LIB_IMPL)/native/%.c" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)echo ... Compiling \$$<" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)\$$(JVM_CC) \$$(CFLAGS) $(LIB_INCLUDE_PATH) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "      \$$(JVM_CC_OUT_SWITCH)\$$@ -c \$$<" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIB_OBJ_DIR)/%\$$(JVM_OBJ_SUFFIX): $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "             $(LIB_SRC_PATH)/$(LIB_IMPL)/native/%.cpp" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)echo ... Compiling \$$<" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)\$$(JVM_CPP) \$$(CPPFLAGS) $(LIB_INCLUDE_PATH) $(NL)" >> $(LIB_MAKEFILE)	$(A)echo "      \$$(JVM_CC_OUT_SWITCH)\$$@  -c \$$<" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIBRARY)_headers: $(LIB_HEADER_DIR) $(LIB_HEADER_PATHS)" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIB_HEADER_DIR)/%.h: $(LIB_SRC_PATH)/include/%.h" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)echo ... Installing \$$@" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)cp -vf \$$? \$$@" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "$(LIB_OBJ_DIR) $(LIB_HEADER_DIR):" >> $(LIB_MAKEFILE)	$(A)echo "	\$$(A)mkdir -p \$$@" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "include $(JWC_WORK_SPACE)/build/share/gendeps.make" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)	$(A)echo "endif" >> $(LIB_MAKEFILE)	$(A)echo "" >> $(LIB_MAKEFILE)ifdef VERBOSE_BUILD	$(A)echo '=========================================================='	$(A)cat $(LIB_MAKEFILE)	$(A)echo '=========================================================='endifclean:	$(A)echo ... Cleaning makefile for library $(LIBRARY)	$(A)rm -f $(LIB_MAKEFILE)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?