aboutsummaryrefslogtreecommitdiff
path: root/graphics/libimg/Makefile
blob: 53c5dd272902dd72f7ab409ac1d30b24122c4e88 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# Created by: Glenn Johnson
# $FreeBSD$

PORTNAME=	libimg
PORTVERSION=	1.4.2
CATEGORIES?=	graphics tk
MASTER_SITES=	SF/tkimg/tkimg/${PORTVERSION:R}
DISTNAME=	tkimg${PORTVERSION}

MAINTAINER=	mi@aldan.algebra.com
COMMENT=	A library of image format handlers for Tk4.1 and later

BUILD_DEPENDS=	dtplite:${PORTSDIR}/devel/tcllib
LIB_DEPENDS=	libpng15.so:${PORTSDIR}/graphics/png \
		libjpeg.so:${PORTSDIR}/graphics/jpeg \
		libtiff.so:${PORTSDIR}/graphics/tiff

PLIST_SUB+=	SHLIB_NAME="${SHLIB_NAME}" \
		SHLIB_LINK="${SHLIB_LINK}"

WRKSRC=		${WRKDIR}/tkimg${PORTVERSION:R}
USES=		tk
USE_BZIP2=	yes

# We don't need the bundled libraries:
EXTRACT_AFTER_ARGS=	--exclude '*/libz/*' --exclude zlib \
		--exclude 'config.*' --exclude Makefile \
		--exclude '*/compat/*' --exclude '*/libtiff/*' \
		--exclude '*/libjpeg/*' --exclude '*/libpng/*'
MAKE_ARGS+=	INSTALL_ROOT="${STAGEDIR}"
USE_AUTOTOOLS=	autoconf
CONFIGURE_ARGS=	--with-tcl="${TCL_LIBDIR}" --with-tk="${TK_LIBDIR}"
CONFIGURE_ENV=	WRKDIR="${WRKDIR}"

post-patch:
	${REINPLACE_CMD} -E -e 's,"(zlib|tiff|jpeg|png)tcl.h",<\1.h>,' \
		-e 's,jpeg\.h,jpeglib.h,' ${WRKSRC}/*/*.[ch]
.for d in jpeg png tiff zlib
	touch ${WRKDIR}/$dtclConfig.sh
.endfor

post-configure:
	# Do not link with X11 -- none of tkimg code uses X directly
	${REINPLACE_CMD} -E -e 's,-L[^[:space:]]+[[:space:]]+-lX[^[:space:]]*,,g' \
		${WRKSRC}/*/Makefile
.for l in jpeg png tiff
	# Link with -l$l
	${REINPLACE_CMD} -E \
		-e 's,^SHLIB_LD_LIBS[[:space:]]*=[[:space:]]*(.*),SHLIB_LD_LIBS=\1 -l$l,' \
		-e 's,-lpng$$,-lpng15,' ${WRKSRC}/$l/Makefile
.endfor

post-install:
	${MKDIR} ${STAGEDIR}${EXAMPLESDIR}/msgs/
	${INSTALL_DATA} ${WRKSRC}/msgs/*.msg ${STAGEDIR}${EXAMPLESDIR}/msgs/
	${INSTALL_SCRIPT} ${WRKSRC}/demo.tcl ${WRKSRC}/tkv.tcl ${STAGEDIR}${EXAMPLESDIR}/

.include <bsd.port.mk>