diff options
author | midipix <writeonce@midipix.org> | 2024-02-10 23:51:58 +0000 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2024-02-10 23:51:58 +0000 |
commit | aed569cdba5e973a048607b0ca74042c240d4db8 (patch) | |
tree | b1a7fa1a3c4ebf679b847bf953fb0aefe0138cba /src | |
parent | d4e0f6ee0cf86349c5b7420e50c1f2063ae9545b (diff) | |
download | slibtool-aed569cdba5e973a048607b0ca74042c240d4db8.tar.bz2 slibtool-aed569cdba5e973a048607b0ca74042c240d4db8.tar.xz |
compile mode: filter out all -f switches when compiling in --tag=RC mode.
Diffstat (limited to 'src')
-rw-r--r-- | src/logic/slbt_exec_compile.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/logic/slbt_exec_compile.c b/src/logic/slbt_exec_compile.c index 522d1fe..3941bf6 100644 --- a/src/logic/slbt_exec_compile.c +++ b/src/logic/slbt_exec_compile.c @@ -103,7 +103,8 @@ static int slbt_exec_compile_finalize_argument_vector( base++; } - /* join all other args, starting with de-duplicated -I arguments */ + /* join all other args, starting with de-duplicated -I arguments, */ + /* and filter out all -f switches when compiling in --tag=RC mode */ src = aargv; cap = aarg; dst = &base[1]; @@ -130,7 +131,12 @@ static int slbt_exec_compile_finalize_argument_vector( src = aargv; for (; src<cap; ) { - if (((*src)[0] != '-') || ((*src)[1] != 'I')) + if ((dctx->cctx->tag == SLBT_TAG_RC) + && ((*src)[0] == '-') + && ((*src)[1] == 'f')) + (void)0; + + else if (((*src)[0] != '-') || ((*src)[1] != 'I')) *dst++ = *src; src++; |