我的makefile中有以下位:
GLFW_FLAG := -m32 -O2 -Iglfw/include -Iglfw/lib -Iglfw/lib/cocoa $(CFLAGS)
...
$(BUILD_DIR)/%.o : %.c
$(CC) -c $(GLFW_FLAG) $< -o $@
$(BUILD_DIR)/%.o : %.m
$(CC) -c $(GLFW_FLAG) $< -o $@
Run Code Online (Sandbox Code Playgroud)
该-m32指示GCC生成32位代码.它存在,因为在某些配置中GHC设置为构建32位代码,但GCC的默认值有时为64位.我想概括一下,以便自动检测GHC是否构建32位或64位代码,然后将正确的标志传递给GCC.
问:我怎样才能问GHC它将构建什么类型的代码(32位对64位)?
PS:我的cabal文件在构建期间调用此makefile以解决cabal中的变通方法限制.我希望我可以在我的cabal文件中列出这些作为c-sources.