aboutsummaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorManuel Stoeckl <code@mstoeckl.com>2019-06-22 23:13:19 -0400
committerDrew DeVault <sir@cmpwn.com>2019-07-15 16:35:50 -0400
commit2dc4978d8af326c310057ca8fd22a4c7f5d09335 (patch)
treee49b4d10481309d90bd5330b7bbeec588f4de88c /common
parente3a3917d3afb66fc8ba3eebb7aed603d3b7ce844 (diff)
Use -fmacro-prefix-map to strip build path
Because meson does not provide a simple way to get the relative build path, it is computed with a pair of foreach loops. As meson does not have a simple way to compute string length (except via underscorify and 63 split operations), the build script uses a shell command instead. If the compiler does not suppot -fmacro-prefix-map, then fall back to passing in the relative path prefix, and use its length to offset the uses of __FILE__ in log messages so that the build path is at least still not included in the logs. This is significantly more efficient than calling _sway_strip_path.
Diffstat (limited to 'common')
-rw-r--r--common/log.c17
1 files changed, 0 insertions, 17 deletions
diff --git a/common/log.c b/common/log.c
index 669fd360..17648e44 100644
--- a/common/log.c
+++ b/common/log.c
@@ -93,20 +93,3 @@ void _sway_log(sway_log_importance_t verbosity, const char *fmt, ...) {
sway_log_stderr(verbosity, fmt, args);
va_end(args);
}
-
-// strips the path prefix from filepath
-// will try to strip SWAY_SRC_DIR as well as a relative src dir
-// e.g. '/src/build/sway/util/log.c' and
-// '../util/log.c' will both be stripped to
-// 'util/log.c'
-const char *_sway_strip_path(const char *filepath) {
- static int srclen = sizeof(SWAY_SRC_DIR);
- if (strstr(filepath, SWAY_SRC_DIR) == filepath) {
- filepath += srclen;
- } else if (*filepath == '.') {
- while (*filepath == '.' || *filepath == '/') {
- ++filepath;
- }
- }
- return filepath;
-}