gpt4 book ai didi

android - Android.mk 中的每文件 CPPFLAGS

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:18:28 26 4
gpt4 key购买 nike

我正在处理一个 Android.mk 文件,对于单个模块,其中一个文件需要不同的 CPPFLAGS;即,它需要启用 -frtti,而其他需要 Android 默认值 -fno-rtti。

显而易见的解决方案是 target-specific variables ,但奇怪的是,它们似乎不会影响编译,即使进行了一些调整以确保应在正确的时间修复这些值。

这是我的 Android.mk 的摘录(为了保护我更改了名称):

LOCAL_MODULE := foo_bar

LOCAL_SRC_FILES := \
foo_bar.cpp \
foo_baz.cpp

my_intermediates:= $(local-intermediates-dir)/foo_baz.o
$(my_intermediates): LOCAL_CPPFLAGS := -frtti

我试过用 foo_baz.o: 代替 $(my_intermediates),并尝试用 += 代替 :=没有变化。

那么,是否有针对特定源文件覆盖 CPPFLAGS(或 CFLAGS)的特定于 Android 的方法?

(在这种情况下,我使用的是 Eclair Android 源代码,尽管它可能适用于 NDK;请参阅下面的回答。)

最佳答案

像往常一样,在花了很多时间问这个问题之后,我很快就找到了答案。我需要使用 PRIVATE_CPPFLAGS 而不是 LOCAL_CPPFLAGS

但是,这似乎只适用于 Android 源代码分发版(至少是 Eclair)和 NDK r6b。如果我使用的是 NDK r6,这可能会按原样运行。

关于android - Android.mk 中的每文件 CPPFLAGS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7447836/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com