-
-
Notifications
You must be signed in to change notification settings - Fork 816
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Target Analysis #2591
Labels
Milestone
Comments
有 不过近期没啥时间,等后面有时间了再说。 |
改进过了,没必要搞这么多参数,仅仅只需要 $ xmake show -t tbox
The information of target(tbox):
at: /Users/ruki/projects/personal/tbox/src/tbox/xmake.lua
kind: static
targetfile: build/macosx/x86_64/release/libtbox.a
rules:
-> mode.release -> ./xmake.lua:26
-> mode.debug -> ./xmake.lua:26
-> mode.profile -> ./xmake.lua:26
-> mode.coverage -> ./xmake.lua:26
-> utils.install.cmake_importfiles -> ./src/tbox/xmake.lua:15
-> utils.install.pkgconfig_importfiles -> ./src/tbox/xmake.lua:16
options:
-> info -> ./src/tbox/xmake.lua:50
-> float -> ./src/tbox/xmake.lua:50
-> wchar -> ./src/tbox/xmake.lua:50
-> exception -> ./src/tbox/xmake.lua:50
-> force-utf8 -> ./src/tbox/xmake.lua:50
-> deprecated -> ./src/tbox/xmake.lua:50
-> xml -> ./src/tbox/xmake.lua:53
-> zip -> ./src/tbox/xmake.lua:53
-> hash -> ./src/tbox/xmake.lua:53
-> regex -> ./src/tbox/xmake.lua:53
-> coroutine -> ./src/tbox/xmake.lua:53
-> object -> ./src/tbox/xmake.lua:53
-> charset -> ./src/tbox/xmake.lua:53
-> database -> ./src/tbox/xmake.lua:53
packages:
-> mbedtls -> ./src/tbox/xmake.lua:43
-> polarssl -> ./src/tbox/xmake.lua:43
-> openssl -> ./src/tbox/xmake.lua:43
-> pcre2 -> ./src/tbox/xmake.lua:43
-> pcre -> ./src/tbox/xmake.lua:43
-> zlib -> ./src/tbox/xmake.lua:43
-> mysql -> ./src/tbox/xmake.lua:43
-> sqlite3 -> ./src/tbox/xmake.lua:43
links:
-> pthread -> option(__keyword_thread_local) -> @programdir/includes/check_csnippets.lua:100
syslinks:
-> pthread -> ./xmake.lua:71
-> dl -> ./xmake.lua:71
-> m -> ./xmake.lua:71
-> c -> ./xmake.lua:71
defines:
-> __tb_small__ -> ./xmake.lua:42
-> __tb_prefix__="tbox" -> ./src/tbox/xmake.lua:19
-> _GNU_SOURCE=1 -> option(__systemv_semget) -> @programdir/includes/check_cfuncs.lua:104
cxflags:
-> -Wno-error=deprecated-declarations -> ./xmake.lua:22
-> -fno-strict-aliasing -> ./xmake.lua:22
-> -Wno-error=expansion-to-defined -> ./xmake.lua:22
-> -fno-stack-protector -> ./xmake.lua:51
frameworks:
-> CoreFoundation -> ./src/tbox/xmake.lua:38
-> CoreServices -> ./src/tbox/xmake.lua:38
mxflags:
-> -Wno-error=deprecated-declarations -> ./xmake.lua:23
-> -fno-strict-aliasing -> ./xmake.lua:23
-> -Wno-error=expansion-to-defined -> ./xmake.lua:23
includedirs:
-> src -> ./src/tbox/xmake.lua:26
-> build/macosx/x86_64/release -> ./src/tbox/xmake.lua:27
headerfiles:
-> src/(tbox/**.h)|**/impl/**.h -> ./src/tbox/xmake.lua:30
-> src/(tbox/prefix/**/prefix.S) -> ./src/tbox/xmake.lua:31
-> src/(tbox/math/impl/*.h) -> ./src/tbox/xmake.lua:32
-> src/(tbox/utils/impl/*.h) -> ./src/tbox/xmake.lua:33
-> build/macosx/x86_64/release/tbox.config.h -> ./src/tbox/xmake.lua:34
files:
-> src/tbox/*.c -> ./src/tbox/xmake.lua:56
-> src/tbox/hash/bkdr.c -> ./src/tbox/xmake.lua:57
-> src/tbox/hash/fnv32.c -> ./src/tbox/xmake.lua:57
-> src/tbox/hash/adler32.c -> ./src/tbox/xmake.lua:57
-> src/tbox/math/**.c -> ./src/tbox/xmake.lua:58
-> src/tbox/libc/**.c|string/impl/**.c -> ./src/tbox/xmake.lua:59
-> src/tbox/utils/*.c|option.c -> ./src/tbox/xmake.lua:60
-> src/tbox/prefix/**.c -> ./src/tbox/xmake.lua:61
-> src/tbox/memory/**.c -> ./src/tbox/xmake.lua:62
-> src/tbox/string/**.c -> ./src/tbox/xmake.lua:63
-> src/tbox/stream/**.c|**/charset.c|**/zip.c -> ./src/tbox/xmake.lua:64
-> src/tbox/network/**.c|impl/ssl/*.c -> ./src/tbox/xmake.lua:65
-> src/tbox/algorithm/**.c -> ./src/tbox/xmake.lua:66
-> src/tbox/container/**.c|element/obj.c -> ./src/tbox/xmake.lua:67
-> src/tbox/libm/impl/libm.c -> ./src/tbox/xmake.lua:68
-> src/tbox/libm/idivi8.c -> ./src/tbox/xmake.lua:73
-> src/tbox/libm/ilog2i.c -> ./src/tbox/xmake.lua:70
-> src/tbox/libm/isqrti.c -> ./src/tbox/xmake.lua:71
-> src/tbox/libm/isqrti64.c -> ./src/tbox/xmake.lua:72
-> src/tbox/platform/*.c|context.c|exception.c -> ./src/tbox/xmake.lua:74
-> src/tbox/platform/impl/*.c|charset.c|poller_fwatcher.c -> ./src/tbox/xmake.lua:74
-> src/tbox/libm/*.c -> ./src/tbox/xmake.lua:77
compiler (cc): /usr/bin/xcrun -sdk macosx clang
-> -Qunused-arguments -target x86_64-apple-macos12.6 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.0.sdk
linker (ar): /usr/bin/xcrun -sdk macosx ar
-> -cr
compflags (cc):
-> -Qunused-arguments -target x86_64-apple-macos12.6 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.0.sdk -Wall -Werror -Oz -std=c99 -Isrc -Ibuild/macosx/x86_64/release -D__tb_small__ -D__tb_prefix__=\"tbox\" -D_GNU_SOURCE=1 -framework CoreFoundation -framework CoreServices -Wno-error=deprecated-declarations -fno-strict-aliasing -Wno-error=expansion-to-defined -fno-stack-protector
linkflags (ar):
-> -cr |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
你在什么场景下需要该功能?
https://gn.googlesource.com/gn/+/master/docs/reference.md#commands-gn-desc-examples
gn 的 desc 功能可以展示一个target的sources/headers/deps/links/syslinks,以及cflags/cxxflags/defines/ldflags来源在哪里(
gn desc <outdir> <target> <property> --blame
)。这个功能在debug的时候非常方便,希望xmake也能加入这个功能。描述可能的解决方案
提供一个xmake desc的action,由于xmake不需要显式声明buildir,可以设计语法如下:
描述你认为的候选方案
No response
其他信息
xmake使用过程中的一半问题都与不知道从哪里来的flag有关(cmake等也是如此)。这一功能大大增强了debug能力,也使得xmake后续开发过程中更容易定位问题,值得考虑。
The text was updated successfully, but these errors were encountered: