# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= reduce VERSION= 20230308 KEYWORDS= math lang VARIANTS= standard SDESC[standard]= Codemist Std Lisp general-purpose computer system HOMEPAGE= http://www.reduce-algebra.com/ CONTACT= nobody DOWNLOAD_GROUPS= main SITES[main]= SF/reduce-algebra/snapshot_2023-03-08 DISTFILE[1]= Reduce-svn6547-src.tar.gz:main DF_INDEX= 1 SPKGS[standard]= complete primary docs OPTIONS_AVAILABLE= none OPTIONS_STANDARD= none BUILD_DEPENDS= libtool:single:standard autoconf:single:standard automake:single:standard RUN_DEPENDS= gnuplot:complete:standard USES= gmake jpeg png tiff ncurses shebangfix zstd:build zlib:build fontconfig:build XORG_COMPONENTS= x11 xext xft xrender DISTNAME= Reduce-svn6547-src LICENSE= BSD2CLAUSE:primary LICENSE_FILE= BSD2CLAUSE:{{WRKSRC}}/csl/reduce.doc/BSD-LICENSE.txt LICENSE_SCHEME= solo FPC_EQUIVALENT= math/reduce SHEBANG_ADD_SH= scripts/here.sh MUST_CONFIGURE= gnu CONFIGURE_TARGET= {{VAR1}} CONFIGURE_ARGS= --with-csl --with-autogen=no AMDEP_TRUE="\#" am__fastdepCC_TRUE="\#" am__fastdepCXX_TRUE="\#" BUILD_TARGET= # SINGLE_JOB= yes SUB_FILES= redcsl CPPFLAGS= `freetype-config --cflags` -I{{NCURSESINC}} -fcommon LDFLAGS= `freetype-config --libs` -ltinfo VAR_OPSYS[freebsd]= VAR1={{ARCH_STANDARD}}-raven-freebsd{{MAJOR}} VAR_OPSYS[sunos]= VAR1={{ARCH_STANDARD}}-raven-solaris2.10 VAR_OPSYS[linux]= VAR1={{ARCH_STANDARD}}-raven-linux-gnu{{MAJOR}} VAR_OPSYS[netbsd]= VAR1={{ARCH_STANDARD}}-raven-netbsd{{MAJOR}} VAR_OPSYS[dragonfly]= VAR1={{ARCH_STANDARD}}-raven-dragonfly{{MAJOR}} VAR_OPSYS[midnightbsd]= VAR1=x86_64-raven-freebsd12.3 post-patch: ${REINPLACE_CMD} -e 's|/usr/pkg/|${LOCALBASE}/|' \ -e 's|`./config.guess`|${CONFIGURE_TARGET}|' \ ${WRKSRC}/scripts/make.sh ${REINPLACE_CMD} -e '/AC_CONFIG_MACRO_DIR(/d' \ ${WRKSRC}/configure.ac \ ${WRKSRC}/generic/newfront/configure.ac \ ${WRKSRC}/csl/cslbase/configure.ac \ ${WRKSRC}/psl/configure.ac ${REINPLACE_CMD} -e "s|am__api_version='1.15'|am__api_version='1.16'|" \ ${WRKSRC}/csl/cslbase/aclocal.m4 \ ${WRKSRC}/psl/aclocal.m4 pre-configure: (cd ${WRKSRC} && ./autogen.sh --sequential --with-csl) do-install: ${MKDIR} ${STAGEDIR}${PREFIX}/share/reduce ${STAGEDIR}${STD_DOCDIR} ${INSTALL_DATA} ${WRKSRC}/cslbuild/${CONFIGURE_TARGET}/csl/reduce.img \ ${STAGEDIR}${PREFIX}/share/reduce ${INSTALL_PROGRAM} ${WRKSRC}/cslbuild/${CONFIGURE_TARGET}/csl/reduce \ ${STAGEDIR}${PREFIX}/share/reduce ${INSTALL_SCRIPT} ${WRKDIR}/redcsl ${STAGEDIR}${PREFIX}/bin/ ${INSTALL_MAN} ${FILESDIR}/redcsl.1 ${STAGEDIR}${MANPREFIX}/man/man1/ (cd ${WRKSRC}/cslbuild/${CONFIGURE_TARGET}/csl/reduce.doc && \ ${COPYTREE_SHARE} . ${STAGEDIR}${STD_DOCDIR}) ${RM} ${STAGEDIR}${STD_DOCDIR}/*-LICENSE.txt ${RM} ${STAGEDIR}${STD_DOCDIR}/LGPL-2.1.txt (cd ${WRKSRC}/cslbuild/${CONFIGURE_TARGET}/csl/reduce.fonts && \ ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/share/reduce/reduce.fonts) ${INSTALL_DATA} ${WRKSRC}/doc/manual/manual.pdf \ ${STAGEDIR}${STD_DOCDIR} ${INSTALL_DATA} ${WRKSRC}/doc/primers/*.pdf \ ${STAGEDIR}${STD_DOCDIR} [FILE:1067:descriptions/desc.primary] REDUCE Codemist Standard Lisp, (CSL) version REDUCE is an interactive system for general algebraic computations of interest to mathematicians, scientists and engineers. CSL is a newer Lisp system that continues to evolve and is now written completely in C++, which makes it very easy to port to a new machine. Like PSL, it is a faithful implementation of Standard Lisp and has been optimized for running REDUCE. It requires a very small memory partition for its Lisp support. Furthermore, most of the REDUCE facilities are supported as machine independent pseudocode, which is quite compact. In the worst case, the performance of this system is about a factor of two slower than PSL, though in many cases it matches PSL performance. However, the memory use is smaller. All CSL versions are distributed with sufficient CSL support to run on the given computing system. This is also an ideal system for those wishing to embed algebraic calculations in a C or C++ programming environment. The developer of CSL before it became Open Source was Codemist Ltd. [FILE:104:distinfo] 2890beac30d8c497c58bd7c73f6c507ecabe318ace28e85d9c5a15e7884ea5a8 242413830 Reduce-svn6547-src.tar.gz [FILE:730:manifests/plist.primary] bin/redcsl share/man/man1/redcsl.1.gz share/reduce/ reduce reduce.img share/reduce/reduce.fonts/ README README.BaKoMa README.cmps-fonts cmex10.pfa cmex10.pfb cmex10.ttf cmex7.ttf cmex8.ttf cmex9.ttf cmmi10.pfa cmmi10.pfb cmmi10.ttf cmmi12.ttf cmmi5.ttf cmmi6.ttf cmmi7.ttf cmmi8.ttf cmmi9.ttf cmr10.pfa cmr10.pfb cmr10.ttf cmr12.ttf cmr17.ttf cmr5.ttf cmr6.ttf cmr7.ttf cmr8.ttf cmr9.ttf cmsy10.pfa cmsy10.pfb cmsy10.ttf cmsy5.ttf cmsy6.ttf cmsy7.ttf cmsy8.ttf cmsy9.ttf cmuntt.pfb cmuntt.ttf fonts.dir fonts.scale share/reduce/reduce.fonts/pfmfiles/ cmex10.pfm cmmi10.pfm cmr10.pfm cmsy10.pfm share/reduce/reduce.fonts/src/ cmex10.asm.gz cmmi10.asm.gz cmr10.asm.gz cmsy10.asm.gz [FILE:741:manifests/plist.docs] share/doc/reduce/ abstract.tex acknowl.tex appenda.tex aprop.tex cfrac.tex command.tex convert.tex exprn.tex header.tex hephys.tex heugcd.tex index.html insidereduce.pdf inter.tex intro.tex io.tex list.tex macros.tex maintain.tex manual.pdf manual.tex map.tex matrix.tex oper.tex oper2.tex polyrat.tex primer.pdf proc.tex progstr.tex r38_0001.html r38_0050.html r38_0100.html r38_0150.html r38_0200.html r38_0250.html r38_0300.html r38_0350.html r38_0400.html r38_0450.html r38_0500.html r38_0550.html r38_0600.html r38_0650.html r38_idx.html redlogo.gif rememb.tex rest.tex rlisp88.tex rlispref.tex sl.pdf solve.tex statemnt.tex structr.tex subst.tex symbolic.tex title.tex util.tex [FILE:1478:patches/patch-csl_cslbase_arith08.cpp] --- csl/cslbase/arith08.cpp.orig 2023-01-02 21:45:46 UTC +++ csl/cslbase/arith08.cpp @@ -880,13 +880,13 @@ inline int nlz(uint64_t x) #ifndef POPCOUNT_DEFINED #ifdef __GNUC__ -inline int popcount(uint64_t x) +inline int my_popcount(uint64_t x) { return __builtin_popcountll(x); } #else // __GNUC__ -inline int popcount(uint64_t x) +inline int my_popcount(uint64_t x) { x = (x & 0x5555555555555555U) + (x >> 1 & 0x5555555555555555U); x = (x & 0x3333333333333333U) + (x >> 2 & 0x3333333333333333U); x = x + (x >> 4) & 0x0f0f0f0f0f0f0f0fU; @@ -902,19 +902,19 @@ static LispObject Llogcount(LispObject e { SingleValued fn; if (is_fixnum(a)) { intptr_t n = int_of_fixnum(a); - if (a >= 0) return fixnum_of_int(popcount(n)); - else return fixnum_of_int(popcount(~n)); + if (a >= 0) return fixnum_of_int(my_popcount(n)); + else return fixnum_of_int(my_popcount(~n)); } else if (is_bignum(a)) { size_t len = (length_of_header(numhdr(a)) - CELL)/4; int n = 0; if ((int32_t)bignum_digits(a)[len-1] < 0) { for (size_t i=0; i