diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-03-05 23:52:45 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-03-05 23:52:45 +0000 |
commit | 1c33e521c460dc40899ce7bc919602b842ce27e2 (patch) | |
tree | 580eefad4cce1e883e7504b93352a9029b53036d /dev-embedded | |
parent | 65e4244e411c4f65f55f2aa91f39e228f4c0680b (diff) |
gentoo auto-resync : 05:03:2023 - 23:52:45
Diffstat (limited to 'dev-embedded')
-rw-r--r-- | dev-embedded/Manifest.gz | bin | 9207 -> 9207 bytes | |||
-rw-r--r-- | dev-embedded/gputils/Manifest | 3 | ||||
-rw-r--r-- | dev-embedded/gputils/files/gputils-1.5.2-fix-invalid-operator.patch | 25 | ||||
-rw-r--r-- | dev-embedded/gputils/gputils-1.5.2.ebuild | 47 | ||||
-rw-r--r-- | dev-embedded/rpi-eeprom/Manifest | 2 | ||||
-rw-r--r-- | dev-embedded/rpi-eeprom/rpi-eeprom-15.0_p1.ebuild | 2 | ||||
-rw-r--r-- | dev-embedded/sdcc/Manifest | 8 | ||||
-rw-r--r-- | dev-embedded/sdcc/files/sdcc-4.2.0-link-tinfo.patch | 24 | ||||
-rw-r--r-- | dev-embedded/sdcc/metadata.xml | 17 | ||||
-rw-r--r-- | dev-embedded/sdcc/sdcc-4.2.0.ebuild | 158 | ||||
-rw-r--r-- | dev-embedded/sdcc/sdcc-9999.ebuild | 151 |
11 files changed, 352 insertions, 85 deletions
diff --git a/dev-embedded/Manifest.gz b/dev-embedded/Manifest.gz Binary files differindex a72be2951086..ddab8dba86a9 100644 --- a/dev-embedded/Manifest.gz +++ b/dev-embedded/Manifest.gz diff --git a/dev-embedded/gputils/Manifest b/dev-embedded/gputils/Manifest index 79b6993afa5c..1d6910ee6cb7 100644 --- a/dev-embedded/gputils/Manifest +++ b/dev-embedded/gputils/Manifest @@ -1,4 +1,7 @@ AUX gputils-1.5.0-respect-flags.patch 4608 BLAKE2B 064b50907a9e403e5dedf1bdba947f235d2b66b62104494de2b1b3badcb02bd15f5df3c66dddec6580cacee46ed52bd12292bef8e98fa1da4f27cab25314a271 SHA512 ee63f6ec3a4f44bd10edc35cdb0c2c9f63d63cacd21a3dc5eb531776d0688f2865d1466fe143950fc8f3a878a7e7eb8f40eec343bfd6f77b7baa0eed90a8c7da +AUX gputils-1.5.2-fix-invalid-operator.patch 908 BLAKE2B 56572734e417ce425542952b0a67aa13dbe0280e026d31b4a6775c7cb9eb8c8dcbb9b07e48719b45b5fa73baa6fba77b0c1b8384e5905a39d2d6c0320e22bdf0 SHA512 81152bb1138902907d496ebe303d06d3534382d0bc277a65fb38f53417cab04fe4f37caa373f281e16a8f8a7d4c522274ce3013e68dedcbe0880e0f09b8ff2de DIST gputils-1.5.0.tar.gz 13155377 BLAKE2B 68f6ed2ba93f83eaae0573dde5fe8d3a67ec6cf4349832e5edcab70ec35db7d8210f28d46bf3272a7b7f9b52299b1289792b1ca2a75b952e7ea2fc263448c8b9 SHA512 fc74e92ddfe2c9c7ee272a712a411bf01790358c310afc9a802f503902675fa4717410354bf8791f64da45b63f0b1f562b55fdd7127d3989f4295ebe5f80b645 +DIST gputils-1.5.2.tar.bz2 7231711 BLAKE2B c52bd75ee408b2ff98f63679b18834e8e41b5aea4f2b4b659860acb8fa4dd3f922aa6307f99ae0fc024a4fc6f56d3be262cd873cf112ebac444d41eeca635d3b SHA512 43ed508d164152bf36e4f27b09656e6e3d58fc174806ad57d6415e6e2726a56381b1323be3acfc635f2a05babade695e9777b0db8b5f4b90da00b9d29e75eddc EBUILD gputils-1.5.0.ebuild 809 BLAKE2B 55f69b85e0ad845bd1f2ab6bf16d9267e09a66bc7b258b137a541aa0f2096445a528275eb2e2f8eef5a73813f84756ec295209f5baaccd04b313acbd7860d787 SHA512 cc30ee6fe9c71e6a8e2a42f5faf91e385c6713e6833abc25115ab347bff09f64a2729516aa1a56f59d1a265bbfa89c27b7e75c5b88189d01b829f0fe3735ac90 +EBUILD gputils-1.5.2.ebuild 992 BLAKE2B c06150fceaf6b6ccc9f7087f0d8b314e5e74032d12d163f65ab45b47b00a7536a5ff6196fa2b9c436520701ea371407dbbad300613359731bcd1964489b5b567 SHA512 cf747f7892a4357805d9dcd04d16800b7c8a73ad935fb9fdf0d6b4c0765f34991c012958fe4962a10d47a4080a8f32169dbe1f20acf765247f51634830fec2d9 MISC metadata.xml 329 BLAKE2B 34b2d2759758806cc11494ac1ff80f04d307c4f825a7d4fac2c49cdc313f6cef2a73975c110a2ec2b5950d289812f14b3e7af29fb210c6362896054669813f95 SHA512 aa1a82ff6a8fc75841cce40006d7cb8a0a7e6b65b4135b31b69781820b437ac033f2fd32aa056557cf19bf107892fda0dc4e39f2bcaa95a96673c194f4dac776 diff --git a/dev-embedded/gputils/files/gputils-1.5.2-fix-invalid-operator.patch b/dev-embedded/gputils/files/gputils-1.5.2-fix-invalid-operator.patch new file mode 100644 index 000000000000..ec2d8d425832 --- /dev/null +++ b/dev-embedded/gputils/files/gputils-1.5.2-fix-invalid-operator.patch @@ -0,0 +1,25 @@ +Fix invalid operator in dash + +Some shells, like dash, don't support [ x == x ], reporting invalid syntax, +and silently failing. + +--- gputils-1.5.2.orig/doc/html-help/Makefile.am ++++ gputils-1.5.2/doc/html-help/Makefile.am +@@ -7,7 +7,7 @@ + pkgdatadir = @GPUTILS_HTMLDOC_PATH@ + + html-doc: +- if [ "$(ENABLE_HTML_DOC)" == "yes" ]; then \ ++ if [ "$(ENABLE_HTML_DOC)" = "yes" ]; then \ + if [ ! -e $(DEFAULT_MPLABX_PATH)/mpasmx/8bit_device.info ]; then \ + @echo "Can't find mplabx installation; HTML documentation will not be built."; \ + else \ +@@ -18,7 +18,7 @@ + install: install-html + + install-html: +- if [ "$(ENABLE_HTML_DOC)" == "yes" ]; then \ ++ if [ "$(ENABLE_HTML_DOC)" = "yes" ]; then \ + if [ -n "$$(ls *.html 2>/dev/null)" -a -n "$$(ls *.css 2>/dev/null)" ]; then \ + $(install_sh) -d "$(DESTDIR)$(pkgdatadir)"; \ + $(install_sh) -c -m 644 *.css *.html "$(DESTDIR)$(pkgdatadir)"; \ diff --git a/dev-embedded/gputils/gputils-1.5.2.ebuild b/dev-embedded/gputils/gputils-1.5.2.ebuild new file mode 100644 index 000000000000..11fb1036b9e4 --- /dev/null +++ b/dev-embedded/gputils/gputils-1.5.2.ebuild @@ -0,0 +1,47 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools toolchain-funcs flag-o-matic + +DESCRIPTION="Tools including assembler, linker and librarian for PIC microcontrollers" +HOMEPAGE="https://gputils.sourceforge.io" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" +IUSE="doc" + +PATCHES=( + "${FILESDIR}"/gputils-1.5.2-fix-invalid-operator.patch +) + +src_prepare() { + default + eautoreconf +} + +src_configure() { + # bug #369291, bug #818802 + tc-ld-disable-gold + + # Their configure script tries to do funky things with default + # compiler selection. Force our own defaults instead. + tc-export CC + + # LTO currently causes various segfaults in dev-embedded/sdcc + # sys-devel/gcc-11.3.0 '-O3 -flto' + filter-flags '-flto*' + + local myeconfargs=( + $(use_enable doc html-doc) + ) + econf "${myeconfargs[@]}" +} + +src_install() { + default + use doc && dodoc doc/gputils.pdf +} diff --git a/dev-embedded/rpi-eeprom/Manifest b/dev-embedded/rpi-eeprom/Manifest index d6523c5a30d9..4b6c43d8d1d5 100644 --- a/dev-embedded/rpi-eeprom/Manifest +++ b/dev-embedded/rpi-eeprom/Manifest @@ -7,5 +7,5 @@ DIST rpi-eeprom_15.0-1.debian.tar.xz 10720 BLAKE2B c8915ebf859ebb1ea3a48af807753 DIST rpi-eeprom_15.0.orig.tar.gz 29800286 BLAKE2B ceda9bdc412a32443d0cb3fa444d1091f0f53215a5be6c546384a11f7fa28592d43bdf23f04a33925601b5e76e510b054b214d262904f03aafa2b959fcb5fc1e SHA512 eddea0c8057e13991e3a6493146c8785607162342321d48048ba5760ecc7f1c6687a03edffcd0be4a5549c333cdbb20e88d407c4212334e18178fb86cc6cd0a4 EBUILD rpi-eeprom-13.19_p1.ebuild 3027 BLAKE2B 323eab5c94ec1fac5fec8d406fe139591ce84efec369a767e4273e8ca0e50c86380761647e532289f22532cf2c5475768930271dbeb43ad415838ce2046729cc SHA512 5fd6dcd2b4c77205b5eaf4f09a7b15e04e763cbbe8626a6ac17e963a25c488aa3278c01ac608f9562ccd7d86102f3b3f10e0dab72224b3b8da047593ed65144b EBUILD rpi-eeprom-13.3_p1-r1.ebuild 3026 BLAKE2B 72c61ab593f46f2487572c555f0a11c1041e1e3b4b757a6720f38c4a4f82702e0b910062fc64cf41ff54183e735c05b98e72d3ea414d44fc6f752470a0eb94c1 SHA512 12f1be8fc9dfeee1c42b9334c3a420d02e1ad1e416f701f032f75bc85e07015dce037c09e254a391615b9b57d17ee2b7b8d72bbebc648049185a319303975379 -EBUILD rpi-eeprom-15.0_p1.ebuild 3027 BLAKE2B 323eab5c94ec1fac5fec8d406fe139591ce84efec369a767e4273e8ca0e50c86380761647e532289f22532cf2c5475768930271dbeb43ad415838ce2046729cc SHA512 5fd6dcd2b4c77205b5eaf4f09a7b15e04e763cbbe8626a6ac17e963a25c488aa3278c01ac608f9562ccd7d86102f3b3f10e0dab72224b3b8da047593ed65144b +EBUILD rpi-eeprom-15.0_p1.ebuild 3026 BLAKE2B 0a13aead8a68667d57fb7e1c8c6f56e295bb8af5e9f5192d5c48357ce04eedac1e1436c7152ed97dcebbf63e9aa52ee3c3de25711bdbcdd2788d2280457198aa SHA512 ea55d6f16ba4c41fc911f075236e59bac65080485d4cb39556843fb9f6f928444697b02ce4be5e75b125f69bcf802c1d33ed0e1f49118f1c611fa491ac089c93 MISC metadata.xml 596 BLAKE2B 075812117456e8457ad55e184a322ff86f8bc18a8470fcd52d63ec20e88c81db064ff5f6b023e7400d51d603886cb154a0a1485613cb326b8897f99c5c06c330 SHA512 9ebe09182734a60c3ed3a9e30b2cf9b9433f546e1f4cfc9d75b48813e61dc875b71593300e6bc628650cfbae49fc722713cfc88c8e0a387efe0dd6cca991fa2f diff --git a/dev-embedded/rpi-eeprom/rpi-eeprom-15.0_p1.ebuild b/dev-embedded/rpi-eeprom/rpi-eeprom-15.0_p1.ebuild index aa705d4d9dbc..528bfc276e3a 100644 --- a/dev-embedded/rpi-eeprom/rpi-eeprom-15.0_p1.ebuild +++ b/dev-embedded/rpi-eeprom/rpi-eeprom-15.0_p1.ebuild @@ -17,7 +17,7 @@ S="${WORKDIR}" LICENSE="BSD rpi-eeprom" SLOT="0" -KEYWORDS="~arm ~arm64" +KEYWORDS="~arm arm64" REQUIRED_USE="${PYTHON_REQUIRED_USE}" BDEPEND="sys-apps/help2man" diff --git a/dev-embedded/sdcc/Manifest b/dev-embedded/sdcc/Manifest index fbab09d7eeff..672a94c903ce 100644 --- a/dev-embedded/sdcc/Manifest +++ b/dev-embedded/sdcc/Manifest @@ -1,12 +1,16 @@ AUX sdcc-3.8.0-override-override.patch 1078 BLAKE2B f1e1e135b9ee972e8f7f6a08af736de227c8534d181f160b00f6eecef0e7f4366e39fc5a8f6034bfffa64531423d28377c778055d6be8671527971ce183ebab5 SHA512 fbc13832bea859409f2ae525a82927424dd474db9c6077d1311b9775d0a4a8728d79db7465c928271faa54221b53982ee539537e4fe8a70209c0f453b95105aa +AUX sdcc-4.2.0-link-tinfo.patch 916 BLAKE2B 7930cf615dbf0be6f44581e0e59d5c8ed59d5ae204153b2b08a2bfb6af8ef69b01fa1584c95dc194881d843edad8bc39dc85ca8b597e120828e49ae30b2c6c74 SHA512 b4ab00ed63be3dad5c0250ce8cd3301830ac2a65f4b8d9034151e285b93057357249a19b9d521f1cfd62173d97baa37a69c7e56d1b0423f9edc2e84b368fcad5 DIST sdcc-doc-3.8.0.tar.bz2 965465 BLAKE2B 541ed3ba4d3a23dd3fcea248de84d887fdcd8ddaf3ed0f9f810bf8cb9fcb5b10eb2cd96099d83c5a0fda240cdd3d11fd247e576a67a32047a4f7a705b8401637 SHA512 63319b7c344b320600e6a7c158d1a5e69abe595dfd6b8d32a95f15678c3bc2f6fe72c959516c4b1f812deb089854c6a51c31438ef6a6c7f9fcb4d419d8cce3cf 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-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 EBUILD sdcc-3.8.0-r1.ebuild 3186 BLAKE2B 4a0842eb50c5f77947fef50a36482e47e76c25b4994833f5c14e42018c7b5ea3ab77768df15d49886c1e9250ac19e630a95d78a6241cd87e02bbbdafb4367292 SHA512 147127a0e997cb3ce1a53b0cd0990992d6837016dcde7368bf44a2fd35b6647b43224dbcd309660e454e6bcd26921d41d642530e616e5bc2fec4a0eeef8f8d28 EBUILD sdcc-4.0.0.ebuild 3469 BLAKE2B 04dcac4dba5a07ad9cdddf14e7d313a27f4b28db7903364af17e1cfdf1ef704cb03ac0d2eba980fc97791f3c0b5ce355fa36cd60e0adae45be41d35f94de790d SHA512 65402da6ea8cbff4101109cb9ee53319f770b0603572488ff7c71e60812ca7a2c7868e19275217738fea161d0babb6c44ace3483276236671ff8d710ea580121 EBUILD sdcc-4.1.0.ebuild 3625 BLAKE2B 983887350f4251ecf1f6d327fc7630e027804439763ab94e765064356f6edf2274ac2f2de363b57fe3a1cb553bcdc55dfcb3f1c6ed49f6355a9c7bbaa4c00811 SHA512 6870daa87d27afa8f196d96e76e2a81eee2137c523389f1955b4b623750f3372c430cb24dc66adb76bf482b14219a373b9c43441230e45306e2a047243e8b2bd -EBUILD sdcc-9999.ebuild 3625 BLAKE2B 983887350f4251ecf1f6d327fc7630e027804439763ab94e765064356f6edf2274ac2f2de363b57fe3a1cb553bcdc55dfcb3f1c6ed49f6355a9c7bbaa4c00811 SHA512 6870daa87d27afa8f196d96e76e2a81eee2137c523389f1955b4b623750f3372c430cb24dc66adb76bf482b14219a373b9c43441230e45306e2a047243e8b2bd -MISC metadata.xml 2702 BLAKE2B 5d7eff47a0c5a01e9653d127679cfac908d07a95f720febd6ffece94e0877c43023737ab286dc5f1361a51b1c85eb4e0413757c3d76f28e70359e8469333321c SHA512 1e01dbeefb8ba8565b89807cf471e3fbc9f167d2411d87908b6813cd7aa6da39d2a6357a72fe69fb9c41f80e9c4cc37e8c42fa26ccdd02157184a82ab3d6be63 +EBUILD sdcc-4.2.0.ebuild 4003 BLAKE2B 073c89d4206df22ea4be8893d07249d742e6c217a0f1af358abd659cd0a0578af3e6bf73dc9cbc1fc7717f2ea26128004104fb0ca500dafb7b992e2afb13a617 SHA512 4b0a8e632a72ddcc64642d7f22541bddc0b41627ae78b3316365e6b0ba8e243ed308fa4559ac517f4d56600f38ba71dd08f578f966aa4421808c7996218b6dc6 +EBUILD sdcc-9999.ebuild 4003 BLAKE2B 073c89d4206df22ea4be8893d07249d742e6c217a0f1af358abd659cd0a0578af3e6bf73dc9cbc1fc7717f2ea26128004104fb0ca500dafb7b992e2afb13a617 SHA512 4b0a8e632a72ddcc64642d7f22541bddc0b41627ae78b3316365e6b0ba8e243ed308fa4559ac517f4d56600f38ba71dd08f578f966aa4421808c7996218b6dc6 +MISC metadata.xml 3045 BLAKE2B 02b5834889994a4b1426244e087a7593b29de3ac0c29004492e4f466c76980fd448c15258d0bd29cddfd691a5f78ba653fea1bc1f42ad4d5b31afb83ad403b3e SHA512 55ecbf5774eb8b58304d97db64875984d4e016e9ba0476d4a5df94dca28baed1bd4eeead7e54885a33d9b9bd1ebbcb47846ac99f62fca3f11adb03d68880da47 diff --git a/dev-embedded/sdcc/files/sdcc-4.2.0-link-tinfo.patch b/dev-embedded/sdcc/files/sdcc-4.2.0-link-tinfo.patch new file mode 100644 index 000000000000..a8f4ae7565bc --- /dev/null +++ b/dev-embedded/sdcc/files/sdcc-4.2.0-link-tinfo.patch @@ -0,0 +1,24 @@ +Link -ltinfo for ucsim + +/usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/dev-embedded/sdcc-4.2.0/temp/cc3R2ckl.ltrans0.ltrans.o: undefined reference to symbol 'nodelay' +/usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: /lib64/libtinfo.so.6: error adding symbols: DSO missing from command line + +--- sdcc-4.2.0.orig/sim/ucsim/configure.ac ++++ sdcc-4.2.0/sim/ucsim/configure.ac +@@ -405,14 +405,14 @@ + if test $curses_ok != yes; then + AC_CHECK_LIB(curses,nl, + curses_ok="yes" +- CURSES_LIBS="${CURSES_LIBS} -lcurses", ++ CURSES_LIBS="${CURSES_LIBS} -lcurses -ltinfo", + curses_ok="no") + fi + + if test $curses_ok != yes; then + AC_CHECK_LIB(ncurses,nl, + curses_ok="yes" +- CURSES_LIBS="${CURSES_LIBS} -lncurses", ++ CURSES_LIBS="${CURSES_LIBS} -lncurses -ltinfo", + curses_ok="no") + fi + fi diff --git a/dev-embedded/sdcc/metadata.xml b/dev-embedded/sdcc/metadata.xml index 573753d73430..c4bc3f3380ae 100644 --- a/dev-embedded/sdcc/metadata.xml +++ b/dev-embedded/sdcc/metadata.xml @@ -6,12 +6,14 @@ <name>Embedded Gentoo</name> </maintainer> <longdescription> -SDCC is a retargettable, optimizing ANSI - C compiler suite that targets the -Intel MCS51 based microprocessors (8031, 8032, 8051, 8052, etc.), Maxim -(formerly Dallas) DS80C390 variants, Freescale (formerly Motorola) HC08 based -(hc08, s08), Zilog Z80 based MCUs (z80, z180, gbz80, Rabbit 2000/3000, Rabbit -3000A, TLCS-90) and STMicroelectronics STM8. It can be retargeted for other -microprocessors. +SDCC is a retargettable, optimizing Standard C (ANSI C89, ISO C99, ISO C11) +compiler suite that targets the Intel MCS51 based microprocessors (8031, 8032, +8051, 8052, etc.), Maxim (formerly Dallas) DS80C390 variants, Freescale +(formerly Motorola) HC08 based (hc08, s08), Zilog Z80 based MCUs (Z80, Z180, +SM83, Rabbit 2000, 2000A, 3000A, TLCS-90), Padauk (pdk14, pdk15) and +STMicroelectronics STM8. Work is in progress on supporting the Padauk pdk13 and +MOS 6502 targets; Microchip PIC16 and PIC18 targets are unmaintained. SDCC can +be retargeted for other microprocessors. </longdescription> <upstream> <remote-id type="sourceforge">sdcc</remote-id> @@ -35,6 +37,7 @@ microprocessors. <flag name="r2ka">Add support for Rabbit 2000A</flag> <flag name="r3ka">Add support for Rabbit 3000A</flag> <flag name="gbz80">Add support for Gameboy gbz80</flag> + <flag name="sm83">Add support for Gameboy SM83</flag> <flag name="tlcs90">Add support for TLCS-90</flag> <flag name="ez80-z80">Add support for EZ80-Z80</flag> <flag name="z80n">Add support for Zilog Z80N</flag> @@ -49,5 +52,7 @@ microprocessors. <flag name="pdk14">Add support for PDK14</flag> <flag name="pdk15">Add support for PDK15</flag> <flag name="pdk16">Add support for PDK16</flag> + <flag name="mos6502">Add support for MOS 6502</flag> + <flag name="mos65c02">Add support for MOS 65C02</flag> </use> </pkgmetadata> diff --git a/dev-embedded/sdcc/sdcc-4.2.0.ebuild b/dev-embedded/sdcc/sdcc-4.2.0.ebuild new file mode 100644 index 000000000000..dc4655403f3d --- /dev/null +++ b/dev-embedded/sdcc/sdcc-4.2.0.ebuild @@ -0,0 +1,158 @@ +# 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-3.8.0-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 . {} + + + 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 +} diff --git a/dev-embedded/sdcc/sdcc-9999.ebuild b/dev-embedded/sdcc/sdcc-9999.ebuild index 9b5bf53b05db..dc4655403f3d 100644 --- a/dev-embedded/sdcc/sdcc-9999.ebuild +++ b/dev-embedded/sdcc/sdcc-9999.ebuild @@ -1,25 +1,24 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -inherit autotools toolchain-funcs +inherit autotools if [[ ${PV} == "9999" ]] ; then ESVN_REPO_URI="https://svn.code.sf.net/p/sdcc/code/trunk/sdcc" inherit subversion else SRC_URI=" - mirror://sourceforge/sdcc/${PN}-src-${PV}.tar.bz2 - doc? ( mirror://sourceforge/sdcc/${PN}-doc-${PV}.tar.bz2 ) + 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 ) " - S="${WORKDIR}/sdcc" KEYWORDS="~amd64 ~x86" fi DESCRIPTION="Small device C compiler (for various microprocessors)" -HOMEPAGE="http://sdcc.sourceforge.net/" +HOMEPAGE="https://sdcc.sourceforge.net/" LICENSE=" GPL-2 ZLIB @@ -29,11 +28,10 @@ LICENSE=" SLOT="0" # in order of configure.ac's AC_DO_PORT stanzas SDCC_PORTS=" - avr mcs51 z80 z180 r2k r2ka r3ka - gbz80 + sm83 tlcs90 ez80-z80 z80n @@ -43,47 +41,45 @@ SDCC_PORTS=" s08 stm8 pdk13 pdk14 pdk15 pdk16 + mos6502 mos65c02 " IUSE=" ${SDCC_PORTS} - +boehm-gc device-lib doc non-free packihx +sdbinutils sdcdb +sdcpp ucsim + +boehm-gc device-lib doc non-free packihx sdcdb +sdcpp ucsim " -for port in ${SDCC_PORTS}; do -REQUIRED_USE="${REQUIRED_USE} - ${port}? ( sdbinutils ) -" -done -REQUIRED_USE="${REQUIRED_USE} - || ( ${SDCC_PORTS} ) -" - -RESTRICT="strip" - RDEPEND=" dev-libs/boost:= - sys-libs/ncurses:= - sys-libs/readline:0= + sys-libs/zlib:= pic14? ( >=dev-embedded/gputils-0.13.7 ) pic16? ( >=dev-embedded/gputils-0.13.7 ) boehm-gc? ( dev-libs/boehm-gc:= ) - !dev-embedded/sdcc-svn + sdcdb? ( sys-libs/readline:0= ) + ucsim? ( sys-libs/ncurses:= ) " DEPEND=" ${RDEPEND} dev-util/gperf " PATCHES=( - "${FILESDIR}"/${PN}-3.8.0-override-override.patch + "${FILESDIR}"/sdcc-3.8.0-override-override.patch + "${FILESDIR}"/sdcc-4.2.0-link-tinfo.patch ) src_prepare() { # Fix conflicting variable names between Gentoo and sdcc - find \ - '(' -name 'Makefile*.in' -o -name 'configure' ')' \ - -exec sed -r -i \ - -e 's:\<(PORTDIR|ARCH)\>:SDCC\1:g' \ - {} + || die + 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 . {} + @@ -98,60 +94,65 @@ src_prepare() { } src_configure() { - # sdbinutils subdir doesn't pass down --docdir properly, so need to - # expand $(datarootdir) ourselves. - econf \ - ac_cv_prog_AR="$(tc-getAR)" \ - ac_cv_prog_AS="$(tc-getAS)" \ - ac_cv_prog_STRIP=true \ - $(use_enable boehm-gc libgc) \ - $(use_enable device-lib) \ - $(use_enable non-free) \ - $(use_enable packihx) \ - $(use_enable sdbinutils) \ - $(use_enable sdcdb) \ - $(use_enable sdcpp) \ - $(use_enable ucsim) \ - \ - $(use_enable avr avr-port) \ - $(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 gbz80 gbz80-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) \ - \ - --disable-doc \ + 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 "${D}" -name .deps -exec rm -rf {} + || die + find "${ED}" -type d -name .deps -exec rm -vr {} + || die if use doc && [[ ${PV} != "9999" ]]; then cd "${WORKDIR}"/doc dodoc -r * fi - - # a bunch of archives (*.a) are built & installed by gputils - # for PIC processors, but they do not work with standard `ar` - # & `scanelf` utils and they're not for the host. - dostrip -x /usr/bin } |