Files
macports-ports/lang/tclxml/files/libxml2-2.12.patch
Ryan Carsten Schmidt 3531ca9da2 tclxml: Fix build; modernize Portfile
Fix implicit function declaration and incompatible function pointer
types. Modernize checksums. Use https homepage and avoid redirects in
master_sites. Remove invalid --with-prefix configure arg. Escape periods
in livecheck.regex.

Closes: https://trac.macports.org/ticket/73675
2026-03-19 04:03:46 -05:00

56 lines
2.2 KiB
Diff

Fix:
docObj.c:124:60: error: incompatible function pointer types passing 'void (void *, xmlErrorPtr)' (aka 'void (void *, struct _xmlError *)') to parameter of type 'xmlStructuredErrorFunc' (aka 'void (*)(void *, const struct _xmlError *)') [-Wincompatible-function-pointer-types]
https://cgit.freebsd.org/ports/commit/?id=af36765e17ba36d0e86e95d4476b67f894209468
--- docObj.c.orig
+++ docObj.c
@@ -1729,9 +1729,13 @@
}
void
-TclXML_libxml2_ErrorHandler (ctx, error)
- void *ctx; /* ignore - depends on context */
- xmlErrorPtr error;
+TclXML_libxml2_ErrorHandler (void *ctx,
+#if LIBXML_VERSION >= 21200
+ const xmlError *error
+#else
+ xmlError *error
+#endif
+ )
{
ThreadSpecificData *tsdPtr = Tcl_GetThreadData(&dataKey, sizeof(ThreadSpecificData));
Tcl_Obj *objPtr;
--- include/tclxml-libxml2/tclxml-libxml2Decls.h.orig
+++ include/tclxml-libxml2/tclxml-libxml2Decls.h
@@ -55,7 +55,12 @@
TclXML_libxml2_DocumentHandling keep));
/* 10 */
EXTERN void TclXML_libxml2_ErrorHandler _ANSI_ARGS_((void * ctx,
- xmlErrorPtr error));
+#if LIBXML_VERSION >= 21200
+ const xmlError *error));
+#else
+ xmlError *error));
+#endif
+
/* 11 */
EXTERN void TclXML_libxml2_ResetError _ANSI_ARGS_((
Tcl_Interp * interp));
@@ -81,7 +86,13 @@
int (*tclXML_libxml2_GetTclDocFromNode) _ANSI_ARGS_((Tcl_Interp * interp, xmlNodePtr nodePtr, TclXML_libxml2_Document ** tDocPtrPtr)); /* 7 */
void (*tclXML_libxml2_DestroyDocument) _ANSI_ARGS_((TclXML_libxml2_Document * tDocPtr)); /* 8 */
void (*tclXML_libxml2_DocKeep) _ANSI_ARGS_((Tcl_Obj * objPtr, TclXML_libxml2_DocumentHandling keep)); /* 9 */
- void (*tclXML_libxml2_ErrorHandler) _ANSI_ARGS_((void * ctx, xmlErrorPtr error)); /* 10 */
+ void (*tclXML_libxml2_ErrorHandler) _ANSI_ARGS_((void * ctx,
+#if LIBXML_VERSION >= 21200
+ const xmlError * error
+#else
+ xmlError * error
+#endif
+ )); /* 10 */
void (*tclXML_libxml2_ResetError) _ANSI_ARGS_((Tcl_Interp * interp)); /* 11 */
Tcl_Obj * (*tclXML_libxml2_GetErrorObj) _ANSI_ARGS_((Tcl_Interp * interp)); /* 12 */
void (*tclXML_libxml2_SetErrorNodeFunc) _ANSI_ARGS_((Tcl_Interp * interp, TclXML_ErrorNodeHandlerProc * proc)); /* 13 */