Git Mailing List Archive mirror
 help / color / mirror / Atom feed
From: "Elijah Newren via GitGitGadget" <gitgitgadget@gmail.com>
To: git@vger.kernel.org
Cc: Calvin Wan <calvinwan@google.com>,
	Derrick Stolee <derrickstolee@github.com>,
	Elijah Newren <newren@gmail.com>, Glen Choo <chooglen@google.com>,
	Elijah Newren <newren@gmail.com>,
	Elijah Newren <newren@gmail.com>
Subject: [PATCH v2 02/22] symlinks.h: move declarations for symlinks.c functions from cache.h
Date: Sat, 22 Apr 2023 20:17:09 +0000	[thread overview]
Message-ID: <4a1f197e1e09e0941ce4a3b658cd199df52eeee5.1682194651.git.gitgitgadget@gmail.com> (raw)
In-Reply-To: <pull.1517.v2.git.1682194649.gitgitgadget@gmail.com>

From: Elijah Newren <newren@gmail.com>

Signed-off-by: Elijah Newren <newren@gmail.com>
---
 apply.c                |  1 +
 builtin/checkout.c     |  1 +
 builtin/update-index.c |  1 +
 cache.h                | 22 ----------------------
 compat/mingw.c         |  1 +
 diff-lib.c             |  1 +
 dir.c                  |  1 +
 entry.c                |  1 +
 merge-recursive.c      |  1 +
 parallel-checkout.c    |  1 +
 pathspec.c             |  1 +
 preload-index.c        |  1 +
 read-cache.c           |  1 +
 run-command.c          |  1 +
 symlinks.c             |  3 ++-
 symlinks.h             | 28 ++++++++++++++++++++++++++++
 unpack-trees.c         |  1 +
 17 files changed, 44 insertions(+), 23 deletions(-)
 create mode 100644 symlinks.h

diff --git a/apply.c b/apply.c
index 2868cef5ddd..efe2dcb0e62 100644
--- a/apply.c
+++ b/apply.c
@@ -30,6 +30,7 @@
 #include "apply.h"
 #include "entry.h"
 #include "setup.h"
+#include "symlinks.h"
 #include "wrapper.h"
 
 struct gitdiff_data {
diff --git a/builtin/checkout.c b/builtin/checkout.c
index 6f5d82ed3d3..715eeb5048f 100644
--- a/builtin/checkout.c
+++ b/builtin/checkout.c
@@ -28,6 +28,7 @@
 #include "setup.h"
 #include "submodule.h"
 #include "submodule-config.h"
+#include "symlinks.h"
 #include "trace2.h"
 #include "tree.h"
 #include "tree-walk.h"
diff --git a/builtin/update-index.c b/builtin/update-index.c
index 33b00cef151..58bbc80db77 100644
--- a/builtin/update-index.c
+++ b/builtin/update-index.c
@@ -23,6 +23,7 @@
 #include "dir.h"
 #include "setup.h"
 #include "split-index.h"
+#include "symlinks.h"
 #include "fsmonitor.h"
 #include "write-or-die.h"
 
diff --git a/cache.h b/cache.h
index 71e2fe74c4f..ffec289dc5d 100644
--- a/cache.h
+++ b/cache.h
@@ -593,28 +593,6 @@ int df_name_compare(const char *name1, size_t len1, int mode1,
 int name_compare(const char *name1, size_t len1, const char *name2, size_t len2);
 int cache_name_stage_compare(const char *name1, int len1, int stage1, const char *name2, int len2, int stage2);
 
-struct cache_def {
-	struct strbuf path;
-	int flags;
-	int track_flags;
-	int prefix_len_stat_func;
-};
-#define CACHE_DEF_INIT { \
-	.path = STRBUF_INIT, \
-}
-static inline void cache_def_clear(struct cache_def *cache)
-{
-	strbuf_release(&cache->path);
-}
-
-int has_symlink_leading_path(const char *name, int len);
-int threaded_has_symlink_leading_path(struct cache_def *, const char *, int);
-int check_leading_path(const char *name, int len, int warn_on_lstat_err);
-int has_dirs_only_path(const char *name, int len, int prefix_len);
-void invalidate_lstat_cache(void);
-void schedule_dir_for_removal(const char *name, int len);
-void remove_scheduled_dirs(void);
-
 struct pack_window {
 	struct pack_window *next;
 	unsigned char *base;
diff --git a/compat/mingw.c b/compat/mingw.c
index abbc3faf32f..d06cdc6254f 100644
--- a/compat/mingw.c
+++ b/compat/mingw.c
@@ -13,6 +13,7 @@
 #include "../config.h"
 #include "../environment.h"
 #include "../trace2.h"
+#include "../symlinks.h"
 #include "../wrapper.h"
 #include "dir.h"
 #include "gettext.h"
diff --git a/diff-lib.c b/diff-lib.c
index d292405a262..60e979dc1bd 100644
--- a/diff-lib.c
+++ b/diff-lib.c
@@ -14,6 +14,7 @@
 #include "unpack-trees.h"
 #include "refs.h"
 #include "submodule.h"
+#include "symlinks.h"
 #include "trace.h"
 #include "dir.h"
 #include "fsmonitor.h"
diff --git a/dir.c b/dir.c
index aa840995c40..ed262fa6e43 100644
--- a/dir.c
+++ b/dir.c
@@ -25,6 +25,7 @@
 #include "fsmonitor.h"
 #include "setup.h"
 #include "submodule-config.h"
+#include "symlinks.h"
 #include "trace2.h"
 #include "wrapper.h"
 
diff --git a/entry.c b/entry.c
index d89e61fa641..91a540bd29f 100644
--- a/entry.c
+++ b/entry.c
@@ -7,6 +7,7 @@
 #include "hex.h"
 #include "streaming.h"
 #include "submodule.h"
+#include "symlinks.h"
 #include "progress.h"
 #include "fsmonitor.h"
 #include "entry.h"
diff --git a/merge-recursive.c b/merge-recursive.c
index 9875bdb11cb..d4d2ab05b2e 100644
--- a/merge-recursive.c
+++ b/merge-recursive.c
@@ -30,6 +30,7 @@
 #include "string-list.h"
 #include "submodule-config.h"
 #include "submodule.h"
+#include "symlinks.h"
 #include "tag.h"
 #include "tree-walk.h"
 #include "unpack-trees.h"
diff --git a/parallel-checkout.c b/parallel-checkout.c
index 50fd7fe31ef..7f0569cc930 100644
--- a/parallel-checkout.c
+++ b/parallel-checkout.c
@@ -10,6 +10,7 @@
 #include "run-command.h"
 #include "sigchain.h"
 #include "streaming.h"
+#include "symlinks.h"
 #include "thread-utils.h"
 #include "trace2.h"
 #include "wrapper.h"
diff --git a/pathspec.c b/pathspec.c
index 6972d515f0c..ec335a214e2 100644
--- a/pathspec.c
+++ b/pathspec.c
@@ -8,6 +8,7 @@
 #include "attr.h"
 #include "setup.h"
 #include "strvec.h"
+#include "symlinks.h"
 #include "quote.h"
 
 /*
diff --git a/preload-index.c b/preload-index.c
index 4abf9c983b2..7a26b08c213 100644
--- a/preload-index.c
+++ b/preload-index.c
@@ -11,6 +11,7 @@
 #include "progress.h"
 #include "thread-utils.h"
 #include "repository.h"
+#include "symlinks.h"
 #include "trace2.h"
 
 /*
diff --git a/read-cache.c b/read-cache.c
index f225bf44cd0..206c003e558 100644
--- a/read-cache.c
+++ b/read-cache.c
@@ -30,6 +30,7 @@
 #include "trace2.h"
 #include "varint.h"
 #include "split-index.h"
+#include "symlinks.h"
 #include "utf8.h"
 #include "fsmonitor.h"
 #include "thread-utils.h"
diff --git a/run-command.c b/run-command.c
index e64bb08a5bf..d4247d5fcc6 100644
--- a/run-command.c
+++ b/run-command.c
@@ -5,6 +5,7 @@
 #include "gettext.h"
 #include "sigchain.h"
 #include "strvec.h"
+#include "symlinks.h"
 #include "thread-utils.h"
 #include "strbuf.h"
 #include "string-list.h"
diff --git a/symlinks.c b/symlinks.c
index 27ecc93693b..b29e340c2da 100644
--- a/symlinks.c
+++ b/symlinks.c
@@ -1,6 +1,7 @@
-#include "cache.h"
+#include "git-compat-util.h"
 #include "gettext.h"
 #include "setup.h"
+#include "symlinks.h"
 
 static int threaded_check_leading_path(struct cache_def *cache, const char *name,
 				       int len, int warn_on_lstat_err);
diff --git a/symlinks.h b/symlinks.h
new file mode 100644
index 00000000000..7ae3d5b8569
--- /dev/null
+++ b/symlinks.h
@@ -0,0 +1,28 @@
+#ifndef SYMLINKS_H
+#define SYMLINKS_H
+
+#include "strbuf.h"
+
+struct cache_def {
+	struct strbuf path;
+	int flags;
+	int track_flags;
+	int prefix_len_stat_func;
+};
+#define CACHE_DEF_INIT { \
+	.path = STRBUF_INIT, \
+}
+static inline void cache_def_clear(struct cache_def *cache)
+{
+	strbuf_release(&cache->path);
+}
+
+int has_symlink_leading_path(const char *name, int len);
+int threaded_has_symlink_leading_path(struct cache_def *, const char *, int);
+int check_leading_path(const char *name, int len, int warn_on_lstat_err);
+int has_dirs_only_path(const char *name, int len, int prefix_len);
+void invalidate_lstat_cache(void);
+void schedule_dir_for_removal(const char *name, int len);
+void remove_scheduled_dirs(void);
+
+#endif /* SYMLINKS_H */
diff --git a/unpack-trees.c b/unpack-trees.c
index c6de2ca5a7e..e8a5295e737 100644
--- a/unpack-trees.c
+++ b/unpack-trees.c
@@ -18,6 +18,7 @@
 #include "sparse-index.h"
 #include "submodule.h"
 #include "submodule-config.h"
+#include "symlinks.h"
 #include "trace2.h"
 #include "fsmonitor.h"
 #include "object-store.h"
-- 
gitgitgadget


  parent reply	other threads:[~2023-04-22 20:17 UTC|newest]

Thread overview: 81+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-16  3:03 [PATCH 00/23] Header cleanups (more splitting of cache.h and simplifying a few other deps) Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 01/23] treewide: be explicit about dependence on strbuf.h Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 02/23] symlinks.h: move declarations for symlinks.c functions from cache.h Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 03/23] protocol.h: move definition of DEFAULT_GIT_PORT " Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 04/23] packfile.h: move pack_window and pack_entry " Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 05/23] server-info.h: move declarations for server-info.c functions " Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 06/23] copy.h: move declarations for copy.c " Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 07/23] base85.h: move declarations for base85.c " Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 08/23] pkt-line.h: move declarations for pkt-line.c " Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 09/23] match-trees.h: move declarations for match-trees.c " Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 10/23] ws.h: move declarations for ws.c " Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 11/23] versioncmp.h: move declarations for versioncmp.c " Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 12/23] dir.h: move DTYPE defines " Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 13/23] tree-diff.c: move S_DIFFTREE_IFXMIN_NEQ define " Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 14/23] hash.h, repository.h: reverse the order of these dependencies Elijah Newren via GitGitGadget
2023-04-17 20:59   ` Derrick Stolee
2023-04-18  2:36     ` Elijah Newren
2023-04-18 23:29     ` Junio C Hamano
2023-04-20  5:06       ` Elijah Newren
2023-04-20 13:14         ` Derrick Stolee
2023-04-20 15:54           ` Junio C Hamano
2023-04-20 19:54             ` Glen Choo
2023-04-16  3:03 ` [PATCH 15/23] cache,tree: move cmp_cache_name_compare from tree.[ch] to read-cache.c Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 16/23] cache,tree: move basic name compare functions from read-cache to tree Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 17/23] treewide: remove cache.h inclusion due to previous changes Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 18/23] cache.h: remove unnecessary headers Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 19/23] fsmonitor: reduce includes of cache.h Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 20/23] commit.h: reduce unnecessary includes Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 21/23] object-store.h: " Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 22/23] diff.h: " Elijah Newren via GitGitGadget
2023-04-16  3:03 ` [PATCH 23/23] reftable: ensure git-compat-util.h is the first (indirect) include Elijah Newren via GitGitGadget
2023-04-17 21:07 ` [PATCH 00/23] Header cleanups (more splitting of cache.h and simplifying a few other deps) Derrick Stolee
2023-04-18  2:41   ` Elijah Newren
2023-04-22 20:17 ` [PATCH v2 00/22] " Elijah Newren via GitGitGadget
2023-04-22 20:17   ` [PATCH v2 01/22] treewide: be explicit about dependence on strbuf.h Elijah Newren via GitGitGadget
2023-04-22 20:17   ` Elijah Newren via GitGitGadget [this message]
2023-04-22 20:17   ` [PATCH v2 03/22] packfile.h: move pack_window and pack_entry from cache.h Elijah Newren via GitGitGadget
2023-04-22 20:17   ` [PATCH v2 04/22] server-info.h: move declarations for server-info.c functions " Elijah Newren via GitGitGadget
2023-04-22 20:17   ` [PATCH v2 05/22] copy.h: move declarations for copy.c " Elijah Newren via GitGitGadget
2023-04-22 20:17   ` [PATCH v2 06/22] base85.h: move declarations for base85.c " Elijah Newren via GitGitGadget
2023-04-22 20:17   ` [PATCH v2 07/22] pkt-line.h: move declarations for pkt-line.c " Elijah Newren via GitGitGadget
2023-04-22 20:17   ` [PATCH v2 08/22] match-trees.h: move declarations for match-trees.c " Elijah Newren via GitGitGadget
2023-04-22 20:17   ` [PATCH v2 09/22] ws.h: move declarations for ws.c " Elijah Newren via GitGitGadget
2023-04-22 20:17   ` [PATCH v2 10/22] versioncmp.h: move declarations for versioncmp.c " Elijah Newren via GitGitGadget
2023-04-22 20:17   ` [PATCH v2 11/22] dir.h: move DTYPE defines " Elijah Newren via GitGitGadget
2023-04-22 20:17   ` [PATCH v2 12/22] tree-diff.c: move S_DIFFTREE_IFXMIN_NEQ define " Elijah Newren via GitGitGadget
2023-05-01 16:33     ` Ævar Arnfjörð Bjarmason
2023-05-01 16:46       ` Junio C Hamano
2023-05-02  1:06       ` Elijah Newren
2023-05-02  5:00         ` Elijah Newren
2023-05-02 15:56           ` Junio C Hamano
2023-05-02 15:59             ` Elijah Newren
2023-04-22 20:17   ` [PATCH v2 13/22] hash-ll.h: split out of hash.h to remove dependency on repository.h Elijah Newren via GitGitGadget
2023-04-24 18:51     ` Glen Choo
2023-04-26  3:54       ` Elijah Newren
2023-04-26 17:50         ` Glen Choo
2023-04-24 19:52     ` Junio C Hamano
2023-05-01 17:17     ` Ævar Arnfjörð Bjarmason
2023-05-02  2:53       ` Elijah Newren
2023-04-22 20:17   ` [PATCH v2 14/22] cache,tree: move cmp_cache_name_compare from tree.[ch] to read-cache.c Elijah Newren via GitGitGadget
2023-04-22 20:17   ` [PATCH v2 15/22] cache,tree: move basic name compare functions from read-cache to tree Elijah Newren via GitGitGadget
2023-04-22 20:17   ` [PATCH v2 16/22] treewide: remove cache.h inclusion due to previous changes Elijah Newren via GitGitGadget
2023-05-01 16:44     ` Ævar Arnfjörð Bjarmason
2023-05-02  1:25       ` Elijah Newren
2023-04-22 20:17   ` [PATCH v2 17/22] cache.h: remove unnecessary headers Elijah Newren via GitGitGadget
2023-05-01 16:49     ` Ævar Arnfjörð Bjarmason
2023-05-02  1:43       ` Elijah Newren
2023-04-22 20:17   ` [PATCH v2 18/22] fsmonitor: reduce includes of cache.h Elijah Newren via GitGitGadget
2023-04-22 20:17   ` [PATCH v2 19/22] commit.h: reduce unnecessary includes Elijah Newren via GitGitGadget
2023-05-01 16:52     ` Ævar Arnfjörð Bjarmason
2023-05-02  1:53       ` Elijah Newren
2023-04-22 20:17   ` [PATCH v2 20/22] object-store.h: " Elijah Newren via GitGitGadget
2023-05-01 17:00     ` Ævar Arnfjörð Bjarmason
2023-05-02  2:28       ` Elijah Newren
2023-04-22 20:17   ` [PATCH v2 21/22] diff.h: " Elijah Newren via GitGitGadget
2023-05-01 17:11     ` Ævar Arnfjörð Bjarmason
2023-04-22 20:17   ` [PATCH v2 22/22] reftable: ensure git-compat-util.h is the first (indirect) include Elijah Newren via GitGitGadget
2023-04-24 15:19   ` [PATCH v2 00/22] Header cleanups (more splitting of cache.h and simplifying a few other deps) Derrick Stolee
2023-04-24 19:49   ` Junio C Hamano
2023-04-26 17:54   ` Glen Choo
2023-04-26 18:14     ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4a1f197e1e09e0941ce4a3b658cd199df52eeee5.1682194651.git.gitgitgadget@gmail.com \
    --to=gitgitgadget@gmail.com \
    --cc=calvinwan@google.com \
    --cc=chooglen@google.com \
    --cc=derrickstolee@github.com \
    --cc=git@vger.kernel.org \
    --cc=newren@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).