summaryrefslogtreecommitdiffstats
path: root/graphics/libimg/files/Makefile.bsd
blob: 2456cab659b3c73f7f5d8f2b81deef886a6dc861 (plain)
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
LIB=		img

PORTVERSION?=	1.2.4
LOCALBASE?=	/usr/local
X11BASE?=	/usr/X11R6
TCL_VER?=	8.3

SHLIB_MAJOR=	1
SHLIB_MINOR=	2

.if exists(${LOCALBASE}/lib/tk${TCL_VER}/tkConfig.sh)
# If for some reason  the file does not exist -- make the best guess. In
# reality, it will exist by the time we are actually doing the build, so
# the quality of the guess does not matter. But we still try well. -mi
TCL_STUB_LIB_SPEC!=	. ${LOCALBASE}/lib/tcl${TCL_VER}/tclConfig.sh; \
		echo $$TCL_STUB_LIB_SPEC
TK_STUB_LIB_SPEC!=	. ${LOCALBASE}/lib/tk${TCL_VER}/tkConfig.sh; \
		echo $$TK_STUB_LIB_SPEC
.else
TCL_STUB_LIB_SPEC=	-L${LOCALBASE}/lib -ltclstub${TCL_VER:S/.//}
TK_STUB_LIB_SPEC=	-L${LOCALBASE}/lib -ltkstub${TCL_VER:S/.//}
.endif

LDADD=		-lm -lz -L${LOCALBASE}/lib -lpng -ljpeg -ltiff \
		${TCL_STUB_LIB_SPEC} ${TK_STUB_LIB_SPEC} \
		-L${X11BASE}/lib -lX11

CFLAGS+=	-I${LOCALBASE}/include/tcl${TCL_VER}
CFLAGS+=	-I${LOCALBASE}/include/tcl${TCL_VER}/generic
CFLAGS+=	-D__X11__ -I${X11BASE}/include
CFLAGS+=	-I${LOCALBASE}/include/tk${TCL_VER}
CFLAGS+=	-DNDEBUG -Wall -I. -DUSE_TCL_STUBS -DUSE_TK_STUBS
CFLAGS+=	-DVERSION=\"${PORTVERSION}\" -I${LOCALBASE}/include
CFLAGS+=	-DHAVE_JPEGLIB_H -DHAVE_TIFF_H -DHAVE_DLFCN_H -DHAVE_IMG_H

# This seems terrible... The package uses libtiff's interfaces, which are
# clearly marked as internal... It includes the libtiff's header files, which
# libtiff itself does NOT install.	-mi
CFLAGS+=	-I${.CURDIR}/libtiff

INTERNALLIB	= don't build the useless static version
NOPROFILE	= don't build the profilable lib

all: ${SHLIB_NAME} pkgIndex.tcl

pkgIndex.tcl: pkgIndex.tcl.in
	sed -e 's,@IMG_PATCH_LEVEL@,${PORTVERSION},g' \
		-e 's,@IMG_SHARED_LIB_FILE@,../${SHLIB_NAME},g' \
		< pkgIndex.tcl.in > pkgIndex.tcl

DIR		= lib/Img1.2
INSTDIR		= ${LOCALBASE}/${DIR}
SHLIBDIR	= ${LOCALBASE}/lib

${INSTDIR} ${INSTDIR}/msgs:
	${MKDIR} $@

beforeinstall: ${INSTDIR} ${INSTDIR}/msgs
	${INSTALL_DATA} pkgIndex.tcl ${.CURDIR}/demo.tcl ${.CURDIR}/tkv.tcl \
		${.CURDIR}/imgmsg.tcl ${INSTDIR}
	${INSTALL_DATA} ${.CURDIR}/msgs/* ${INSTDIR}/msgs/

environ:
	@${ECHO} SHLIB_NAME=${SHLIB_NAME} SHLIB_LINK=${SHLIB_LINK} DIR=${DIR}

#		fundamentals of this library
SRCS	=	imgInit.c imgObj.c imgUtil.c imgPmap.c imgUnixPmap.c \
		imgBMP.c imgGIF.c imgJPEG.c imgPNG.c imgPS.c \
		imgTIFF.c imgTIFFjpeg.c imgTIFFpixar.c imgTIFFzip.c \
		imgWindow.c imgXBM.c imgXPM.c

test:	$(SHLIB_NAME)
	PATH=${TK_BIN_DIR}:${PATH}; export PATH; \
	TCLLIBPATH=`pwd`; export TCLLIBPATH; \
	export SHLIB_PATH; \
	LD_LIBRARY_PATH=`pwd`; \
	export LD_LIBRARY_PATH; \
	wish${TCL_VER} demo.tcl

.include <bsd.lib.mk>
OpenPOWER on IntegriCloud