dev-embedded/sdcc: add 4.3.0

Signed-off-by: Viorel Munteanu <ceamac@gentoo.org>
This commit is contained in:
Viorel Munteanu
2023-08-26 19:46:51 +03:00
parent 330946ad02
commit 46451db0c8
2 changed files with 162 additions and 0 deletions

View File

@@ -2,7 +2,9 @@ DIST sdcc-doc-3.8.0.tar.bz2 965465 BLAKE2B 541ed3ba4d3a23dd3fcea248de84d887fdcd8
DIST sdcc-doc-4.0.0.tar.bz2 980999 BLAKE2B 6f9478c095e6b4fec27c6ab7a10a8564ae46d754709848b3a7a26a7a2dfecd3833ce3cfe7a41f9033b5a34a1b6e962090d91c9688294dd347e1c98658761c019 SHA512 83bed77b46ad2f028725a3ffe6090d71185f73d4e99c241e7ebd1c509ba1be1911f4b9130c344fa4eb928f48122179b6b71e9d5a27d9f18ff74017c61fae77ff
DIST sdcc-doc-4.1.0.tar.bz2 991207 BLAKE2B fd1ab82c8cc65031a8231bc4aba1e0562ed4b3178612a4d915568cb5600ba9159d89f905e261e860da9e0f4aa5a24fbd7ab1364f2f9f7b3078bcf3aa01d71ba5 SHA512 01686e590d0168108099d3c6c9bdb0885a25abccc9b6c87739eafec7103054424da1a5960a8d4566462dca9bf00cdd8b103ab6026523833d9aaa4d4bcdc5b620
DIST sdcc-doc-4.2.0.tar.bz2 1244684 BLAKE2B d6ee4001ee0d2dde61dd1e8567499909fa6373eac93f3731fa1d6628f6e488742cc0798b1ebb908769d4cc52e091d4d685b3891d7c15a519294240643e528b02 SHA512 8494de35991e9a38ca138545b7c2396d353b21d67a4f321afa9187a5c117c6ce7d3c0850e95c981ccc7a3c8fa1e470f5e2351b84ccbe1634b1f8bf085cd45f76
DIST sdcc-doc-4.3.0.tar.bz2 1271916 BLAKE2B a8c8018990ff2ae5504253f38a9de045b8a5227a60d76604394c286cb55d11b24f3ab97ed0a11d434c0b1ccb7e5340c33872c5ff5e677130e395b396a389f532 SHA512 088dce843c9e06380a8058b5253051e2a2442655be38435f15ed6754291e75d3f6e2b1a416e4f90dd865b2d89a9e1c59a2b9ee1422096132f49f038c527bcd19
DIST sdcc-src-3.8.0.tar.bz2 18987862 BLAKE2B 7e8ddea41ae02842bb1376c53364c386a0fb47a1acdcc97cc72f002e78a2854fc43adfd0177f94dd1173dbd81052c390c5b2fef302c73f0b830ec83eea70869c SHA512 38145ea3e9560eb8894c54bd7213da67a20163739c944c3247fa8fa456dfedaaa469746169d3e114affcab48b73db4cd8c9a0a367e7368f2471de64761a3e04a
DIST sdcc-src-4.0.0.tar.bz2 19204540 BLAKE2B 2192a7dc7418826440209dd8c7a73fd5ced491b799975b953368daeabb429327a6c518a1212a2fd49c34c6e5ab7d84f240cbf6ff8b3779e2d38f5ad81499ee71 SHA512 41a92711a9278261879caec1a01425104b7c75346b3c6ad9617cab025309c9b38f79eea2d04122f5ae6ce273fcd61fbde8a0d23756313a4593394230b51a1d4c
DIST sdcc-src-4.1.0.tar.bz2 19400609 BLAKE2B 9754d70026af595a5456f0d7c1b375df2716c6400ca59affcadbfd3588f4d51c45a3d52c235d6efc9b7512b5f94f023d8d2964cc0365cdff4586edf71fc51af1 SHA512 a9c3fee427cbc66b56a286c8d66b2922f79c9dfb42d2ed2843b2e192a6b314a04de4c82f1083d8625b49756b5f1d99f8fb706402b5f1284110760ec346303779
DIST sdcc-src-4.2.0.tar.bz2 19662367 BLAKE2B a11d6b3af2552e0508bb1d0644d3e6db385634237fc93079716a5e3aa710bac25fd888e10dce76e6891ebe524f4d81d8318492001d8ce9ade0ef16d114adf14b SHA512 7ca4037d526b5fed7bbca4433835d0299ced7315dd69c1ec66cff873ec7caa41b69927363bf5850e2ad4f27ef6286e57f9ccd40bb6792308be6c3073c5238cba
DIST sdcc-src-4.3.0.tar.bz2 19931677 BLAKE2B 94fc7ade96801ea6c9eb89d32b99554d27ad3d926d2d5889e91334b11d4658ccc160606cd2b1c6f3bb21bd25ea3df1dca274f40553aa8a52a73ac07764b3eaad SHA512 dabe276a0d2872bee2cdc14433f31a1e94153f9dce5a11add916ede2e76bfacf763be8e6d8134dc3aefdae29e38d3a7354626755e81e0f6db0e60c1798476f21

View File

@@ -0,0 +1,160 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools
if [[ ${PV} == "9999" ]] ; then
ESVN_REPO_URI="https://svn.code.sf.net/p/sdcc/code/trunk/sdcc"
inherit subversion
else
SRC_URI="
https://downloads.sourceforge.net/project/${PN}/sdcc/${PV}/${PN}-src-${PV}.tar.bz2
doc? ( https://downloads.sourceforge.net/project/${PN}/sdcc-doc/${PV}/${PN}-doc-${PV}.tar.bz2 )
"
KEYWORDS="~amd64 ~x86"
fi
DESCRIPTION="Small device C compiler (for various microprocessors)"
HOMEPAGE="https://sdcc.sourceforge.net/"
LICENSE="
GPL-2 ZLIB
non-free? ( MicroChip-SDCC )
packihx? ( public-domain )
"
SLOT="0"
# in order of configure.ac's AC_DO_PORT stanzas
SDCC_PORTS="
mcs51
z80 z180
r2k r2ka r3ka
sm83
tlcs90
ez80-z80
z80n
ds390 ds400
pic14 pic16
hc08
s08
stm8
pdk13 pdk14 pdk15 pdk16
mos6502 mos65c02
"
IUSE="
${SDCC_PORTS}
+boehm-gc device-lib doc non-free packihx sdcdb +sdcpp ucsim
"
RDEPEND="
dev-libs/boost:=
sys-libs/zlib:=
pic14? ( >=dev-embedded/gputils-0.13.7 )
pic16? ( >=dev-embedded/gputils-0.13.7 )
boehm-gc? ( dev-libs/boehm-gc:= )
sdcdb? ( sys-libs/readline:0= )
ucsim? ( sys-libs/ncurses:= )
"
DEPEND="
${RDEPEND}
dev-util/gperf
"
PATCHES=(
"${FILESDIR}"/sdcc-4.3.2-override-override.patch
"${FILESDIR}"/sdcc-4.2.0-link-tinfo.patch
)
src_prepare() {
# Fix conflicting variable names between Gentoo and sdcc
find device/lib/pic{14,16} device/non-free/lib/pic{14,16} \( \
-name 'configure.ac' -o -name 'Makefile.*' \) \
-exec sed -i 's/\<ARCH\>/SDCC_&/g' {} + || die
find device -name 'Makefile.in' \
-exec sed -i 's/\<PORTDIR\>/SDCC_&/g' {} + || die
# Possible alternative: Patch the following files to not pick up the
# variables from the environment:
# - lib/Makefile.in (PORTDIR ifndef/endif)
# - device/non-free/lib/pic14/Makefile.common.in (ARCH ?= 877)
# - device/non-free/lib/pic16/configure.ac (${ARCH:-18f452})
# - device/lib/pic14/configure.ac (${ARCH:-16f877})
# - device/lib/pic16/configure.ac (${ARCH:-18f452})
# Make sure timestamps don't get messed up.
[[ ${PV} == "9999" ]] && find "${S}" -type f -exec touch -r . {} +
mkdir -p support/sdbinutils/bfd/doc || die
default
eautoreconf
# Avoid 'bfd.info' rebuild with 'makeinfo': bug #705424
# Build dependencies are: eautoreconf->Makefile.in->bfdver.texi->bfd.info
touch support/sdbinutils/bfd/doc/bfdver.texi || die
touch support/sdbinutils/bfd/doc/bfd.info || die
}
src_configure() {
local myeconfargs=(
ac_cv_prog_STRIP=true
--without-ccache
--enable-sdbinutils
$(use_enable ucsim)
$(use_enable device-lib)
$(use_enable packihx)
$(use_enable sdcpp)
$(use_enable sdcdb)
$(use_enable non-free)
$(use_enable boehm-gc libgc)
$(use_enable mcs51 mcs51-port)
$(use_enable z80 z80-port)
$(use_enable z180 z180-port)
$(use_enable r2k r2k-port)
$(use_enable r2ka r2ka-port)
$(use_enable r3ka r3ka-port)
$(use_enable sm83 sm83-port)
$(use_enable tlcs90 tlcs90-port)
$(use_enable ez80-z80 ez80_z80-port)
$(use_enable z80n z80n-port)
$(use_enable ds390 ds390-port)
$(use_enable ds400 ds400-port)
$(use_enable pic14 pic14-port)
$(use_enable pic16 pic16-port)
$(use_enable hc08 hc08-port)
$(use_enable s08 s08-port)
$(use_enable stm8 stm8-port)
$(use_enable pdk13 pdk13-port)
$(use_enable pdk14 pdk14-port)
$(use_enable pdk15 pdk15-port)
$(use_enable pdk16 pdk16-port)
$(use_enable mos6502 mos6502-port)
$(use_enable mos65c02 mos65c02-port)
)
econf "${myeconfargs[@]}"
}
src_compile() {
default
# Sanity check, as gputils errors/segfaults don't cause make to stop
local libs=()
use pic14 && libs+=( device/lib/build/pic14/libsdcc.lib )
use pic16 && libs+=( device/lib/build/pic16/libsdcc.lib )
for lib in "${libs[@]}"; do
[[ -f "${lib}" ]] || die "Failed to build ${lib}"
done
}
src_install() {
default
dodoc doc/*.txt
find "${ED}" -type d -name .deps -exec rm -vr {} + || die
if use doc && [[ ${PV} != "9999" ]]; then
cd "${WORKDIR}"/doc
dodoc -r *
fi
}