freebsd-ports/x11-toolkits/p5-Tk/Makefile
Dimitry Andric ecedf2f3cd x11-toolkits/p5-Tk: fix build with clang 16
Clang 16 has a new error about incompatible function types, which shows
up when building x11-toolkits/p5-Tk:

  ./Xlib.t:334:14: error: incompatible function pointer types initializing 'KeySym (*)(Display *, unsigned int, int)' (aka 'unsigned long (*)(struct _XDisplay *, unsigned int, int)') with an expression of type 'KeySym (Display *, KeyCode, int)' (aka 'unsigned long (struct _XDisplay *, unsigned char, int)') [-Wincompatible-function-pointer-types]
  VFUNC(KeySym,XKeycodeToKeysym,V_XKeycodeToKeysym,_ANSI_ARGS_((Display *, unsigned int, int)))
               ^~~~~~~~~~~~~~~~

Indeed, the XKeycodeToKeysum function takes a 'KeyCode' as its second
parameter. Patch Xlib.t to make it so.

PR:		271521
Approved by:	pi (maintainer)
MFH:		2023Q2
2023-05-20 00:16:54 +02:00

61 lines
1.6 KiB
Makefile

PORTNAME= Tk
PORTVERSION= 804.035
PORTREVISION= 1
CATEGORIES= x11-toolkits tk perl5
MASTER_SITES= CPAN
PKGNAMEPREFIX= p5-
MAINTAINER= pi@FreeBSD.org
COMMENT= Re-port of a perl5 interface to Tk8.4
WWW= https://metacpan.org/release/Tk
LICENSE= ARTPERL10
LIB_DEPENDS= libpng.so:graphics/png \
libfreetype.so:print/freetype2 \
libfontconfig.so:x11-fonts/fontconfig
OPTIONS_DEFINE= XFT
OPTIONS_DEFAULT= XFT
XFT_DESC= Client-side fonts via libXft
MAKE_JOBS_UNSAFE= yes
USES= jpeg perl5 shebangfix xorg
SHEBANG_FILES= pTk/Tcl-pTk \
pTk/mkVFunc
USE_PERL5= configure
USE_XORG= x11
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MXFT}
CONFIGURE_ARGS= XFT=1
USE_XORG+= xft
.else
CONFIGURE_ARGS= XFT=0
.endif
post-patch:
@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
${WRKSRC}/JPEG/Makefile.PL \
${WRKSRC}/PNG/Makefile.PL \
${WRKSRC}/pTk/Makefile.PL
post-configure:
@${REINPLACE_CMD} \
-e '/^CC = / s|.*|CC = ${CC}|' \
-e '/^CCFLAGS = / s|.*|CCFLAGS = ${CFLAGS}|' \
-e '/^LD = / s|.*|LD = ${CC} ${CFLAGS} ${LDFLAGS}|' \
-e '/^FULL_AR = / s|.*|FULL_AR = ${AR}|' \
`${FIND} ${WRKSRC} -name Makefile`
post-install:
@${RM} ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}/auto/Tk/pTk/extralibs.ld
@${RMDIR} ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}/auto/Tk/pTk
${STRIP_CMD} ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}/auto/Tk/Tk.so
.for i in Canvas Compound Entry Event HList IO InputO JPEG Listbox Menubutton Mwm NBFrame PNG Pixmap Scale Scrollbar TList Text TixGrid WinPhoto X Xlib
${STRIP_CMD} \
${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}/auto/Tk/${i}/${i}.so
.endfor
.include <bsd.port.mk>