- private static final String addincludefile(String wholeline, String hfile) {\r
- return wholeline.replaceFirst("(\\*/\\s)", "$1\n#include " + hfile + "\n");\r
- }\r
- \r
- private final String convertdxs(String wholeline) {\r
- if (mi.getModuleType().equals("PEIM")) {\r
- return addincludefile(wholeline, "\\<PeimDepex.h\\>");\r
- } else {\r
- return addincludefile(wholeline, "\\<DxeDepex.h\\>");\r
- }\r
- }\r
- \r
- private final void addr8only() throws Exception {\r
- String paragraph = null;\r
- String line = Common.file2string(MigrationTool.db.DatabasePath + File.separator + "R8Lib.c");\r
- PrintWriter outfile1 = new PrintWriter(new BufferedWriter(new FileWriter(MigrationTool.ModuleInfoMap.get(mi) + File.separator + "Migration_" + mi.modulename + File.separator + "R8Lib.c")));\r
- PrintWriter outfile2 = new PrintWriter(new BufferedWriter(new FileWriter(MigrationTool.ModuleInfoMap.get(mi) + File.separator + "Migration_" + mi.modulename + File.separator + "R8Lib.h")));\r
- Pattern ptnr8only = Pattern.compile("////#?(\\w*)?.*?R8_(\\w*).*?////~", Pattern.DOTALL);\r
- Matcher mtrr8only = ptnr8only.matcher(line);\r
- Matcher mtrr8onlyhead;\r
- while (mtrr8only.find()) {\r
- if (mi.hashr8only.contains(mtrr8only.group(2))) {\r
- paragraph = mtrr8only.group();\r
- outfile1.append(paragraph + "\n\n");\r
- if (mtrr8only.group(1).length() != 0) {\r
- mi.hashrequiredr9libs.add(mtrr8only.group(1));\r
- }\r
- //generate R8lib.h\r
- while ((mtrr8onlyhead = Func.ptnbrace.matcher(paragraph)).find()) {\r
- paragraph = mtrr8onlyhead.replaceAll(";");\r
- }\r
- outfile2.append(paragraph + "\n\n");\r
- }\r
- }\r
- outfile1.flush();\r
- outfile1.close();\r
- outfile2.flush();\r
- outfile2.close();\r
- \r
- mi.localmodulesources.add("R8Lib.h");\r
- mi.localmodulesources.add("R8Lib.c");\r
- }\r
- \r