<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>