730ba9ab46
Based on patch provided by Aleksej Saushev in PR 36471. pkgsrc changes: Enable to build x11 feature (optional, default=on). Previously, depend on x11, but not build x11 feature. scm5e3 news: Richard Harke ported SCM to the Linux-ia64. SRFI-94 Type-Restricted Numerical Functions. SRFI-63 uniform array type support expanded to: A:floC64b inexact 64.bit binary flonum complex A:floC32b inexact 32.bit binary flonum complex A:floC16b inexact 16.bit binary flonum complex A:floR64b inexact 64.bit binary flonum real A:floR32b inexact 32.bit binary flonum real A:floR16b inexact 16.bit binary flonum real A:fixZ32b exact 32.bit binary fixnum A:fixZ16b exact 16.bit binary fixnum A:fixZ8b exact 8.bit binary fixnum A:fixN32b exact 32.bit nonnegative binary fixnum A:fixN16b exact 16.bit nonnegative binary fixnum A:fixN8b exact 8.bit nonnegative binary fixnum A:bool boolean string char Radey Shouman has changed LETREC to behave like LETREC*: * eval.c (ceval_1): Change LETREC behavior to that of LETREC*: initializers are run in left to right order, and may use previously evaluated variables bound in the same contour. This change also applies to LETRECs resulting from internal DEFINE. * eval.c (macroexp1): Add #ifdef to switch case handling line numbers in ceval_1 so that they are safely discarded when MEMOIZE_LOCALS is not #defined. Perhaps line number generation should be disabled in that case. * scl.c: Changes to allow compilation with MinGW (gnu-win32); asinh, acosh, and atanh are not yet supported. From Aubrey Jaffer: * indexes.texi (Indexes): Give each index its own node when not in info mode. Moved index stuff here so it doesn't break texinfo-every-node-update. * scm.texi (Index): Replaced nodes under Indexes with node Index when in info mode; fixes indexing in Emacs 21.4.1. Converted to use @copying. (Indexes): Reorganized. (Data Type Representations): Corrected pattern for specfun and cclo. * byte.c (subbytes): Added. (scm_subbytes_read, scm_subbytes_write): Renamed from substring. * Makefile (dscm4, dscm5): != is string operator in shell. "mv -f" for previous scm, slibcat, and implcat. * Init5e2.scm (boot-tail): Don't load ScmInit.scm if *script*. (string-index, read-line): Defined for login->home-directory, which may be called before REQUIRE is defined. * Makefile (dscm4, dscm5): Added randomize_va_space machinations. (dvi, pdf): New tetex-3.0(-20.FC5) broke them -- fixed. (SETARCH): Workarounds allow dumping in recent Linux. * time.c (linux): defined CLKTCK to (sysconf(_SC_CLK_TCK)). * repl.c (scm_read_numbered): Don't #ifndef MEMOIZED_LOCALS. * build.scm (dont-memoize-locals): Added feature. (stack-limit): Removed feature. * scmfig.h (STACK_LIMIT): Always defined. (CHECK_STACK): Condition on scm_verbose. * sys.c (stack_check): Always present. * Makefile (docs): Added target to make all documentation files; then invoke xdvi. * ugsetjmp.s (_setjump, _longjump): For Ultrix VAX circa 1997. * subr.c (mkbig, adjbig): Improved overflow message. * mkimpcat.scm (wbtab, rwb-isam): moved to "Simple associations". (add-source): Use 'source form and check file's existence. * scl.c (scm_magnitude): Extend dynamic range by eliminating intermediate expression swell. (divide): Use "Smith's formula" to extend dynamic range; but makes an insignificant difference when compiled with -O3. (atanh, acosh, asinh): define if #ifndef HAVE_ATANH. * scmfig.h (HAVE_ATANH): Decides whether atanh, asinh, and acosh are supported. * r4rstest.scm (5 2 1): Expose Bigloo tprint redefinition bug. (test-bignum): Convert test bignums from strings. (have-bignums?): Check bignum arithmetic works. (test-inexact): Do complex tests only if non-real numbers are supported. (test-inexact): Added equal? tests. (test-inexact): Test for -0.0 lossage. (test-inexact): Check that / and magnitude work for very large and very small complex numbers (1e300; 1e-300);
63 lines
1.7 KiB
Makefile
63 lines
1.7 KiB
Makefile
# $NetBSD: Makefile,v 1.19 2007/08/02 14:47:24 obache Exp $
|
|
#
|
|
# Convert the version number as follows 2d2 -> 2.4.2, where the d is
|
|
# changed to a 4, representing the 4th letter.
|
|
# Thus, 5e3 -> 5.5.3
|
|
#
|
|
# Do not forget to update InitXXX.scm in files/buildscm.scm
|
|
|
|
DISTNAME= scm5e3
|
|
PKGNAME= scm-5.5.3
|
|
CATEGORIES= lang
|
|
MASTER_SITES= http://swissnet.ai.mit.edu/ftpdir/scm/
|
|
EXTRACT_SUFX= .zip
|
|
|
|
MAINTAINER= pkgsrc-users@NetBSD.org
|
|
HOMEPAGE= http://www.swiss.ai.mit.edu/~jaffer/SCM
|
|
COMMENT= Portable scheme interpreter
|
|
|
|
DEPENDS+= slib>=3.1.1:../../devel/slib
|
|
|
|
WRKSRC= ${WRKDIR}/scm
|
|
EVAL_PREFIX+= SLIB_PREFIX=slib
|
|
INFO_FILES= yes
|
|
|
|
SCM_MODULES+= sc2 ramap dynl edline gsubr ioext posix record rgx socket
|
|
SCM_MODULES+= unix continue scm scmmain findexec script time repl scl eval
|
|
SCM_MODULES+= sys subr debug unif rope unexelf
|
|
COMPILED_INITS+=init_edline
|
|
|
|
.include "options.mk"
|
|
|
|
SRCS= ${SCM_MODULES:=.c}
|
|
OBJS= ${SCM_MODULES:=.o}
|
|
|
|
BUILD_TARGET= scmlit libscm.a
|
|
INSTALL_TARGET= install installlib
|
|
|
|
INSTALL_MAKE_FLAGS= ${MAKE_FLAGS} mandir=${PREFIX:Q}/${PKGMANDIR:Q}/
|
|
|
|
INSTALLATION_DIRS= ${PKGINFODIR} share/scm
|
|
|
|
.include "../../devel/readline/buildlink3.mk"
|
|
|
|
post-extract:
|
|
${SED} -e "s|@SLIB_PREFIX@|"${SLIB_PREFIX:Q}"|g" \
|
|
${FILESDIR}/require.scm > ${WRKSRC}/require.scm
|
|
${SED} -e "s|@PREFIX@|"${PREFIX:Q}"|g" \
|
|
-e "s|@COMPILED_INITS@|${COMPILED_INITS:=();}|g" \
|
|
${FILESDIR}/buildscm.sh > ${WRKSRC}/buildscm.sh
|
|
|
|
post-build:
|
|
cd ${WRKSRC} && env ${MAKE_ENV} LIBS=${LIBS:Q} \
|
|
SRCS=${SRCS:Q} OBJS=${OBJS:Q} \
|
|
${SH} ./buildscm.sh
|
|
|
|
post-install:
|
|
${INSTALL_DATA} ${WRKSRC}/slibcat ${PREFIX}/share/scm
|
|
cd ${WRKSRC}; for f in *.info *.info-[0-9]*; do \
|
|
${TEST} ! -f "$$f" || \
|
|
${INSTALL_DATA} "$$f" ${PREFIX}/${PKGINFODIR}; \
|
|
done
|
|
|
|
.include "../../mk/bsd.pkg.mk"
|