pkgsrc/math/scilab/Makefile
dmcmahill 643a873c93 do not install dold which is has a non-existant interpreter. It isn't used
by any system that pkgsrc supports anyway.  It seems to only be used by
ultrix and it isn't clear that scilab still works on ultrix anyway and it almost
certainly doesn't under pkgsrc.
2007-10-07 20:35:04 +00:00

139 lines
5.1 KiB
Makefile

# $NetBSD: Makefile,v 1.74 2007/10/07 20:35:04 dmcmahill Exp $
#
DISTNAME= ${SCIBASE}-src
PKGREVISION= 2
PKGNAME= ${SCIBASE}
CATEGORIES= math
MASTER_SITES= http://www.scilab.org/download/4.1/
MAINTAINER= dmcmahill@NetBSD.org
HOMEPAGE= http://www.scilab.org/
COMMENT= High-level scientific math programming environment with graphics
SCIBASE= scilab-4.1
# don't forget to update SCI and SCIVERSION in the buildlink3.mk file when
# SCIBASE is updated.
WRKSRC= ${WRKDIR}/${SCIBASE}
#needs FPC code not found in older versions of NetBSD
NOT_FOR_PLATFORM= NetBSD-1.[0-4]*-alpha NetBSD-1.5-alpha \
NetBSD-1.5.*-alpha NetBSD-1.5[A-U]-alpha
USE_LANGUAGES= c fortran
USE_X11BASE= yes
USE_LIBTOOL= yes
USE_TOOLS+= tee
GNU_CONFIGURE= yes
CONFIGURE_ARGS+= --without-local-xaw
EVAL_PREFIX+= TCL_PREFIX=tcl
EVAL_PREFIX+= TK_PREFIX=tk
CONFIGURE_ARGS+= --with-tcl-library=${TCL_PREFIX}/lib
CONFIGURE_ARGS+= --with-tcl-include=${TCL_PREFIX}/include
CONFIGURE_ARGS+= --with-tk-library=${TK_PREFIX}/lib
CONFIGURE_ARGS+= --with-tk-include=${TK_PREFIX}/include
CONFIGURE_ENV+= TCL_CONFIG_SH=${BUILDLINK_PREFIX.tcl}/lib/tclConfig.sh
CONFIGURE_ENV+= TK_CONFIG_SH=${BUILDLINK_PREFIX.tk}/lib/tkConfig.sh
CONFIGURE_ENV+= CC_LDFLAGS=${X11_LDFLAGS:Q}\ ${COMPILER_RPATH_FLAG:Q}${BUILDLINK_PREFIX.tk:Q}/lib
CONFIGURE_ENV+= FC_LDFLAGS=${X11_LDFLAGS:Q}\ ${COMPILER_RPATH_FLAG:Q}${BUILDLINK_PREFIX.tk:Q}/lib
# override HOME to avoid picking up a bad ${HOME}/.scilab during the build
MAKE_ENV+= HOME=${WRKSRC:Q}
MAKE_ENV+= PVM_ROOT=${PVM_ROOT:Q}
CONFIGURE_ENV+= LOCALBASE=${LOCALBASE:Q}
PVM_ROOT?= ${LOCALBASE}/pvm3
CONFIGURE_ENV+= PVM_ROOT=${PVM_ROOT:Q}
CONFIGURE_ENV+= X11BASE=${X11BASE:Q}
PLIST_SUBST+= SCIBASE=${SCIBASE:Q}
UNWRAP_FILES+= Makemex config/configuration config/Makeso.incl
BUILDLINK_DEPMETHOD.sablotron= build
.include "../../mk/bsd.prefs.mk"
.if (${MACHINE_ARCH} == "alpha")
pre-fetch: ${WRKDIR}
@${ECHO} "===> Checking if you have working FPC"
${CC} ${CFLAGS} -o ${WRKDIR}/chk_ieee ${FILESDIR}/chk_ieee.c
@cd ${WRKDIR} && if ./chk_ieee ; then ${ECHO} "yes" ; else \
${ECHO} "no" ; \
${ECHO} "${PKGNAME} requires floating point completion on this system" ;\
${ECHO} "Possible causes for this check failing are:" ;\
${ECHO} " - you have an old /usr/lib/* which was not compiled with -mieee" ;\
${ECHO} " - you have overridden CFLAGS for pkgsrc removing the -mieee flag" ;\
${ECHO} "Without fixing this problem ${PKGNAME} will not work." ; ${FALSE} ; fi
.endif
EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
#post-extract:
#.for f in scicos scicos_blocks
# @extract_file=${DISTDIR}/${DIST_SUBDIR}/${f}.tar.gz ; export extract_file ; \
# cd ${WRKSRC}/macros/${f} && ${EXTRACT_CMD}
#.endfor
# Scilab has runtime support for building shared objects that can be
# loaded. It needs to know the right 'make' program.
post-patch:
${MV} ${WRKSRC}/macros/util/ilib_compile.sci ${WRKSRC}/macros/util/ilib_compile.sci.bak
${SED} 's|make -f|export PATH ; ${MAKE_PROGRAM} -f|g' \
${WRKSRC}/macros/util/ilib_compile.sci.bak > \
${WRKSRC}/macros/util/ilib_compile.sci
${RM} ${WRKSRC}/macros/util/ilib_compile.sci.bak
# clean up any possible leftovers from 'make test' so that our PLIST
# will still be right. Also clean up a reference to WRKSRC.
pre-install:
cd ${WRKSRC}/examples && ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} distclean
${FIND} ${WRKSRC}/examples -name \*.blsav -print | ${XARGS} ${RM} -f
${MV} ${WRKSRC}/maple/maple2scilab.mpl ${WRKSRC}/maple/maple2scilab.mpl.bak
${SED} 's;${WRKSRC};${PREFIX}/lib/${SCIBASE};g' ${WRKSRC}/maple/maple2scilab.mpl.bak > \
${WRKSRC}/maple/maple2scilab.mpl
${RM} -f ${WRKSRC}/maple/maple2scilab.mpl.bak
# delete some .orig files that got created by patching
# also fix the libtool link
post-install:
${RM} -f ${PREFIX}/lib/${SCIBASE}/config/Makeso.incl.in.orig
${RM} -f ${PREFIX}/lib/${SCIBASE}/macros/util/scipad.sci.orig
${RM} -f ${PREFIX}/lib/${SCIBASE}/libtool
${LN} -s ${LOCALBASE}/bin/libtool ${PREFIX}/lib/${SCIBASE}/libtool
${RM} -f ${PREFIX}/lib/${SCIBASE}/bin/dold
${RM} -f ${PREFIX}/lib/${SCIBASE}/config/*.subst.sav
${RM} -f ${PREFIX}/lib/${SCIBASE}/config/config.guess
${RM} -f ${PREFIX}/lib/${SCIBASE}/config/config.sub
.for __tmp__ in scilab.g scilab.g.in scilab-gtk.g scilab-gtk.g.in
${RM} -f ${PREFIX}/lib/${SCIBASE}/scripts/${__tmp__}
.endfor
.if ${MACHINE_ARCH} == "arm" || ${MACHINE_ARCH} == "arm32"
GCC_REQD+= 2.95.3
.endif
# the "SCI=0 && unset SCI" is done because some of the tests really will
# fail if SCI is set to anything.
MAKE_ENV+= SCI=${WRKSRC:Q}
do-test:
cd ${WRKSRC}/examples && \
${MAKE_ENV} ${MAKE_PROGRAM} tests 2>&1 | \
${TEE} ${WRKDIR}/examples.log
# scilab wants ocamlopt so use the same list here as in the
# lang/ocaml package
.if (${MACHINE_ARCH} == "i386") || (${MACHINE_ARCH} == "powerpc") || \
(${MACHINE_ARCH} == "sparc")
PLIST_SRC= ${PKGDIR}/PLIST.opt ${PKGDIR}/PLIST
.include "../../lang/ocaml/buildlink3.mk"
.else
PLIST_SRC= ${PKGDIR}/PLIST
CONFIGURE_ARGS+= --without-ocaml
.endif
.include "../../parallel/pvm3/buildlink3.mk"
.include "../../textproc/sablotron/buildlink3.mk"
.include "../../x11/tk/buildlink3.mk"
.include "../../x11/Xaw3d/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"