This commit is contained in:
Torsten Kurbad
2024-04-09 09:15:09 +02:00
parent 3f8434c8c2
commit a8dbb42d1d
12 changed files with 785 additions and 31 deletions
+9 -1
View File
@@ -1,13 +1,21 @@
AUX sdcc-3.8.0-override-override.patch 1078 BLAKE2B f1e1e135b9ee972e8f7f6a08af736de227c8534d181f160b00f6eecef0e7f4366e39fc5a8f6034bfffa64531423d28377c778055d6be8671527971ce183ebab5 SHA512 fbc13832bea859409f2ae525a82927424dd474db9c6077d1311b9775d0a4a8728d79db7465c928271faa54221b53982ee539537e4fe8a70209c0f453b95105aa
AUX binutils-2.41-acinclude.m4 5461 BLAKE2B f34cb039e2d457facb8e234af8ade360e440cf84ace8b113a81e9f6f958858acc4dc7bd21db3f6d8628d41dce149f9d42301f14f946f9667380a772f50f3c920 SHA512 e011d0bc2afb9bb11b34289eab00cc18d1e82ab004e83a0203d5da62a76c212aae2bf2755978601cd8efeebf625c3db97920078f357f36991f0ce23a876cabf9
AUX sdcc-4.2.0-link-tinfo.patch 916 BLAKE2B 7930cf615dbf0be6f44581e0e59d5c8ed59d5ae204153b2b08a2bfb6af8ef69b01fa1584c95dc194881d843edad8bc39dc85ca8b597e120828e49ae30b2c6c74 SHA512 b4ab00ed63be3dad5c0250ce8cd3301830ac2a65f4b8d9034151e285b93057357249a19b9d521f1cfd62173d97baa37a69c7e56d1b0423f9edc2e84b368fcad5
AUX sdcc-4.3.2-override-override.patch 2178 BLAKE2B 7c60caeb0fb948230f7397b6da6b2b5c7c9f49cfb3679316821db7a5a34deda205deec0957696a4bc5e99007fd1b2527c41f1680e20dbb226e83b948333f8765 SHA512 d958b4691e291c70b2d1b994e39d799a69c65f5d76476d86f29bbdd4e938dded4188b352fab371a24f0c15dc7d89cc7b0f2007b7fbb4ae9802198f7bf8d78f6b
AUX sdcc-4.4.0-autoreconf-libiberty.patch 696 BLAKE2B 9dce6aca61d3d1f9229c1a13549a5584c48c28a19146215c24a97aebca5bb5c9f74517da2622ea3f86e19e8281fdcbe85a14f7a11fe036e877c1f6de7db5cad7 SHA512 a5408bc3913372327e3bae75cdc57e5765cd3369863fe9d92cd43f9fa6de1c2293ac647231391fda7f5ec0a3c1587a5b44dd228c25ee528da8d9c7b68f29de42
AUX sdcc-4.4.0-fix-binutils-dependency.patch 569 BLAKE2B 185f644a2c68c9eece5dc37cad9543a86688eea16e80c1ff1460020545404604c2d6870b6a6559b55e4259a3db51dd1ccfb8f2430d8dafffa56ed48bbe3248da SHA512 cd3f2a72c8e3ec5aae9e8473fc11ef8862134ebe9857fa176110918a89fbd8b6b8388533ae4877ade4746518e0d420afab5530c6cf3da6be93940a206e6befe7
AUX sdcc-4.4.0-fix-mkdir-autoconf-test.patch 395 BLAKE2B 5c509a0f7a4e201c03fd6c7fbed3c95287896acbbb733c7dbd8ae6d3dbd79bcbd795eeb020ef9c11910f01854a6b0746e82cdca6a372ed36c1dfc436562e83d5 SHA512 33184762ca7197eef5724f9c23dacc90081b5f320f773f30e844d1263d7e3b7f2e9812da5832772c56094d226617b12028ce152a1ce69d3156e06fd63af30d1a
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.4.0.tar.bz2 1293792 BLAKE2B dc2f1eed479b7fc0feeee3947176d311f3f5cc71d4f5a7c5729a4789e63df8dd24b0e6b7112a972eec6540771c4d170b8ce587ceb13868b90e66f2e82759499d SHA512 ea9b0b599cff7028b3a16157dba7ff7ef7675d638a1391b3e4252e37024fd6077631afa7a475447435cc6559b058ef4b9fa4b2091191fceb236bd80329c653f0
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.4.0.tar.bz2 20036262 BLAKE2B 891b2d29f98fedf5fd7ce5a0892c143d8cbeee1351746a633ba507dd71224ac34620530bbc278feff5d70cae20c6b53b3ea3b5efc4876efe974bbec223d8db72 SHA512 807738f852ab8df64dafa3deda1d9c5154d56fa090f126abe9368e0cb17f37589b7dac50d1e135609f0a14318f0d5d8abd444ed8303c854f2bd34cc783db4b30
EBUILD sdcc-4.0.0-r1.ebuild 3521 BLAKE2B 48ad40b6ffc3271110075e3ba18c468335d24eed4c15c7580f257fd6261890529a95e5291b205be3ce2480436371bcb00141a7e99bccdbecc2ef7a39d6f65d20 SHA512 4a84125b1c5193eb618b76bd7ca6c948f6204dba654c1209513214bf9a01698c49b6163f8433150b2c149529484300d157baa8adfa681f1aee801f3c514fed3e
EBUILD sdcc-4.0.0.ebuild 3467 BLAKE2B f91878482f72eb29c13fbd59ff1689254612dca9d249323e44264ef1d4b332fa7801da0207ebd7f54bf40c454023a696cf0c31720a043456d9ab5f31b81013b0 SHA512 21222a73d804a3f56c36845ae4ea0dad4319df6550c0081c82d740b8aeaeb16fe03451fbe27ce5a97b63e4854fee299b3876b9fcd08fb5872ed0a02476eade30
EBUILD sdcc-4.1.0.ebuild 3677 BLAKE2B d34aab5e78d263f0fb2f48755b40b5ef533fb64a5c3119da3c32eaa904f2a31b2dcb5e01ecaedbe98962fccc684ffd25955e1c6a6851d32251da5522b96007f4 SHA512 255c826df7458b7b834626e15a75ef4e129fd7f0516e84f551af0032395f905183e5867fab6e8b46ce4be82393cbf5d834722bae6588cadcde2412e585fae5ef
EBUILD sdcc-4.2.0.ebuild 3817 BLAKE2B e4d3cab1212cd1499ada220607e0d3cc77a6812253202ad18ee13c694be314750e3753ff7b2d6f4814e37871c877f5959aab66eec3c9c5c53796de2303094e55 SHA512 887b1968d49a38a334ffc0ae49bf6fa1d4122a2a41eb9dc9596bf620c0a938874220e65e1b6dda000fa43ff20ab7dfcc3190ba8de95bf3a353aaa3eaee4f0e88
EBUILD sdcc-4.4.0.ebuild 4685 BLAKE2B e13cd6fdb357944b4860cf98eb3813187e8bae914776a803c418e348fc8c639590ffba390fdcce716efd79aa9361fed9cec4e0ecb9abfc5a0dcdf1f74b03afe2 SHA512 e8ea8bb0a4cd3b3d9fa235acf2f9c343fe461af10a4e36312b7c4fa7a9d753bba353ac9299b0ce00f6013d6a6b45735778cbe4c488a9f6bfc244f0c980005eba
EBUILD sdcc-9999.ebuild 3663 BLAKE2B 67e9547414cac809cda9ca2a11fd1b45bb58902f2e6d13a417b2ab78e4fa60ffbd9fab02779579c4ffd56f85f187b24601450b1f79a26146c66ca41281aab708 SHA512 6690382b974b13930073042c7fddac7b04ee92b60d6453a9bfed48a369aea4fcdd8ef3108c71d60e8602245c8b09eb65f0383307d46eaad9267c4602dbf5b921
MISC metadata.xml 2888 BLAKE2B bf15f465cbe744c110b98ae15726fbd9ea1fb6544d5ff7a53d479b6003de937eeb79a1d2f620a92945c285557353a4fff4063e57f25f5dbe8cf908cc3b5885f3 SHA512 71067fd414aefa5d5cf3855b0295c97cfcfeef4d49c987af2c71c1782234fdc2f13e91322feecfff8238751c093569335c3e3e2ee6888c8bd553cbdee4482162
@@ -0,0 +1,193 @@
dnl Copyright (C) 2000-2023 Free Software Foundation, Inc.
dnl
dnl GCC is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by
dnl the Free Software Foundation; either version 3, or (at your option)
dnl any later version.
dnl
dnl GCC is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
dnl GNU General Public License for more details.
dnl
dnl You should have received a copy of the GNU General Public License
dnl along with GCC; see the file COPYING3. If not see
dnl <http://www.gnu.org/licenses/>.
dnl See whether strncmp reads past the end of its string parameters.
dnl On some versions of SunOS4 at least, strncmp reads a word at a time
dnl but erroneously reads past the end of strings. This can cause
dnl a SEGV in some cases.
AC_DEFUN([libiberty_AC_FUNC_STRNCMP],
[AC_REQUIRE([AC_FUNC_MMAP])
AC_CACHE_CHECK([for working strncmp], ac_cv_func_strncmp_works,
[AC_TRY_RUN([
/* Test by Jim Wilson and Kaveh Ghazi.
Check whether strncmp reads past the end of its string parameters. */
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#ifdef HAVE_FCNTL_H
#include <fcntl.h>
#endif
#ifdef HAVE_SYS_MMAN_H
#include <sys/mman.h>
#endif
#ifndef MAP_ANON
#ifdef MAP_ANONYMOUS
#define MAP_ANON MAP_ANONYMOUS
#else
#define MAP_ANON MAP_FILE
#endif
#endif
#ifndef MAP_FILE
#define MAP_FILE 0
#endif
#ifndef O_RDONLY
#define O_RDONLY 0
#endif
#define MAP_LEN 0x10000
int
main (void)
{
#if defined(HAVE_MMAP) || defined(HAVE_MMAP_ANYWHERE)
char *p;
int dev_zero;
dev_zero = open ("/dev/zero", O_RDONLY);
if (dev_zero < 0)
exit (1);
p = (char *) mmap (0, MAP_LEN, PROT_READ|PROT_WRITE,
MAP_ANON|MAP_PRIVATE, dev_zero, 0);
if (p == (char *)-1)
p = (char *) mmap (0, MAP_LEN, PROT_READ|PROT_WRITE,
MAP_ANON|MAP_PRIVATE, -1, 0);
if (p == (char *)-1)
exit (2);
else
{
char *string = "__si_type_info";
char *q = (char *) p + MAP_LEN - strlen (string) - 2;
char *r = (char *) p + 0xe;
strcpy (q, string);
strcpy (r, string);
strncmp (r, q, 14);
}
#endif /* HAVE_MMAP || HAVE_MMAP_ANYWHERE */
exit (0);
}
], ac_cv_func_strncmp_works=yes, ac_cv_func_strncmp_works=no,
ac_cv_func_strncmp_works=yes)
rm -f core core.* *.core])
if test $ac_cv_func_strncmp_works = no ; then
AC_LIBOBJ([strncmp])
fi
])
dnl See if errno must be declared even when <errno.h> is included.
AC_DEFUN([libiberty_AC_DECLARE_ERRNO],
[AC_CACHE_CHECK(whether errno must be declared, libiberty_cv_declare_errno,
[AC_TRY_COMPILE(
[#include <errno.h>],
[int x = errno;],
libiberty_cv_declare_errno=no,
libiberty_cv_declare_errno=yes)])
if test $libiberty_cv_declare_errno = yes
then AC_DEFINE(NEED_DECLARATION_ERRNO, 1,
[Define if errno must be declared even when <errno.h> is included.])
fi
])
dnl See whether we need a declaration for a function.
AC_DEFUN([libiberty_NEED_DECLARATION],
[AC_MSG_CHECKING([whether $1 must be declared])
AC_CACHE_VAL(libiberty_cv_decl_needed_$1,
[AC_TRY_COMPILE([
#include "confdefs.h"
#include <stdio.h>
#ifdef HAVE_STRING_H
#include <string.h>
#else
#ifdef HAVE_STRINGS_H
#include <strings.h>
#endif
#endif
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
#endif
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif],
[char *(*pfn) = (char *(*)) $1],
libiberty_cv_decl_needed_$1=no, libiberty_cv_decl_needed_$1=yes)])
AC_MSG_RESULT($libiberty_cv_decl_needed_$1)
if test $libiberty_cv_decl_needed_$1 = yes; then
AC_DEFINE([NEED_DECLARATION_]translit($1, [a-z], [A-Z]), 1,
[Define if $1 is not declared in system header files.])
fi
])dnl
# We always want a C version of alloca() compiled into libiberty,
# because native-compiler support for the real alloca is so !@#$%
# unreliable that GCC has decided to use it only when being compiled
# by GCC. This is the part of AC_FUNC_ALLOCA that calculates the
# information alloca.c needs.
AC_DEFUN([libiberty_AC_FUNC_C_ALLOCA],
[AC_CACHE_CHECK(whether alloca needs Cray hooks, ac_cv_os_cray,
[AC_EGREP_CPP(webecray,
[#if defined(CRAY) && ! defined(CRAY2)
webecray
#else
wenotbecray
#endif
], ac_cv_os_cray=yes, ac_cv_os_cray=no)])
if test $ac_cv_os_cray = yes; then
for ac_func in _getb67 GETB67 getb67; do
AC_CHECK_FUNC($ac_func,
[AC_DEFINE_UNQUOTED(CRAY_STACKSEG_END, $ac_func,
[Define to one of _getb67, GETB67, getb67 for Cray-2 and Cray-YMP
systems. This function is required for alloca.c support on those
systems.]) break])
done
fi
AC_CACHE_CHECK(stack direction for C alloca, ac_cv_c_stack_direction,
[AC_TRY_RUN([#include <stdlib.h>
int
find_stack_direction (void)
{
static char *addr = 0;
auto char dummy;
if (addr == 0)
{
addr = &dummy;
return find_stack_direction ();
}
else
return (&dummy > addr) ? 1 : -1;
}
int
main (void)
{
exit (find_stack_direction() < 0);
}],
ac_cv_c_stack_direction=1,
ac_cv_c_stack_direction=-1,
ac_cv_c_stack_direction=0)])
AC_DEFINE_UNQUOTED(STACK_DIRECTION, $ac_cv_c_stack_direction,
[Define if you know the direction of stack growth for your system;
otherwise it will be automatically deduced at run-time.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown])
])
@@ -1,30 +0,0 @@
--- a/support/sdbinutils/config/override.m4
+++ b/support/sdbinutils/config/override.m4
@@ -27,27 +27,6 @@
m4_copy_force([_AC_PREREQ], [AC_PREREQ])
-dnl Ensure exactly this Autoconf version is used
-m4_ifndef([_GCC_AUTOCONF_VERSION],
- [m4_define([_GCC_AUTOCONF_VERSION], [2.64])])
-
-dnl Test for the exact version when AC_INIT is expanded.
-dnl This allows to update the tree in steps (for testing)
-dnl by putting
-dnl m4_define([_GCC_AUTOCONF_VERSION], [X.Y])
-dnl in configure.ac before AC_INIT,
-dnl without rewriting this file.
-dnl Or for updating the whole tree at once with the definition above.
-AC_DEFUN([_GCC_AUTOCONF_VERSION_CHECK],
-[m4_if(m4_defn([_GCC_AUTOCONF_VERSION]),
- m4_defn([m4_PACKAGE_VERSION]), [],
- [m4_fatal([Please use exactly Autoconf ]_GCC_AUTOCONF_VERSION[ instead of ]m4_defn([m4_PACKAGE_VERSION])[.])])
-])
-m4_define([AC_INIT], m4_defn([AC_INIT])[
-_GCC_AUTOCONF_VERSION_CHECK
-])
-
-
dnl Ensure we do not use a buggy M4.
m4_if(m4_index([..wi.d.], [.d.]), [-1],
[m4_fatal(m4_do([m4 with buggy strstr detected. Please install
@@ -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
@@ -0,0 +1,62 @@
https://bugs.gentoo.org/911463
--- a/support/sdbinutils/config/override.m4
+++ b/support/sdbinutils/config/override.m4
@@ -27,27 +27,6 @@
m4_copy_force([_AC_PREREQ], [AC_PREREQ])
-dnl Ensure exactly this Autoconf version is used
-m4_ifndef([_GCC_AUTOCONF_VERSION],
- [m4_define([_GCC_AUTOCONF_VERSION], [2.69])])
-
-dnl Test for the exact version when AC_INIT is expanded.
-dnl This allows one to update the tree in steps (for testing)
-dnl by putting
-dnl m4_define([_GCC_AUTOCONF_VERSION], [X.Y])
-dnl in configure.ac before AC_INIT,
-dnl without rewriting this file.
-dnl Or for updating the whole tree at once with the definition above.
-AC_DEFUN([_GCC_AUTOCONF_VERSION_CHECK],
-[m4_if(m4_defn([_GCC_AUTOCONF_VERSION]),
- m4_defn([m4_PACKAGE_VERSION]), [],
- [m4_fatal([Please use exactly Autoconf ]_GCC_AUTOCONF_VERSION[ instead of ]m4_defn([m4_PACKAGE_VERSION])[.])])
-])
-m4_define([AC_INIT], m4_defn([AC_INIT])[
-_GCC_AUTOCONF_VERSION_CHECK
-])
-
-
dnl Ensure we do not use a buggy M4.
m4_if(m4_index([..wi.d.], [.d.]), [-1],
[m4_fatal(m4_do([m4 with buggy strstr detected. Please install
--- a/support/cpp/config/override.m4
+++ b/support/cpp/config/override.m4
@@ -27,27 +27,6 @@
m4_copy_force([_AC_PREREQ], [AC_PREREQ])
-dnl Ensure exactly this Autoconf version is used
-m4_ifndef([_GCC_AUTOCONF_VERSION],
- [m4_define([_GCC_AUTOCONF_VERSION], [2.69])])
-
-dnl Test for the exact version when AC_INIT is expanded.
-dnl This allows to update the tree in steps (for testing)
-dnl by putting
-dnl m4_define([_GCC_AUTOCONF_VERSION], [X.Y])
-dnl in configure.ac before AC_INIT,
-dnl without rewriting this file.
-dnl Or for updating the whole tree at once with the definition above.
-AC_DEFUN([_GCC_AUTOCONF_VERSION_CHECK],
-[m4_if(m4_defn([_GCC_AUTOCONF_VERSION]),
- m4_defn([m4_PACKAGE_VERSION]), [],
- [m4_fatal([Please use exactly Autoconf ]_GCC_AUTOCONF_VERSION[ instead of ]m4_defn([m4_PACKAGE_VERSION])[.])])
-])
-m4_define([AC_INIT], m4_defn([AC_INIT])[
-_GCC_AUTOCONF_VERSION_CHECK
-])
-
-
dnl Ensure we do not use a buggy M4.
m4_if(m4_index([..wi.d.], [.d.]), [-1],
[m4_fatal(m4_do([m4 with buggy strstr detected. Please install
@@ -0,0 +1,15 @@
Most implicit function declarations left come from the included libiberty.
Add it to eautoreconf to regenerate its tests.
https://bugs.gentoo.org/898594
--- a/configure.ac
+++ b/configure.ac
@@ -874,7 +874,7 @@
test $OPT_DISABLE_PACKIHX = 0 && AC_CONFIG_SUBDIRS(support/packihx)
test $OPT_DISABLE_UCSIM = 0 && AC_CONFIG_SUBDIRS(sim/ucsim)
test $OPT_DISABLE_SDCDB = 0 && AC_CONFIG_SUBDIRS(debugger/mcs51)
-test $OPT_DISABLE_SDBINUTILS = 0 && AC_CONFIG_SUBDIRS(support/sdbinutils)
+test $OPT_DISABLE_SDBINUTILS = 0 && AC_CONFIG_SUBDIRS(support/sdbinutils support/sdbinutils/libiberty)
AC_CONFIG_FILES([doc/Makefile])
####test $OPT_DISABLE_AVR = 0 && AC_CONFIG_FILES([src/avr/Makefile])
@@ -0,0 +1,22 @@
https://bugs.gentoo.org/917114
https://sourceforge.net/p/sdcc/support-requests/193/
--- sdcc/Makefile.in
+++ sdcc/Makefile.in
@@ -98,7 +98,6 @@
ifeq ($(OPT_DISABLE_SDBINUTILS), 0)
TARGETS += sdcc-sdbinutils
PKGS += $(SDCC_SDBINUTILS)
-SDBINUTILS_BINS = sdar$(EXEEXT) sdranlib$(EXEEXT) sdnm$(EXEEXT) sdobjcopy$(EXEEXT)
SDCC_BINUTILS = sdcc-sdbinutils
endif
@@ -142,7 +141,7 @@
tini: checkconf sdcc-tini
-sdcc-libs: ${SDCC_SDBINUTILS}
+sdcc-libs: ${SDCC_BINUTILS}
for lib in $(SDCC_LIBS); do $(MAKE) -C $$lib; done
sdcc-cc: sdcc-libs
@@ -0,0 +1,13 @@
Fix implicit function declaration in configure logs: mkdir
https://bugs.gentoo.org/898594
--- a/support/cpp/configure.ac
+++ b/support/cpp/configure.ac
@@ -2317,6 +2317,7 @@
################################################################################
# mkdir takes a single argument on some systems.
+AC_CHECK_HEADERS([sys/stat.h])
gcc_AC_FUNC_MKDIR_TAKES_ONE_ARG
# File extensions
+173
View File
@@ -0,0 +1,173 @@
# 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
"${FILESDIR}"/${P}-fix-mkdir-autoconf-test.patch
"${FILESDIR}"/${P}-autoreconf-libiberty.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
# add acinclude.m4 from binutils to run autoreconf for libiberty
cp "${FILESDIR}"/binutils-2.41-acinclude.m4 support/sdbinutils/libiberty/acinclude.m4 || die
# libiberty configure will check this file and fail if not found
cp install-sh support/sdbinutils/libiberty/ || die
# libiberty configure will fail if this was not set
export libiberty_topdir="${S}"/support/sdbinutils/libiberty
# this does not build: https://sourceforge.net/p/sdcc/bugs/3673/
# disable for now
sed 's:device/lib/mos65c02/Makefile::' -i configure.ac || 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
}