diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /dev-scheme/scm | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'dev-scheme/scm')
-rw-r--r-- | dev-scheme/scm/Manifest | 1 | ||||
-rw-r--r-- | dev-scheme/scm/files/scm-5.5.6-multiplefixes.patch | 81 | ||||
-rw-r--r-- | dev-scheme/scm/metadata.xml | 30 | ||||
-rw-r--r-- | dev-scheme/scm/scm-5.5.6.ebuild | 161 |
4 files changed, 273 insertions, 0 deletions
diff --git a/dev-scheme/scm/Manifest b/dev-scheme/scm/Manifest new file mode 100644 index 000000000000..4adb984d6ec2 --- /dev/null +++ b/dev-scheme/scm/Manifest @@ -0,0 +1 @@ +DIST scm-5e6.zip 912968 SHA256 97f1b284aacfca01ae44e936dd8468c1d68b0b323776ab5da1d6ec7cb737c1df diff --git a/dev-scheme/scm/files/scm-5.5.6-multiplefixes.patch b/dev-scheme/scm/files/scm-5.5.6-multiplefixes.patch new file mode 100644 index 000000000000..8636c47c7185 --- /dev/null +++ b/dev-scheme/scm/files/scm-5.5.6-multiplefixes.patch @@ -0,0 +1,81 @@ +diff -Naur scm.old//build.scm scm//build.scm +--- scm.old//build.scm 2009-08-03 15:35:57.000000000 -0300 ++++ scm//build.scm 2010-04-16 15:52:25.000000000 -0300 +@@ -540,7 +540,7 @@ + (graphics *unknown* "-I/usr/X11/include -DX11" "-lX11" + "/usr/X11/lib/libX11.sa" () ()) + (editline *unknown* "" "-lreadline" "/usr/lib/libreadline.a" () ()) +- (termcap *unknown* "" "-ltermcap" "/usr/lib/libtermcap.a" () ()) ++ (termcap *unknown* "" "-lncurses" "/usr/lib/libncurses.a" () ()) + (debug *unknown* "-g" "-g" #f () ()) + (socket *unknown* "" "" #f () ()) + (lib *unknown* "" "" #f () ("scmmain.c")) +diff -Naur scm.old//Makefile scm//Makefile +--- scm.old//Makefile 2009-08-03 15:38:21.000000000 -0300 ++++ scm//Makefile 2010-04-16 15:51:11.000000000 -0300 +@@ -178,18 +178,9 @@ + $(BUILD) -f udscm4.opt -o udscm4 -s $(IMPLPATH) + -rm $(ofiles) scmmain.o + dscm4: udscm4 $(ifiles) require.scm +- if [ -f /proc/sys/kernel/randomize_va_space -a\ +- "`cat /proc/sys/kernel/randomize_va_space`" != "0" ]; then {\ +- cat /proc/sys/kernel/randomize_va_space > randomize_va_space.tmp;\ +- echo 0 > /proc/sys/kernel/randomize_va_space;\ +- } fi + -rm -f slibcat implcat scm~ + -mv scm scm~ + echo "(quit)" | $(SETARCH) ./udscm4 -no-init-file -o scm +- if [ -f randomize_va_space.tmp ]; then {\ +- cat randomize_va_space.tmp > /proc/sys/kernel/randomize_va_space;\ +- rm randomize_va_space.tmp;\ +- } fi + + # dumpable R5RS interpreter + udscm5.opt: +@@ -199,20 +190,10 @@ + udscm5: $(cfiles) $(ufiles) $(hfiles) build.scm build udscm5.opt + $(BUILD) -f udscm5.opt -o udscm5 -s $(IMPLPATH) + -rm $(ofiles) scmmain.o +- strip udscm5 + dscm5: udscm5 $(ifiles) require.scm +- if [ -f /proc/sys/kernel/randomize_va_space -a\ +- "`cat /proc/sys/kernel/randomize_va_space`" != "0" ]; then {\ +- cat /proc/sys/kernel/randomize_va_space > randomize_va_space.tmp;\ +- echo 0 > /proc/sys/kernel/randomize_va_space;\ +- } fi + -rm -f slibcat implcat scm~ + -mv scm scm~ + echo "(quit)" | $(SETARCH) ./udscm5 -no-init-file -r5 -o scm +- if [ -f randomize_va_space.tmp ]; then {\ +- cat randomize_va_space.tmp > /proc/sys/kernel/randomize_va_space;\ +- rm randomize_va_space.tmp;\ +- } fi + $(MAKE) check + $(MAKE) checkmacro + +@@ -394,7 +375,7 @@ + PREVDOCS = prevdocs/ + html: $(htmldir)scm_toc.html $(htmldir)Xlibscm_toc.html $(htmldir)hobbit_toc.html + +-TEXI2HTML = /usr/local/bin/texi2html -split -verbose ++TEXI2HTML = /usr/bin/texi2html -split -verbose + + $(htmldir)scm_toc.html: Makefile $(texifiles) + ${TEXI2HTML} scm.texi +@@ -431,7 +412,7 @@ + + rpm_prefix=$(HOME)/rpmbuild/ + +-prefix = /usr/local/ ++prefix = /usr/ + exec_prefix = $(prefix) + # directory where `make install' will put executable. + bindir = $(exec_prefix)bin/ +@@ -498,7 +479,6 @@ + mkdir -p $(DESTDIR)$(bindir) + mkdir -p $(DESTDIR)$(man1dir) + -cp scm scmlit $(DESTDIR)$(bindir) +- -strip $(DESTDIR)$(bindir)scmlit + -cp scm.1 $(DESTDIR)$(man1dir) + mkdir -p $(DESTDIR)$(libscmdir) + test -f $(DESTDIR)$(libscmdir)require.scm || \ diff --git a/dev-scheme/scm/metadata.xml b/dev-scheme/scm/metadata.xml new file mode 100644 index 000000000000..f2fe873e0abe --- /dev/null +++ b/dev-scheme/scm/metadata.xml @@ -0,0 +1,30 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>scheme</herd> + <longdescription lang="en"> +SCM is a Scheme implementation conforming to Revised5 Report on the Algorithmic Language Scheme and the IEEE P1178 specification. + </longdescription> + <use> + <flag name='arrays'>Support for arrays, uniform-arrays and + uniform-vectors.</flag> + <flag name='bignums'>Support for large precision integers.</flag> + <flag name='cautious'>SCM will always check the number of arguments to + interpreted closures.</flag> + <flag name='dynamic-linking'>Be able to load compiled files while + running.</flag> + <flag name='engineering-notation'>Floats to display in engineering + notation (exponents always multiples of 3) instead of scientific + notation.</flag> + <flag name='gsubr'>generalized c arguments: for arbitrary + (more then 11) arguments to C functions.</flag> + <flag name='inexact'>Support for floating point numbers.</flag> + <flag name='ioext'>Commonly available I/O extensions: line I/O, file + positioning, file delete and rename, and directory functions.</flag> + <flag name='macro'>C level support for hygienic and referentially + transparent macros (syntax-rules macros).</flag> + <flag name='regex'>String regular expression matching.</flag> + <flag name='unix'>Support for: nice, acct, lstat, readlink, symlink, + mknod and sync.</flag> + </use> +</pkgmetadata> diff --git a/dev-scheme/scm/scm-5.5.6.ebuild b/dev-scheme/scm/scm-5.5.6.ebuild new file mode 100644 index 000000000000..fbcefdf71706 --- /dev/null +++ b/dev-scheme/scm/scm-5.5.6.ebuild @@ -0,0 +1,161 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="3" + +inherit versionator eutils flag-o-matic multilib + +#version magic thanks to masterdriverz and UberLord using bash array instead of tr +trarr="0abcdefghi" +MY_PV="$(get_version_component_range 1)${trarr:$(get_version_component_range 2):1}$(get_version_component_range 3)" + +MY_P=${PN}-${MY_PV} +S=${WORKDIR}/${PN} +DESCRIPTION="SCM is a Scheme implementation from the author of slib" +SRC_URI="http://groups.csail.mit.edu/mac/ftpdir/scm/${MY_P}.zip" +HOMEPAGE="http://swiss.csail.mit.edu/~jaffer/SCM" + +SLOT="0" +LICENSE="LGPL-3" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-macos" +IUSE="arrays bignums cautious dynamic-linking engineering-notation gsubr inexact +ioext macro ncurses posix readline regex sockets unix" + +#unzip for unpacking +DEPEND="app-arch/unzip + >=dev-scheme/slib-3.1.5 + dev-util/cproto + ncurses? ( sys-libs/ncurses ) + readline? ( sys-libs/libtermcap-compat )" +RDEPEND="${DEPEND}" + +src_prepare() { + epatch "${FILESDIR}"/${P}-multiplefixes.patch +} + +src_compile() { + # SLIB is required to build SCM. + local slibpath="${EPREFIX}/usr/share/slib/" + if [ -n "$SCHEME_LIBRARY_PATH" ]; then + einfo "using SLIB $SCHEME_LIBRARY_PATH" + elif [ -d ${slibpath} ]; then + export SCHEME_LIBRARY_PATH=${slibpath} + fi + + einfo "Making scmlit" + emake -j1 scmlit clean || die "faild to build scmlit" + + einfo "Building scm" + local features="" + use arrays && features+="arrays" + use bignums && features+=" bignums" + use cautious && features+=" cautious" + use engineering-notation && features+=" engineering-notation" + use inexact && features+=" inexact" + use macro && features+=" macro" + + ( use readline || + use ncurses || + use regex || + use posix || + use ioext || + use gsubr || + use sockets || + use unix || + use dynamic-linking ) && features+=" dynamic-linking" + + ./build \ + --compiler-options="${CFLAGS}" \ + --linker-options="${LDFLAGS} -L${EPREFIX}/$(get_libdir)" \ + -s "${EPREFIX}"/usr/$(get_libdir)/scm \ + -F ${features:="none"} \ + -h system \ + -o scm || die + + einfo "Building DLLs" + if use readline; then + ./build \ + --compiler-options="${CFLAGS}" \ + --linker-options="${LDFLAGS}" \ + -h system \ + -F edit-line \ + -t dll || die + fi + if use ncurses ; then + ./build \ + --compiler-options="${CFLAGS}" \ + --linker-options="${LDFLAGS}" \ + -F curses \ + -h system \ + -t dll || die + fi + if use regex ; then + ./build \ + --compiler-options="${CFLAGS}" \ + --linker-options="${LDFLAGS}" \ + -c rgx.c \ + -h system \ + -t dll || die + fi + if use gsubr ; then + ./build \ + --compiler-options="${CFLAGS}" \ + --linker-options="${LDFLAGS}" \ + -c gsubr.c \ + -h system \ + -t dll || die + fi + if use ioext ; then + ./build \ + --compiler-options="${CFLAGS}" \ + --linker-options="${LDFLAGS}" \ + -c ioext.c \ + -h system \ + -t dll || die + fi + if use posix; then + ./build \ + --compiler-options="${CFLAGS}" \ + --linker-options="${LDFLAGS}" \ + -c posix.c \ + -h system \ + -t dll || die + fi + if use sockets ; then + ./build \ + --compiler-options="${CFLAGS}" \ + --linker-options="${LDFLAGS}" \ + -c socket.c \ + -h system \ + -t dll || die + fi + if use unix ; then + ./build \ + --compiler-options="${CFLAGS}" \ + --linker-options="${LDFLAGS}" \ + -c unix.c \ + -h system \ + -t dll || die + fi +} + +src_test() { + emake check +} + +src_install() { + emake DESTDIR="${D}" install || die "Install failed" + + doinfo scm.info + doinfo hobbit.info +} + +pkg_postinst() { + [ "${ROOT}" == "/" ] && pkg_config +} + +pkg_config() { + einfo "Regenerating catalog..." + scm -e "(require 'new-catalog)" +} |