summaryrefslogtreecommitdiff
path: root/dev-lang/smlnj/smlnj-110.82.ebuild
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 20:57:42 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 20:57:42 +0100
commit1798c4aeca70ac8d0a243684d6a798fbc65735f8 (patch)
treee48e19cb6fa03de18e1c63e1a93371b7ebc4eb56 /dev-lang/smlnj/smlnj-110.82.ebuild
parentd87262dd706fec50cd150aab3e93883b6337466d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-lang/smlnj/smlnj-110.82.ebuild')
-rw-r--r--dev-lang/smlnj/smlnj-110.82.ebuild166
1 files changed, 0 insertions, 166 deletions
diff --git a/dev-lang/smlnj/smlnj-110.82.ebuild b/dev-lang/smlnj/smlnj-110.82.ebuild
deleted file mode 100644
index 1df1108e8973..000000000000
--- a/dev-lang/smlnj/smlnj-110.82.ebuild
+++ /dev/null
@@ -1,166 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit eutils multilib toolchain-funcs
-
-DESCRIPTION="Standard ML of New Jersey compiler and libraries"
-HOMEPAGE="http://www.smlnj.org"
-
-BASE_URI="http://smlnj.cs.uchicago.edu/dist/working/${PV}"
-
-FILES="
-doc.tgz
-
-config.tgz
-
-cm.tgz
-compiler.tgz
-runtime.tgz
-system.tgz
-MLRISC.tgz
-smlnj-lib.tgz
-old-basis.tgz
-
-ckit.tgz
-nlffi.tgz
-
-cml.tgz
-eXene.tgz
-
-ml-lpt.tgz
-ml-lex.tgz
-ml-yacc.tgz
-ml-burg.tgz
-
-pgraph.tgz
-trace-debug-profile.tgz
-
-heap2asm.tgz
-
-smlnj-c.tgz
-"
-
-#use amd64 in 32-bit mode
-SRC_URI="amd64? ( ${BASE_URI}/boot.x86-unix.tgz -> ${P}-boot.x86-unix.tgz )
- ppc? ( ${BASE_URI}/boot.ppc-unix.tgz -> ${P}-boot.ppc-unix.tgz )
- sparc? ( ${BASE_URI}/boot.sparc-unix.tgz -> ${P}-boot.sparc-unix.tgz )
- x86? ( ${BASE_URI}/boot.x86-unix.tgz -> ${P}-boot.x86-unix.tgz )"
-
-for file in ${FILES}; do
- SRC_URI+=" ${BASE_URI}/${file} -> ${P}-${file} "
-done
-
-LICENSE="BSD"
-SLOT="0"
-
-#sparc support should be there but is untested
-KEYWORDS="-* ~amd64 ~ppc ~x86"
-IUSE="pax_kernel"
-DEPEND="pax_kernel? ( sys-apps/elfix )"
-RDEPEND=""
-
-S=${WORKDIR}
-
-src_unpack() {
- mkdir -p "${S}"
- for file in ${A}; do
- [[ ${file} != ${P}-config.tgz ]] && cp "${DISTDIR}/${file}" "${S}/${file#${P}-}"
- done
-
-# make sure we don't use the internet to download anything
- unpack ${P}-config.tgz && rm config/*.bat
- echo SRCARCHIVEURL=\"file:/${S}\" > "${S}"/config/srcarchiveurl
-}
-
-src_prepare() {
- # respect CC et al. (bug 243886)
- mkdir base || die # without this unpacking runtime will fail
- ./config/unpack "${S}" runtime || die
- epatch "${FILESDIR}/${PN}-110.82-pax-p1.patch"
- epatch "${FILESDIR}/${PN}-110.82-pax-p2.patch"
- epatch "${FILESDIR}/${PN}-110.82-pax-p3.patch"
- default
- for file in mk.*; do
- sed -e "/^AS/s:as:$(tc-getAS):" \
- -e "/^CC/s:gcc:$(tc-getCC):" \
- -e "/^CPP/s:gcc:$(tc-getCC):" \
- -e "/^CFLAGS/{s:-O[0123s]:: ; s:=:= ${CFLAGS}:}" \
- -e "/^PAXMARK/s:true:"$(usex pax_kernel "paxmark.sh" "true")":" \
- -i base/runtime/objs/${file}
- done
-}
-
-src_compile() {
- SMLNJ_HOME="${S}" \
- ./config/install.sh || die "compilation failed"
-}
-
-# Return an array which has the element $1 removed from the array $[@]:1
-# i.e. return an array where the first function argument $1 removed from
-# the array consisting of the rest of the function arguments.
-remove_element_from_array() {
- local args=("$@")
- local e=${args[0]}
- local oa=()
- for x in "${args[@]:1}"; do
- if [ ${x} != ${e} ]; then
- oa+=( ${x} )
- fi
- done
- echo "${oa[@]}"
-}
-
-# smlnj 110.82 is still only 32 bit. On a multilib 64 bit system
-# smlnj_get_libdir tries to find the 32 bit lib directory. Or otherwise,
-# just return the system lib directory $(get_libdir).
-smlnj_get_libdir() {
- local x=$(get_all_libdirs)
- # Remove the native lib dir
- local y=$(remove_element_from_array $(get_libdir) ${x[@]})
- # Remove libx32 if it exists
- local z=$(remove_element_from_array "libx32" ${y[@]})
- # However if the system is not multlib, then we still need to install
- # the 32 bit smlnj executables and libraries somewhere, so I guess we
- # just have to put them under the system lib directory. Put the
- # native lib dir back on the end of the array.
- z+=( $(get_libdir) )
- # Then return the first element of the array, which should be the 32 bit
- # lib directory on multilib systems, or the 32 bit lib directory on
- # 32 bit systems, or the system 64 bit lib directory on non-multilib
- # 64 bit systems.
- echo ${z[0]}
-}
-
-src_install() {
- SUBDIR=$(smlnj_get_libdir)/${PN}
- DIR=/usr/${SUBDIR}
- for file in bin/{*,.*}; do
- [[ -f ${file} ]] && sed -e "2iSMLNJ_HOME=${EPREFIX%/}/${DIR}" \
- -e "s:${WORKDIR}:${EPREFIX%/}/${DIR}:" -i ${file}
- done
- dodir ${DIR}/bin
- exeinto ${DIR}/bin
- pushd bin || die
- for i in .arch-n-opsys .link-sml .run-sml heap2exec ml-* sml; do
- doexe ${i}
- done
- for i in heap2exec ml-* sml; do
- dosym ../${SUBDIR}/bin/${i} /usr/bin/${i}
- done
- popd || die
- dodir ${DIR}/bin/.heap
- insinto ${DIR}/bin/.heap
- doins bin/.heap/*
- dodir ${DIR}/bin/.run
- exeinto ${DIR}/bin/.run
- pushd bin/.run || die
- for i in run*; do
- doexe ${i}
- done
- popd || die
- insinto ${DIR}
- doins -r lib
- dodoc -r doc/*
-}