parent
f8c432e955
commit
9748a56a55
@ -0,0 +1,59 @@
|
|||||||
|
import argparse
|
||||||
|
|
||||||
|
|
||||||
|
def gen(sources, dirs, defs):
|
||||||
|
target = "CMakeLists.txt"
|
||||||
|
|
||||||
|
with open(target, 'w') as f:
|
||||||
|
|
||||||
|
f.write("cmake_minimum_required(VERSION 3.20)\n")
|
||||||
|
f.write("project(core)\n")
|
||||||
|
f.write("\n")
|
||||||
|
f.write("set(CMAKE_CXX_STANDARD 14)\n")
|
||||||
|
|
||||||
|
f.write("\n")
|
||||||
|
f.write("\n")
|
||||||
|
|
||||||
|
f.write("add_definitions(\n")
|
||||||
|
for d in defs:
|
||||||
|
f.write(f' -D{d}\n')
|
||||||
|
f.write(")\n")
|
||||||
|
|
||||||
|
f.write("\n")
|
||||||
|
f.write("\n")
|
||||||
|
for d in dirs:
|
||||||
|
f.write(f'include_directories({d})\n')
|
||||||
|
|
||||||
|
f.write("\n")
|
||||||
|
f.write("\n")
|
||||||
|
f.write("add_executable(core\n")
|
||||||
|
|
||||||
|
for s in sources:
|
||||||
|
f.write(f' {s}\n')
|
||||||
|
f.write(")\n")
|
||||||
|
f.write("\n")
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
CLI = argparse.ArgumentParser()
|
||||||
|
CLI.add_argument(
|
||||||
|
"--sources",
|
||||||
|
nargs="*",
|
||||||
|
type=str,
|
||||||
|
default=[],
|
||||||
|
)
|
||||||
|
CLI.add_argument(
|
||||||
|
"--dirs",
|
||||||
|
nargs="*",
|
||||||
|
type=str,
|
||||||
|
default=[],
|
||||||
|
)
|
||||||
|
CLI.add_argument(
|
||||||
|
"--defs",
|
||||||
|
nargs="*",
|
||||||
|
type=str,
|
||||||
|
default=[],
|
||||||
|
)
|
||||||
|
|
||||||
|
args = CLI.parse_args()
|
||||||
|
gen(args.sources, args.dirs, args.defs)
|
Loading…
Reference in new issue