1 # Created by: Ronald Kuehn <rk@ronald.org>
8 MASTER_SITES= http://wwwfun.kurims.kyoto-u.ac.jp/soft/lsl/dist/ \
9 https://forge.ocamlcore.org/frs/download.php/816/
12 MAINTAINER= bf@FreeBSD.org
13 COMMENT= OpenGL interface for Objective Caml
17 CONFLICTS= ocaml-notk-[0-9]* ocaml-nox11-[0-9]*
20 USE_XORG= x11 xext xmu
26 WRKSRC= ${WRKDIR}/lablGL
28 DOCSDIR= ${PREFIX}/share/doc/ocaml/lablgl
29 EXAMPLESDIR= ${PREFIX}/share/examples/ocaml/lablgl
31 PATTERN= [[:space:]]*(do|then)?[[:space:]]*)cp([[:space:]]
33 OPTIONS_DEFINE= THREADS DOCS
34 OPTIONS_DEFAULT= THREADS
36 THREADS_DESC= Threaded Tcl/Tk (must match lang/ocaml)
38 .include <bsd.port.options.mk>
40 .if ${PORT_OPTIONS:MTHREADS}
41 THR_CPP= ${PTHREAD_CFLAGS}
42 THR_LD= ${PTHREAD_LIBS}
46 @${CP} ${WRKSRC}/Makefile.config.freebsd ${WRKSRC}/Makefile.config
49 @${REINPLACE_CMD} -e "s,/usr/X11R6,${LOCALBASE},g" \
50 -e "s,/usr/local,${LOCALBASE},g" \
51 -e "s,^\(BINDIR[ \t]*=\).*,\1${STAGEDIR}${PREFIX}/bin,g" \
52 -e "s,^\(RANLIB[ \t]*=\).*,\1ranlib,g" \
53 -e "s,^#\(LIBDIR[ \t]*=\).*,\1${PREFIX}/lib/ocaml,g" \
54 -e "s,^#\(DLLDIR[ \t]*=\).*,\1${STAGEDIR}${PREFIX}/lib/ocaml/stublibs,g" \
55 -e "s,^#\(INSTALLDIR[ \t]*=\).*,\1${STAGEDIR}${PREFIX}/lib/ocaml/lablGL,g" \
56 -e "s!^#\(COPTS[ \t]*=\).*!\1-c ${CFLAGS} ${THR_CPP}!g" \
57 -e "/^TKINCLUDES/s,=.*$$,= -I${TCL_INCLUDEDIR} -I${TK_INCLUDEDIR}," \
58 -e "/^TKLIBS/s,=.*$$,= -L${LOCALBASE}/lib -ltk${TK_SHLIB_VER}\
59 -ltcl${TCL_SHLIB_VER} ${THR_LD}," \
60 ${WRKSRC}/Makefile.config
62 @${REINPLACE_CMD} -E \
63 -e '/exec ocaml/s,\$$\(INSTALLDIR\),${PREFIX}/lib/ocaml/lablGL,' \
64 -e 's,^(${PATTERN}+.*INSTALLDIR),\1\$${BSD_INSTALL_DATA} \3,' \
65 -e 's,^(${PATTERN}+.*BINDIR),\1\$${BSD_INSTALL_SCRIPT} \3,' \
66 -e 's,^(${PATTERN}+.*LIBDIR),\1\$${BSD_INSTALL_DATA} \3,' \
67 ${WRKSRC}/src/Makefile ${WRKSRC}/LablGlut/src/Makefile \
68 ${WRKSRC}/Togl/src/Makefile
71 @${MKDIR} ${STAGEDIR}${PREFIX}/lib/ocaml/stublibs
74 @${MKDIR} ${STAGEDIR}${EXAMPLESDIR}/lablglut
75 @${MKDIR} ${STAGEDIR}${EXAMPLESDIR}/togl
76 @(cd ${WRKSRC}/LablGlut/examples && ${COPYTREE_SHARE} . \
77 ${STAGEDIR}${EXAMPLESDIR}/lablglut '! -name Makefile')
78 @(cd ${WRKSRC}/Togl/examples && ${COPYTREE_SHARE} . \
79 ${STAGEDIR}${EXAMPLESDIR}/togl '! -name Makefile')
80 @${MKDIR} ${STAGEDIR}${DOCSDIR}
81 ${INSTALL_DATA} ${WRKSRC}/README ${STAGEDIR}${DOCSDIR}
83 .include <bsd.port.mk>