使用CMake包含外部makefile
我想在我自己软件的makefile中包含一个来自外部库的makefile。最简单的方法是为等价于使用CMake包含外部makefile,makefile,cmake,Makefile,Cmake,我想在我自己软件的makefile中包含一个来自外部库的makefile。最简单的方法是为等价于include${dir}/Makefile的Makefile找出CMake代码 但也许我应该给出一点背景。我正在尝试将PETSc(和SLEPc)集成到我的代码中。下面是使用SLEPc的示例中的一些代码(尽管PETSc基本相同): 如您所见,它需要包含一个特定的makefile,该makefile包含一组其他makefile。这有点奇怪,因为似乎只有一个include目录会更简单,但显然还有很多我无法
include${dir}/Makefile
的Makefile找出CMake代码
但也许我应该给出一点背景。我正在尝试将PETSc(和SLEPc)集成到我的代码中。下面是使用SLEPc的示例中的一些代码(尽管PETSc基本相同):
如您所见,它需要包含一个特定的makefile,该makefile包含一组其他makefile。这有点奇怪,因为似乎只有一个include目录会更简单,但显然还有很多我无法理解的地方。无论如何,我的第一个解决方案是简单地包含它想要的makefile,看看它是否有效。我认为这个要求根本不适合CMake的设计模型,因为Makefiles是在生成阶段生成的,CMake的核心原则之一是使其跨平台,因此,更好的想法可能是:
hello: hello.o chkopts
-${CLINKER} -o hello hello.o ${SLEPC_LIB}
${RM} hello.o
include ${SLEPC_DIR}/conf/slepc_common