导出工程根目录 # locate to the project root defineReplace(findProjectRoot) { projroot = $$1 for (ever) { if (exists($$projroot/PROJECT)) { return ($$projroot) } if (equals(projroot, "/")) { return ($$1) } if (equals(projroot, "")) { return ($$1) } projroot=$$dirname(projroot) } } PROJECT_ROOT=$$findProjectRoot($$PWD) message("PROJECT_ROOT:$$PROJECT_ROOT") 导出模块根目录 # locate to the module root defineReplace(findModuletRoot) { modroot = $$1 for (ever) { if (exists($$modroot/MODULE)) { return ($$projroot) } if (equals(modroot, "/")) { return ($$1) } if (equals(modroot, "")) { return ($$1) } modroot=$$dirname(modroot) } } MODULE_ROOT=$$findModuletRoot($$PWD) message("MODULE_ROOT:$$MODULE_ROOT")