<pre style='margin:0'>
Christopher Nielsen (mascguy) pushed a commit to branch master
in repository macports-legacy-support.
</pre>
<p><a href="https://github.com/macports/macports-legacy-support/commit/4c54bff86206541082bd94cbed1dbf374cb40b0f">https://github.com/macports/macports-legacy-support/commit/4c54bff86206541082bd94cbed1dbf374cb40b0f</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 4c54bff86206541082bd94cbed1dbf374cb40b0f
</span>Author: Fred Wright <fw@fwright.net>
AuthorDate: Tue Jan 7 22:46:17 2025 -0800
<span style='display:block; white-space:pre;color:#404040;'> Add copyfile debugging support.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Adds copyfile debugging targets to src/Makefile.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Fixes src/Makefile to honor CC.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Adds filesec_internal.h for debug builds of copyfile.
</span>---
src/Makefile | 15 +++++++++++++--
src/copyfile.c | 5 +++++
src/filesec_internal.h | 21 +++++++++++++++++++++
3 files changed, 39 insertions(+), 2 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/Makefile b/src/Makefile
</span><span style='display:block; white-space:pre;color:#808080;'>index 4a740ff..d8b9461 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/Makefile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/Makefile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,8 +1,19 @@
</span> # Simple Makefile for building copyfile as standalone program.
copyfile: copyfile.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>- cc -D_COPYFILE_TEST -I../include $^ -o $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $(CC) -D_COPYFILE_TEST -I../include $^ -o $@
</span>
# No-quarantine version which works on 10.4
copyfile-nq: copyfile.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>- cc -D_COPYFILE_TEST -D_NO_QUARANTINE -I../include $^ -o $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $(CC) -D_COPYFILE_TEST -D_NO_QUARANTINE -I../include $^ -o $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Versions for debugging arch-related issues (10.4-compatible).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+DEBUG_FLAGS = -g3 -O0 -D_COPYFILE_TEST -D_COPYFILE_DEBUG -D_NO_QUARANTINE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+copyfile-ppc: copyfile.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $(CC) -arch ppc $(DEBUG_FLAGS) -I../include $^ -o $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+copyfile-i386: copyfile.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $(CC) -arch i386 $(DEBUG_FLAGS) -I../include $^ -o $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+copyfile-dbg: copyfile-ppc copyfile-i386
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+.PHONY: copyfile-dbg
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/copyfile.c b/src/copyfile.c
</span><span style='display:block; white-space:pre;color:#808080;'>index 5cbd495..2c12649 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/copyfile.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/copyfile.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -51,6 +51,11 @@
</span> #include "MacportsLegacySupport.h"
#endif
<span style='display:block; white-space:pre;background:#e0ffe0;'>+/* Let gdb see the filesec layout */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#ifdef _COPYFILE_DEBUG
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#include "filesec_internal.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> #if defined(_COPYFILE_TEST) || __MPLS_LIB_SUPPORT_COPYFILE_10_6__
#include <err.h>
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/filesec_internal.h b/src/filesec_internal.h
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..1bce5e9
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/filesec_internal.h
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,21 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+/* Layout of filesec_t struct, solely for debugging. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#include <sys/types.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#include <uuid/uuid.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+struct _filesec {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int fs_valid;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define FS_VALID_UID (1<<0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define FS_VALID_GID (1<<1)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define FS_VALID_UUID (1<<2)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define FS_VALID_GRPUUID (1<<3)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define FS_VALID_MODE (1<<4)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#define FS_VALID_ACL (1<<5)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ uid_t fs_uid;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gid_t fs_gid;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ uuid_t fs_uuid;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ uuid_t fs_grpuuid;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ mode_t fs_mode;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size_t fs_aclsize;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void *fs_aclbuf;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+};
</span></pre><pre style='margin:0'>
</pre>