我想以一种既可以包含在Makefile中也可以包含在shell脚本中的形式发布一组构建变量(应该附加到LDFLAGS) 。定义用于Makefile和Shell脚本的变量
我现在有一个文件buildflags.conf:
LDFLAGS_EXTRA="-static -foo -bar"
我希望我的用户能够,当他们正在使用的makefile:
include buildflags.conf
LDFLAGS+=$LDFLAGS_EXTRA
或者,当他们”重新使用shell脚本,做这样的事情:
. buildflags.conf
gcc myapp.o -o myapp $LDFLAGS_EXTRA
然而,这并不工作,因为需要的bash在我LDFLAGS_E报价XTRA定义,而make不需要它们。
任何人都有解决方案吗?我不想维护多个独立的buildflags文件,尽管一组脚本从单个定义文件开始,并使其适合包含在不同的上下文中会很好。
谢谢,这看起来是个好主意。我怀疑大多数用户会使用makefile,所以我宁愿在shell脚本上增加额外的负担。有没有任何方法将其变量导出到shell脚本中? – Wim 2010-08-06 10:14:57
使用读取配置的其他shell脚本可以接受吗?如果是这样,只需要做一些类似于'eval \'awk -F ='{printf“%s = \”%s \“\ n”,$ 1,$ 2}'
Ivo
2010-08-06 13:17:23
完美!在此期间,我通过在包装脚本中构建单独的版本,使用类似于您的'awk'命令解决了这个问题。 – Wim 2010-08-06 13:51:02