gpt4 book ai didi

makefile - Makefile 中的大于字符串比较

转载 作者:行者123 更新时间:2023-12-02 11:08:46 28 4
gpt4 key购买 nike

如何在 Makefile 中表达以下逻辑?

if $(XORG_VERSION) > "7.7"
<do some thing>
fi

Conditional Parts of Makefiles只提供ifeq或ifneq。

最佳答案

我使用sort按字典顺序比较值的函数。这个想法是,对两个值的列表进行排序:$(XORG_VERSION)7.7,然后取第一个值 - 如果它是 7.7,则取第一个值版本相同或更高。

ifeq "7.7" "$(word 1, $(sort 7.7 $(XORG_VERSION)))"
<do some thing>
endif

如果您需要严格的大于条件,请将 7.7 调整为 7.8

此方法通过避免 shell 脚本和有关可用操作系统 shell 功能的相应假设来提高可移植性。但是,如果字典顺序与数字顺序不相等,例如在比较 7.77.11 时,则会失败。

关于makefile - Makefile 中的大于字符串比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3437160/

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