aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon South <simon@simonsouth.net>2022-03-10 07:31:18 -0500
committerNicolas Goaziou <mail@nicolasgoaziou.fr>2022-03-11 00:41:44 +0100
commit61edb25e9b59b23687d1bcc2014f4fbf6dc70c30 (patch)
treeb1366b26987ec080de816a353343f10590c958b1
parentebaf91df2524e526f26a9a2f29dacc27d716359e (diff)
downloadguix-61edb25e9b59b23687d1bcc2014f4fbf6dc70c30.tar
guix-61edb25e9b59b23687d1bcc2014f4fbf6dc70c30.tar.gz
gnu: sdcc: Update to 4.2.0.
* gnu/packages/embedded.scm (sdcc): Update to 4.2.0. [description]: Update to mention the newly supported MOS 6502. * gnu/packages/patches/sdcc-disable-non-free-code.patch: Update to match new version. Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
-rw-r--r--gnu/packages/embedded.scm12
-rw-r--r--gnu/packages/patches/sdcc-disable-non-free-code.patch363
2 files changed, 196 insertions, 179 deletions
diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index 65e0109891..24d454820b 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -8,7 +8,7 @@
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2021 Julien Lepiller <julien@lepiller.eu>
-;;; Copyright © 2020, 2021 Simon South <simon@simonsouth.net>
+;;; Copyright © 2020, 2021, 2022 Simon South <simon@simonsouth.net>
;;; Copyright © 2021 Morgan Smith <Morgan.J.Smith@outlook.com>
;;; Copyright © 2022 Mathieu Othacehe <othacehe@gnu.org>
;;;
@@ -1527,7 +1527,7 @@ and Zilog Z80 families, plus many of their variants.")
(define-public sdcc
(package
(name "sdcc")
- (version "4.1.0")
+ (version "4.2.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -1535,7 +1535,7 @@ and Zilog Z80 families, plus many of their variants.")
"/" version "/sdcc-src-" version ".tar.bz2"))
(sha256
(base32
- "0gskzli17ghnn5qllvn4d56qf9bvvclqjh63nnj63p52smvggvc1"))
+ "0ly0m3q9vzjb9kcfjh79s77wpl4w7xhybzy4h9x0bmmw4cfsx6xl"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -1573,9 +1573,9 @@ and Zilog Z80 families, plus many of their variants.")
(home-page "http://sdcc.sourceforge.net")
(synopsis "C compiler suite for 8-bit microcontrollers")
(description "SDCC is a retargetable, optimizing Standard C compiler suite
-that targets 8-bit microcontrollers in the Intel MCS-51 (8051); Motorola
-68HC08; Padauk PDK13, PDK14 and PDK15; STMicroelectronics STM8; and Zilog Z80
-families, plus many of their variants.")
+that targets 8-bit microcontrollers in the Intel MCS-51 (8051); MOS Technology
+6502; Motorola 68HC08; Padauk PDK13, PDK14 and PDK15; STMicroelectronics STM8;
+and Zilog Z80 families, plus many of their variants.")
(license (list license:gpl2+
license:gpl3+
license:lgpl2.0+
diff --git a/gnu/packages/patches/sdcc-disable-non-free-code.patch b/gnu/packages/patches/sdcc-disable-non-free-code.patch
index 1c823c3c18..39046ae280 100644
--- a/gnu/packages/patches/sdcc-disable-non-free-code.patch
+++ b/gnu/packages/patches/sdcc-disable-non-free-code.patch
@@ -15,10 +15,10 @@ remove instructions that encourage the use of SDCC with non-free
software.
diff --git a/Makefile.common.in b/Makefile.common.in
-index 926b761..0362fd5 100644
+index 1a11f67..69d5efe 100644
--- a/Makefile.common.in
+++ b/Makefile.common.in
-@@ -71,7 +71,6 @@ OPT_DISABLE_PACKIHX = @OPT_DISABLE_PACKIHX@
+@@ -73,7 +73,6 @@ OPT_DISABLE_PACKIHX = @OPT_DISABLE_PACKIHX@
OPT_DISABLE_SDBINUTILS = @OPT_DISABLE_SDBINUTILS@
OPT_DISABLE_SDCPP = @OPT_DISABLE_SDCPP@
OPT_DISABLE_UCSIM = @OPT_DISABLE_UCSIM@
@@ -27,10 +27,10 @@ index 926b761..0362fd5 100644
SLIB = $(top_builddir)/support/util
diff --git a/Makefile.in b/Makefile.in
-index 5485074..3071472 100644
+index d899b62..554a1c3 100644
--- a/Makefile.in
+++ b/Makefile.in
-@@ -100,9 +100,6 @@ endif
+@@ -105,9 +105,6 @@ endif
ifeq ($(OPT_DISABLE_DEVICE_LIB), 0)
TARGETS += sdcc-device-lib
PKGS += device/lib
@@ -40,7 +40,7 @@ index 5485074..3071472 100644
endif
ifeq ($(OPT_DISABLE_PACKIHX), 0)
-@@ -123,9 +120,6 @@ endif
+@@ -128,9 +125,6 @@ endif
TARGETS += sdcc-libs sdcc-cc sdcc-device-inc sdcc-as sdcc-ld sdcc-scripts
PKGS += $(SDCC_LIBS) src device/include
@@ -50,7 +50,7 @@ index 5485074..3071472 100644
PKGS += $(SDCC_AS) sdas/linksrc $(SDCC_SCRIPTS)
PORTS = $(shell cat ports.build)
-@@ -171,21 +165,12 @@ sdcc-sdbinutils:
+@@ -176,21 +170,12 @@ sdcc-sdbinutils:
sdcc-device-inc:
$(MAKE) -C device/include
@@ -73,10 +73,10 @@ index 5485074..3071472 100644
# doc depends on latex and latex2html
diff --git a/configure b/configure
-index 4c2226b..b8a9251 100755
+index 232d98e..3eeb17c 100755
--- a/configure
+++ b/configure
-@@ -632,7 +632,6 @@ LATEX
+@@ -659,7 +659,6 @@ LATEX
LATEX2HTML
LYX
OPT_ENABLE_DOC
@@ -84,7 +84,7 @@ index 4c2226b..b8a9251 100755
OPT_DISABLE_SDBINUTILS
OPT_DISABLE_SDCDB
OPT_DISABLE_SDCPP
-@@ -661,10 +660,7 @@ OPT_DISABLE_R2K
+@@ -690,10 +689,7 @@ OPT_DISABLE_R2K
OPT_DISABLE_Z180
OPT_DISABLE_Z80
OPT_DISABLE_MCS51
@@ -95,7 +95,7 @@ index 4c2226b..b8a9251 100755
include_dir_suffix
inclib_dir_suffix
LIB_TYPE
-@@ -785,7 +781,6 @@ enable_packihx
+@@ -821,7 +817,6 @@ enable_packihx
enable_sdcpp
enable_sdcdb
enable_sdbinutils
@@ -103,7 +103,7 @@ index 4c2226b..b8a9251 100755
enable_doc
enable_libgc
'
-@@ -806,10 +801,7 @@ sdccconf_h_dir_separator
+@@ -842,10 +837,7 @@ sdccconf_h_dir_separator
LIB_TYPE
inclib_dir_suffix
include_dir_suffix
@@ -114,7 +114,7 @@ index 4c2226b..b8a9251 100755
docdir'
ac_subdirs_all='support/cpp
support/packihx
-@@ -817,9 +809,7 @@ sim/ucsim
+@@ -853,9 +845,7 @@ sim/ucsim
debugger/mcs51
support/sdbinutils
device/lib/pic14
@@ -125,7 +125,7 @@ index 4c2226b..b8a9251 100755
# Initialize some variables set by options.
ac_init_help=
-@@ -1473,7 +1463,6 @@ Optional Features:
+@@ -1509,7 +1499,6 @@ Optional Features:
--disable-sdcpp Disables building sdcpp
--disable-sdcdb Disables building sdcdb
--disable-sdbinutils Disables configuring and building of sdbinutils
@@ -133,7 +133,7 @@ index 4c2226b..b8a9251 100755
--enable-doc Enables building the documentation
--enable-libgc Use the Bohem memory allocator. Lower runtime
footprint.
-@@ -1502,16 +1491,8 @@ Some influential environment variables:
+@@ -1538,16 +1527,8 @@ Some influential environment variables:
appended to datadir to define SDCC's include/lib directory
include_dir_suffix
appended to datadir to define SDCC's include directory
@@ -150,7 +150,7 @@ index 4c2226b..b8a9251 100755
docdir documentation installation directory
Use these variables to override the choices made by `configure' or to help
-@@ -7156,19 +7137,6 @@ if test "${include_dir_suffix}" = ""; then
+@@ -7421,19 +7402,6 @@ if test "${include_dir_suffix}" = ""; then
include_dir_suffix="${inclib_dir_suffix}/include"
fi
@@ -170,7 +170,7 @@ index 4c2226b..b8a9251 100755
# lib_dir_suffix:
# *nix default: "sdcc/lib"
-@@ -7176,13 +7144,6 @@ if test "${lib_dir_suffix}" = ""; then
+@@ -7441,13 +7409,6 @@ if test "${lib_dir_suffix}" = ""; then
lib_dir_suffix="${inclib_dir_suffix}/lib"
fi
@@ -184,9 +184,9 @@ index 4c2226b..b8a9251 100755
# docdir:
# *nix default: "${datadir}/sdcc/doc"
-@@ -7349,24 +7310,6 @@ cat >>confdefs.h <<_ACEOF
- #define INCLUDE_DIR_SUFFIX DIR_SEPARATOR_STRING "${norm_inc_dir_suffix}"
- _ACEOF
+@@ -7600,22 +7561,6 @@ esac
+
+ printf "%s\n" "#define INCLUDE_DIR_SUFFIX DIR_SEPARATOR_STRING \"${norm_inc_dir_suffix}\"" >>confdefs.h
-norm_non_free_inc_dir_suffix=${non_free_include_dir_suffix}
-case ":$norm_non_free_inc_dir_suffix:" in
@@ -202,16 +202,14 @@ index 4c2226b..b8a9251 100755
- *) norm_non_free_inc_dir_suffix=`echo "$norm_non_free_inc_dir_suffix" | sed 's,\(.\)[\\/][\\/]*,\1/,g'` ;;
-esac
-
--cat >>confdefs.h <<_ACEOF
--#define NON_FREE_INCLUDE_DIR_SUFFIX DIR_SEPARATOR_STRING "${norm_non_free_inc_dir_suffix}"
--_ACEOF
+-printf "%s\n" "#define NON_FREE_INCLUDE_DIR_SUFFIX DIR_SEPARATOR_STRING \"${norm_non_free_inc_dir_suffix}\"" >>confdefs.h
-
norm_lib_dir_suffix=${lib_dir_suffix}
case ":$norm_lib_dir_suffix:" in
-@@ -7386,24 +7329,6 @@ cat >>confdefs.h <<_ACEOF
- #define LIB_DIR_SUFFIX DIR_SEPARATOR_STRING "${norm_lib_dir_suffix}"
- _ACEOF
+@@ -7633,22 +7578,6 @@ esac
+
+ printf "%s\n" "#define LIB_DIR_SUFFIX DIR_SEPARATOR_STRING \"${norm_lib_dir_suffix}\"" >>confdefs.h
-norm_non_free_lib_dir_suffix=${non_free_lib_dir_suffix}
-case ":$norm_non_free_lib_dir_suffix:" in
@@ -227,19 +225,18 @@ index 4c2226b..b8a9251 100755
- *) norm_non_free_lib_dir_suffix=`echo "$norm_non_free_lib_dir_suffix" | sed 's,\(.\)[\\/][\\/]*,\1/,g'` ;;
-esac
-
--cat >>confdefs.h <<_ACEOF
--#define NON_FREE_LIB_DIR_SUFFIX DIR_SEPARATOR_STRING "${norm_non_free_lib_dir_suffix}"
--_ACEOF
+-printf "%s\n" "#define NON_FREE_LIB_DIR_SUFFIX DIR_SEPARATOR_STRING \"${norm_non_free_lib_dir_suffix}\"" >>confdefs.h
-
# relative paths
for _lcl_i in expanded_bindir:expanded_datadir:bin2data_dir; do
-@@ -8513,28 +8438,6 @@ _ACEOF
+@@ -8751,27 +8680,6 @@ printf "%s\n" "#define OPT_DISABLE_SDBINUTILS $OPT_DISABLE_SDBINUTILS" >>confdef
- # Check whether --enable-non-free was given.
--if test "${enable_non_free+set}" = set; then :
+-if test ${enable_non_free+y}
+-then :
- enableval=$enable_non_free;
-fi
-
@@ -253,17 +250,15 @@ index 4c2226b..b8a9251 100755
- fi
-
-
--cat >>confdefs.h <<_ACEOF
--#define OPT_DISABLE_NON_FREE $OPT_DISABLE_NON_FREE
--_ACEOF
+-printf "%s\n" "#define OPT_DISABLE_NON_FREE $OPT_DISABLE_NON_FREE" >>confdefs.h
-
-
-
-
# Check whether --enable-doc was given.
- if test "${enable_doc+set}" = set; then :
-@@ -8929,20 +8832,12 @@ if test $OPT_DISABLE_PIC14 = 0; then
+ if test ${enable_doc+y}
+@@ -9199,20 +9107,12 @@ if test $OPT_DISABLE_PIC14 = 0; then
test $OPT_DISABLE_DEVICE_LIB = 0 && subdirs="$subdirs device/lib/pic14"
@@ -283,8 +278,8 @@ index 4c2226b..b8a9251 100755
-
fi
- if test $OPT_DISABLE_Z80 = 0 || test $OPT_DISABLE_Z180 = 0 || test $OPT_DISABLE_R2K = 0 || test $OPT_DISABLE_R2KA = 0 || test $OPT_DISABLE_R3KA = 0 || test $OPT_DISABLE_GBZ80 = 0 || test $OPT_DISABLE_TLCS90 = 0 || test $OPT_DISABLE_EZ80_Z80 = 0 || test $OPT_DISABLE_Z80N = 0; then
-@@ -9019,15 +8914,9 @@ fi
+ if test $OPT_DISABLE_Z80 = 0 || test $OPT_DISABLE_Z180 = 0 || test $OPT_DISABLE_R2K = 0 || test $OPT_DISABLE_R2KA = 0 || test $OPT_DISABLE_R3KA = 0 || test $OPT_DISABLE_SM83 = 0 || test $OPT_DISABLE_TLCS90 = 0 || test $OPT_DISABLE_EZ80_Z80 = 0 || test $OPT_DISABLE_Z80N = 0; then
+@@ -9289,15 +9189,9 @@ fi
test $OPT_DISABLE_DEVICE_LIB = 0 && ac_config_files="$ac_config_files device/lib/Makefile"
@@ -300,7 +295,7 @@ index 4c2226b..b8a9251 100755
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
# tests run on this system so they can be shared between configure
-@@ -9768,7 +9657,6 @@ do
+@@ -10037,7 +9931,6 @@ do
"device/lib/pdk15-stack-auto/Makefile") CONFIG_FILES="$CONFIG_FILES device/lib/pdk15-stack-auto/Makefile" ;;
"sdas/aspdk16/Makefile") CONFIG_FILES="$CONFIG_FILES sdas/aspdk16/Makefile" ;;
"device/lib/Makefile") CONFIG_FILES="$CONFIG_FILES device/lib/Makefile" ;;
@@ -308,7 +303,7 @@ index 4c2226b..b8a9251 100755
"main.mk") CONFIG_FILES="$CONFIG_FILES main.mk:main_in.mk" ;;
"src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
"device/include/Makefile") CONFIG_FILES="$CONFIG_FILES device/include/Makefile" ;;
-@@ -9780,7 +9668,6 @@ do
+@@ -10049,7 +9942,6 @@ do
"support/regression/ports/host/spec.mk") CONFIG_FILES="$CONFIG_FILES support/regression/ports/host/spec.mk:support/regression/ports/host/spec.mk.in" ;;
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"Makefile.common") CONFIG_FILES="$CONFIG_FILES Makefile.common:Makefile.common.in" ;;
@@ -316,7 +311,7 @@ index 4c2226b..b8a9251 100755
*) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
esac
-@@ -10589,54 +10476,6 @@ esac
+@@ -10856,54 +10748,6 @@ esac
incPath3=`echo "$incPath3" | sed 's,\\\\\\\\,\\\\,g'`
@@ -371,7 +366,7 @@ index 4c2226b..b8a9251 100755
libPath1=`echo "/${prefix2data_dir}/${norm_lib_dir_suffix}" | sed 's,/\./,/,g'`
case ":$libPath1:" in
-@@ -10686,54 +10525,6 @@ esac
+@@ -10953,54 +10797,6 @@ esac
libPath3=`echo "$libPath3" | sed 's,\\\\\\\\,\\\\,g'`
@@ -423,18 +418,18 @@ index 4c2226b..b8a9251 100755
-nonFreeLibPath3=`echo "$nonFreeLibPath3" | sed 's,\\\\\\\\,\\\\,g'`
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result:
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result:
sdcc ${VERSION} is now configured for
-@@ -10772,7 +10563,6 @@ sdcc ${VERSION} is now configured for
- pdk15 ${enable_pdk15_port}
- pdk16 ${enable_pdk16_port}
+@@ -11041,7 +10837,6 @@ sdcc ${VERSION} is now configured for
+ mos6502 ${enable_mos6502_port}
+ mos65c02 ${enable_mos65c02_port}
- Disable non-free lib: ${OPT_DISABLE_NON_FREE}
Disable packihx: ${OPT_DISABLE_PACKIHX}
Disable ucsim: ${OPT_DISABLE_UCSIM}
Disable device lib: ${OPT_DISABLE_DEVICE_LIB}
-@@ -10787,9 +10577,6 @@ sdcc ${VERSION} is now configured for
+@@ -11056,9 +10851,6 @@ sdcc ${VERSION} is now configured for
include/library files: ${datadir}/${inclib_dir_suffix}
include files: ${datadir}/${include_dir_suffix}
library files: ${datadir}/${lib_dir_suffix}
@@ -444,7 +439,7 @@ index 4c2226b..b8a9251 100755
documentation: ${docdir}
prefix: ${prefix}
-@@ -10801,15 +10588,9 @@ sdcc ${VERSION} is now configured for
+@@ -11070,15 +10862,9 @@ sdcc ${VERSION} is now configured for
include files: ${incPath1}
path(argv[0])${incPath2}
${incPath3}
@@ -458,17 +453,17 @@ index 4c2226b..b8a9251 100755
- path(argv[0])${nonFreeLibPath2}${dirch}<model>
- ${nonFreeLibPath3}${dirch}<model>
" >&5
- $as_echo "
+ printf "%s\n" "
sdcc ${VERSION} is now configured for
-@@ -10849,7 +10630,6 @@ sdcc ${VERSION} is now configured for
- pdk15 ${enable_pdk15_port}
- pdk16 ${enable_pdk16_port}
+@@ -11120,7 +10906,6 @@ sdcc ${VERSION} is now configured for
+ mos6502 ${enable_mos6502_port}
+ mos65c02 ${enable_mos65c02_port}
- Disable non-free lib: ${OPT_DISABLE_NON_FREE}
Disable packihx: ${OPT_DISABLE_PACKIHX}
Disable ucsim: ${OPT_DISABLE_UCSIM}
Disable device lib: ${OPT_DISABLE_DEVICE_LIB}
-@@ -10864,9 +10644,6 @@ sdcc ${VERSION} is now configured for
+@@ -11135,9 +10920,6 @@ sdcc ${VERSION} is now configured for
include/library files: ${datadir}/${inclib_dir_suffix}
include files: ${datadir}/${include_dir_suffix}
library files: ${datadir}/${lib_dir_suffix}
@@ -478,7 +473,7 @@ index 4c2226b..b8a9251 100755
documentation: ${docdir}
prefix: ${prefix}
-@@ -10878,14 +10655,8 @@ sdcc ${VERSION} is now configured for
+@@ -11149,15 +10931,9 @@ sdcc ${VERSION} is now configured for
include files: ${incPath1}
path(argv[0])${incPath2}
${incPath3}
@@ -493,11 +488,12 @@ index 4c2226b..b8a9251 100755
- ${nonFreeLibPath3}${dirch}<model>
" >&6; }
# End of configure/configure.in
+
diff --git a/configure.ac b/configure.ac
-index 455fee1..48e0a20 100644
+index cc5309e..5eb4326 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -548,19 +548,6 @@ if test "${include_dir_suffix}" = ""; then
+@@ -562,19 +562,6 @@ if test "${include_dir_suffix}" = ""; then
include_dir_suffix="${inclib_dir_suffix}/include"
fi
@@ -517,7 +513,7 @@ index 455fee1..48e0a20 100644
# lib_dir_suffix:
# *nix default: "sdcc/lib"
AC_ARG_VAR([lib_dir_suffix], [appended to datadir to define SDCC's library root directory])
-@@ -568,13 +555,6 @@ if test "${lib_dir_suffix}" = ""; then
+@@ -582,13 +569,6 @@ if test "${lib_dir_suffix}" = ""; then
lib_dir_suffix="${inclib_dir_suffix}/lib"
fi
@@ -531,7 +527,7 @@ index 455fee1..48e0a20 100644
# docdir:
# *nix default: "${datadir}/sdcc/doc"
AC_ARG_VAR([docdir], [documentation installation directory])
-@@ -615,19 +595,11 @@ norm_inc_dir_suffix=${include_dir_suffix}
+@@ -629,19 +609,11 @@ norm_inc_dir_suffix=${include_dir_suffix}
adl_NORMALIZE_PATH([norm_inc_dir_suffix], [$sdccconf_h_dir_separator])
AC_DEFINE_UNQUOTED(INCLUDE_DIR_SUFFIX,
DIR_SEPARATOR_STRING "${norm_inc_dir_suffix}", [XXX])
@@ -551,7 +547,7 @@ index 455fee1..48e0a20 100644
# relative paths
adl_COMPUTE_RELATIVE_PATHS([expanded_bindir:expanded_datadir:bin2data_dir])
-@@ -803,7 +775,6 @@ AC_DO_DISABLER(packihx, PACKIHX, [Disables building packihx])
+@@ -819,7 +791,6 @@ AC_DO_DISABLER(packihx, PACKIHX, [Disables building packihx])
AC_DO_DISABLER(sdcpp, SDCPP, [Disables building sdcpp])
AC_DO_DISABLER(sdcdb, SDCDB, [Disables building sdcdb])
AC_DO_DISABLER(sdbinutils, SDBINUTILS, [Disables configuring and building of sdbinutils])
@@ -559,7 +555,7 @@ index 455fee1..48e0a20 100644
AC_DO_ENABLER(doc, DOC, [Enables building the documentation])
AC_CHECK_PROG([LYX], [lyx], [lyx], [:])
-@@ -874,16 +845,10 @@ if test $OPT_DISABLE_PIC14 = 0; then
+@@ -897,16 +868,10 @@ if test $OPT_DISABLE_PIC14 = 0; then
AC_CONFIG_FILES(src/pic14/Makefile)
test $OPT_DISABLE_DEVICE_LIB = 0 && AC_CONFIG_SUBDIRS(device/lib/pic14)
fi
@@ -574,9 +570,9 @@ index 455fee1..48e0a20 100644
- test $OPT_DISABLE_DEVICE_LIB = 0 && AC_CONFIG_SUBDIRS(device/non-free/lib/pic16)
-fi
- if test $OPT_DISABLE_Z80 = 0 || test $OPT_DISABLE_Z180 = 0 || test $OPT_DISABLE_R2K = 0 || test $OPT_DISABLE_R2KA = 0 || test $OPT_DISABLE_R3KA = 0 || test $OPT_DISABLE_GBZ80 = 0 || test $OPT_DISABLE_TLCS90 = 0 || test $OPT_DISABLE_EZ80_Z80 = 0 || test $OPT_DISABLE_Z80N = 0; then
+ if test $OPT_DISABLE_Z80 = 0 || test $OPT_DISABLE_Z180 = 0 || test $OPT_DISABLE_R2K = 0 || test $OPT_DISABLE_R2KA = 0 || test $OPT_DISABLE_R3KA = 0 || test $OPT_DISABLE_SM83 = 0 || test $OPT_DISABLE_TLCS90 = 0 || test $OPT_DISABLE_EZ80_Z80 = 0 || test $OPT_DISABLE_Z80N = 0; then
AC_CONFIG_FILES([src/z80/Makefile])
-@@ -947,7 +912,6 @@ fi
+@@ -970,7 +935,6 @@ fi
test $OPT_DISABLE_DEVICE_LIB = 0 && AC_CONFIG_FILES([device/lib/Makefile])
@@ -584,7 +580,7 @@ index 455fee1..48e0a20 100644
AC_CONFIG_FILES([main.mk:main_in.mk
src/Makefile
-@@ -961,9 +925,6 @@ support/regression/ports/host/spec.mk:support/regression/ports/host/spec.mk.in
+@@ -984,9 +948,6 @@ support/regression/ports/host/spec.mk:support/regression/ports/host/spec.mk.in
Makefile
Makefile.common:Makefile.common.in
])
@@ -594,7 +590,7 @@ index 455fee1..48e0a20 100644
AC_OUTPUT
# I found no better place
-@@ -981,16 +942,10 @@ adl_NORMALIZE_PATH_MSG(/${prefix2bin_dir}, [binPath], [
+@@ -1004,16 +965,10 @@ adl_NORMALIZE_PATH_MSG(/${prefix2bin_dir}, [binPath], [
adl_NORMALIZE_PATH_MSG(/${prefix2data_dir}/${norm_inc_dir_suffix}, [incPath1], [$dirch])
adl_NORMALIZE_PATH_MSG(/${bin2data_dir}/${norm_inc_dir_suffix}, [incPath2], [$dirch])
adl_NORMALIZE_PATH_MSG(${expanded_datadir}/${norm_inc_dir_suffix}, [incPath3], [$dirch])
@@ -611,15 +607,15 @@ index 455fee1..48e0a20 100644
AC_MSG_RESULT([
sdcc ${VERSION} is now configured for
-@@ -1030,7 +985,6 @@ sdcc ${VERSION} is now configured for
- pdk15 ${enable_pdk15_port}
- pdk16 ${enable_pdk16_port}
+@@ -1055,7 +1010,6 @@ sdcc ${VERSION} is now configured for
+ mos6502 ${enable_mos6502_port}
+ mos65c02 ${enable_mos65c02_port}
- Disable non-free lib: ${OPT_DISABLE_NON_FREE}
Disable packihx: ${OPT_DISABLE_PACKIHX}
Disable ucsim: ${OPT_DISABLE_UCSIM}
Disable device lib: ${OPT_DISABLE_DEVICE_LIB}
-@@ -1045,9 +999,6 @@ sdcc ${VERSION} is now configured for
+@@ -1070,9 +1024,6 @@ sdcc ${VERSION} is now configured for
include/library files: ${datadir}/${inclib_dir_suffix}
include files: ${datadir}/${include_dir_suffix}
library files: ${datadir}/${lib_dir_suffix}
@@ -629,7 +625,7 @@ index 455fee1..48e0a20 100644
documentation: ${docdir}
prefix: ${prefix}
-@@ -1059,14 +1010,8 @@ sdcc ${VERSION} is now configured for
+@@ -1084,14 +1035,8 @@ sdcc ${VERSION} is now configured for
include files: ${incPath1}
path(argv[[0]])${incPath2}
${incPath3}
@@ -875,7 +871,7 @@ index 01ad950..62839b9 100644
clean-local:
diff --git a/device/lib/pic16/Makefile.in b/device/lib/pic16/Makefile.in
-index e4e3abb..730066b 100644
+index 6a4c9cf..4b07384 100644
--- a/device/lib/pic16/Makefile.in
+++ b/device/lib/pic16/Makefile.in
@@ -87,10 +87,7 @@ PRE_UNINSTALL = :
@@ -890,7 +886,7 @@ index e4e3abb..730066b 100644
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
-@@ -295,8 +292,7 @@ top_build_prefix = @top_build_prefix@
+@@ -297,8 +294,7 @@ top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
SUBDIRS = debug libc libio libm libsdcc startup
@@ -900,7 +896,7 @@ index e4e3abb..730066b 100644
#AM_CFLAGS += --no-optimize-goto
#AM_CFLAGS += --debug-ralloc
-@@ -310,11 +306,10 @@ AM_CPPFLAGS = -I. -I$(top_srcdir)/../../include/pic16 \
+@@ -312,11 +308,10 @@ AM_CPPFLAGS = -I. -I$(top_srcdir)/../../include/pic16 \
#AM_CFLAGS += --noinduction
#AM_CFLAGS += --nojtbound
#AM_CFLAGS += --noloopreverse
@@ -915,19 +911,40 @@ index e4e3abb..730066b 100644
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
diff --git a/device/lib/pic16/configure b/device/lib/pic16/configure
-index ed8ad06..65baa93 100755
+index add51b9..c451a74 100755
--- a/device/lib/pic16/configure
+++ b/device/lib/pic16/configure
-@@ -3657,7 +3657,6 @@ fi
+@@ -3828,7 +3828,6 @@ fi
-LIBDEV="${srcdir}/../../non-free/lib/pic16/libdev"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking devices supported by gputils" >&5
- $as_echo_n "checking devices supported by gputils... " >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking devices supported by gputils" >&5
+ printf %s "checking devices supported by gputils... " >&6; }
GOOD_PICS="";
+@@ -3839,20 +3838,6 @@ N_GOOD=0
+ N_BAD=0
+ mkdir -p ".checkdevices";
+ rm -f "$RESULT";
+-for i in "${LIBDEV}/pic1"*.c; do
+- p="${i##*pic}";
+- p="${p%.c}";
+- P=$(echo "$p" | tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ);
+- printf " include \"p%s.inc\"\n END" "$p" > "${CHECK}.asm";
+- if "$mCCAS" -p "$p" -o "${CHECK}.o" -c "${CHECK}.asm" >/dev/null 2>&1 && "$mLD" "${CHECK}.o" >/dev/null 2>&1; then
+- GOOD_PICS="$GOOD_PICS $p";
+- N_GOOD=`expr $N_GOOD + 1`;
+- echo "$P" >> "$RESULT";
+- else
+- BAD_PICS="$BAD_PICS $p";
+- N_BAD=`expr $N_BAD + 1`;
+- fi;
+-done;
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $N_GOOD devices ($GOOD_PICS)" >&5
+ printf "%s\n" "$N_GOOD devices ($GOOD_PICS)" >&6; }
+
diff --git a/device/lib/pic16/configure.ac b/device/lib/pic16/configure.ac
-index 3966c11..cdbffc7 100644
+index 75bea9d..65e98be 100644
--- a/device/lib/pic16/configure.ac
+++ b/device/lib/pic16/configure.ac
@@ -68,10 +68,6 @@ AC_SUBST(OBJEXT, [o])
@@ -942,7 +959,7 @@ index 3966c11..cdbffc7 100644
# Checks for header files.
diff --git a/device/lib/pic16/debug/Makefile.in b/device/lib/pic16/debug/Makefile.in
-index 8d5eb80..9dd8bb2 100644
+index 05108a8..a6a94bb 100644
--- a/device/lib/pic16/debug/Makefile.in
+++ b/device/lib/pic16/debug/Makefile.in
@@ -88,10 +88,7 @@ PRE_UNINSTALL = :
@@ -957,7 +974,7 @@ index 8d5eb80..9dd8bb2 100644
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-@@ -291,8 +288,7 @@ top_builddir = @top_builddir@
+@@ -292,8 +289,7 @@ top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
lib_LIBRARIES = libdebug.a
libdebug_a_SOURCES = gstack/gstack.c
@@ -967,7 +984,7 @@ index 8d5eb80..9dd8bb2 100644
#AM_CFLAGS += --no-optimize-goto
#AM_CFLAGS += --debug-ralloc
-@@ -306,11 +302,10 @@ AM_CPPFLAGS = -I. -I$(top_srcdir)/../../include/pic16 \
+@@ -307,11 +303,10 @@ AM_CPPFLAGS = -I. -I$(top_srcdir)/../../include/pic16 \
#AM_CFLAGS += --noinduction
#AM_CFLAGS += --nojtbound
#AM_CFLAGS += --noloopreverse
@@ -982,7 +999,7 @@ index 8d5eb80..9dd8bb2 100644
.SUFFIXES:
diff --git a/device/lib/pic16/libc/Makefile.in b/device/lib/pic16/libc/Makefile.in
-index 659db72..cbb73bf 100644
+index 49a437d..5579b71 100644
--- a/device/lib/pic16/libc/Makefile.in
+++ b/device/lib/pic16/libc/Makefile.in
@@ -88,10 +88,7 @@ PRE_UNINSTALL = :
@@ -997,7 +1014,7 @@ index 659db72..cbb73bf 100644
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-@@ -381,8 +378,7 @@ libc18f_a_SOURCES = ctype/iscntrl.c ctype/isdigit.c ctype/isgraph.c \
+@@ -382,8 +379,7 @@ libc18f_a_SOURCES = ctype/iscntrl.c ctype/isdigit.c ctype/isgraph.c \
string/strpbrk.c string/strrchr.c string/strspn.c \
string/strstr.c string/strtok.c string/strupr.c \
utils/cnvfrac.S utils/cnvint.S utils/cvtdec.S
@@ -1007,7 +1024,7 @@ index 659db72..cbb73bf 100644
#AM_CFLAGS += --no-optimize-goto
#AM_CFLAGS += --debug-ralloc
-@@ -396,11 +392,10 @@ AM_CPPFLAGS = -I. -I$(top_srcdir)/../../include/pic16 \
+@@ -397,11 +393,10 @@ AM_CPPFLAGS = -I. -I$(top_srcdir)/../../include/pic16 \
#AM_CFLAGS += --noinduction
#AM_CFLAGS += --nojtbound
#AM_CFLAGS += --noloopreverse
@@ -1022,7 +1039,7 @@ index 659db72..cbb73bf 100644
.SUFFIXES:
diff --git a/device/lib/pic16/libio/Makefile.in b/device/lib/pic16/libio/Makefile.in
-index 128ffcc..b298c7c 100644
+index 5b1a9b0..664958f 100644
--- a/device/lib/pic16/libio/Makefile.in
+++ b/device/lib/pic16/libio/Makefile.in
@@ -481,10 +481,7 @@ POST_UNINSTALL = :
@@ -1037,7 +1054,7 @@ index 128ffcc..b298c7c 100644
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-@@ -15600,8 +15597,7 @@ libio18lf8722_a_SOURCES = dummy.c i2c/i2cack.c i2c/i2cclose.c \
+@@ -15601,8 +15598,7 @@ libio18lf8722_a_SOURCES = dummy.c i2c/i2cack.c i2c/i2cclose.c \
libio18lf8722_a_CFLAGS = -p18lf8722 $(AM_CFLAGS)
libio18lf8723_a_SOURCES = dummy.c
libio18lf8723_a_CFLAGS = -p18lf8723 $(AM_CFLAGS)
@@ -1047,7 +1064,7 @@ index 128ffcc..b298c7c 100644
#AM_CFLAGS += --no-optimize-goto
#AM_CFLAGS += --debug-ralloc
-@@ -15615,11 +15611,10 @@ AM_CPPFLAGS = -I. -I$(top_srcdir)/../../include/pic16 \
+@@ -15616,11 +15612,10 @@ AM_CPPFLAGS = -I. -I$(top_srcdir)/../../include/pic16 \
#AM_CFLAGS += --noinduction
#AM_CFLAGS += --nojtbound
#AM_CFLAGS += --noloopreverse
@@ -1107,7 +1124,7 @@ index 211604e..e8896bf 100755
include \$(top_srcdir)/Makefile.common
diff --git a/device/lib/pic16/libm/Makefile.in b/device/lib/pic16/libm/Makefile.in
-index af29662..05f1c24 100644
+index 285c5b8..ad6c293 100644
--- a/device/lib/pic16/libm/Makefile.in
+++ b/device/lib/pic16/libm/Makefile.in
@@ -88,10 +88,7 @@ PRE_UNINSTALL = :
@@ -1122,7 +1139,7 @@ index af29662..05f1c24 100644
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-@@ -312,8 +309,7 @@ libm18f_a_SOURCES = acosf.c asincosf.c asinf.c atan2f.c atanf.c \
+@@ -313,8 +310,7 @@ libm18f_a_SOURCES = acosf.c asincosf.c asinf.c atan2f.c atanf.c \
frexpf.c isinf.c isnan.c ldexpf.c log10f.c logf.c modff.c \
powf.c sincosf.c sincoshf.c sinf.c sinhf.c sqrtf.c tancotf.c \
tanf.c tanhf.c
@@ -1132,7 +1149,7 @@ index af29662..05f1c24 100644
#AM_CFLAGS += --no-optimize-goto
#AM_CFLAGS += --debug-ralloc
-@@ -327,11 +323,10 @@ AM_CPPFLAGS = -I. -I$(top_srcdir)/../../include/pic16 \
+@@ -328,11 +324,10 @@ AM_CPPFLAGS = -I. -I$(top_srcdir)/../../include/pic16 \
#AM_CFLAGS += --noinduction
#AM_CFLAGS += --nojtbound
#AM_CFLAGS += --noloopreverse
@@ -1147,7 +1164,7 @@ index af29662..05f1c24 100644
.SUFFIXES:
diff --git a/device/lib/pic16/libsdcc/Makefile.in b/device/lib/pic16/libsdcc/Makefile.in
-index d384631..01129e3 100644
+index 808b8a5..412dc80 100644
--- a/device/lib/pic16/libsdcc/Makefile.in
+++ b/device/lib/pic16/libsdcc/Makefile.in
@@ -88,10 +88,7 @@ PRE_UNINSTALL = :
@@ -1162,7 +1179,7 @@ index d384631..01129e3 100644
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-@@ -413,8 +410,7 @@ libsdcc_a_SOURCES = char/divschar.c char/divuchar.c char/modschar.c \
+@@ -414,8 +411,7 @@ libsdcc_a_SOURCES = char/divschar.c char/divuchar.c char/modschar.c \
int/modsint.c int/moduint.c int/mulint.c long/divslong.c \
long/divulong.c long/modslong.c long/modulong.c long/mullong.c \
lregs/lrrest.c lregs/lrst.c stack/stack.S
@@ -1172,7 +1189,7 @@ index d384631..01129e3 100644
#AM_CFLAGS += --no-optimize-goto
#AM_CFLAGS += --debug-ralloc
-@@ -428,11 +424,10 @@ AM_CPPFLAGS = -I. -I$(top_srcdir)/../../include/pic16 \
+@@ -429,11 +425,10 @@ AM_CPPFLAGS = -I. -I$(top_srcdir)/../../include/pic16 \
#AM_CFLAGS += --noinduction
#AM_CFLAGS += --nojtbound
#AM_CFLAGS += --noloopreverse
@@ -1187,7 +1204,7 @@ index d384631..01129e3 100644
.SUFFIXES:
diff --git a/device/lib/pic16/startup/Makefile.in b/device/lib/pic16/startup/Makefile.in
-index 6169096..0172a25 100644
+index d57c254..7394a4c 100644
--- a/device/lib/pic16/startup/Makefile.in
+++ b/device/lib/pic16/startup/Makefile.in
@@ -89,10 +89,7 @@ PRE_UNINSTALL = :
@@ -1202,7 +1219,7 @@ index 6169096..0172a25 100644
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-@@ -308,8 +305,7 @@ libcrt0iz_a_SOURCES = crt0iz.c
+@@ -309,8 +306,7 @@ libcrt0iz_a_SOURCES = crt0iz.c
# Force installation of .o files into $libdir
crtdir = $(libdir)
crt_DATA = crt0.o crt0i.o crt0iz.o
@@ -1212,7 +1229,7 @@ index 6169096..0172a25 100644
#AM_CFLAGS += --no-optimize-goto
#AM_CFLAGS += --debug-ralloc
-@@ -323,11 +319,10 @@ AM_CPPFLAGS = -I. -I$(top_srcdir)/../../include/pic16 \
+@@ -324,11 +320,10 @@ AM_CPPFLAGS = -I. -I$(top_srcdir)/../../include/pic16 \
#AM_CFLAGS += --noinduction
#AM_CFLAGS += --nojtbound
#AM_CFLAGS += --noloopreverse
@@ -1227,7 +1244,7 @@ index 6169096..0172a25 100644
.SUFFIXES:
diff --git a/doc/INSTALL.txt b/doc/INSTALL.txt
-index d630b99..8cd747f 100644
+index 3c4bc1f..0a6fdd5 100644
--- a/doc/INSTALL.txt
+++ b/doc/INSTALL.txt
@@ -18,9 +18,7 @@ To install:
@@ -1261,10 +1278,10 @@ index d630b99..8cd747f 100644
You can test the install by entering:
diff --git a/doc/README.txt b/doc/README.txt
-index 88f8c98..a36db81 100644
+index 3720fd6..5a0d0a8 100644
--- a/doc/README.txt
+++ b/doc/README.txt
-@@ -35,10 +35,9 @@ Exception are pic device libraries and header files which are derived
+@@ -37,10 +37,9 @@ Exception are pic device libraries and header files which are derived
from Microchip header (.inc) and linker script (.lkr) files. Microchip
requires that "The header files should state that they are only to be
used with authentic Microchip devices" which makes them incompatible
@@ -1276,13 +1293,13 @@ index 88f8c98..a36db81 100644
+and run-time options that enable their use) are omitted in the SDCC
+package distributed with GNU Guix.
- See:
-
+ However: Many think that the Microchip requirement is not legally enforceable,
+ arguing that the header files only contain noncopyrightable facts.
diff --git a/doc/sdccman.lyx b/doc/sdccman.lyx
-index c8f8e73..e4afb0c 100644
+index 9ba31eb..3d69b5a 100644
--- a/doc/sdccman.lyx
+++ b/doc/sdccman.lyx
-@@ -1092,54 +1092,9 @@ A possible exception are pic device libraries and header files which are
+@@ -1093,54 +1093,9 @@ A possible exception are pic device libraries and header files which are
to be used with authentic Microchip devices" which makes them incompatible
with the GPL, if Microchip has any copyright in them (which might depend
on local copyright laws).
@@ -1340,7 +1357,7 @@ index c8f8e73..e4afb0c 100644
\end_layout
\begin_layout Itemize
-@@ -2890,18 +2845,6 @@ include_dir_suffix environment variable, see table below
+@@ -2943,18 +2898,6 @@ include_dir_suffix environment variable, see table below
\end_inset
@@ -1359,7 +1376,7 @@ index c8f8e73..e4afb0c 100644
\begin_inset space ~
\end_inset
-@@ -2914,22 +2857,6 @@ lib_dir_suffix environment variable, see table below
+@@ -2967,22 +2910,6 @@ lib_dir_suffix environment variable, see table below
\end_inset
@@ -1382,7 +1399,7 @@ index c8f8e73..e4afb0c 100644
\begin_inset space ~
\end_inset
-@@ -3428,7 +3355,7 @@ These defaults are:
+@@ -3481,7 +3408,7 @@ These defaults are:
\begin_layout Standard
\align center
\begin_inset Tabular
@@ -1391,7 +1408,7 @@ index c8f8e73..e4afb0c 100644
<features tabularvalignment="middle">
<column alignment="block" valignment="top" width="0in">
<column alignment="block" valignment="top" width="0in">
-@@ -3712,68 +3639,6 @@ sdcc/include
+@@ -3765,68 +3692,6 @@ sdcc/include
include
\end_layout
@@ -1460,7 +1477,7 @@ index c8f8e73..e4afb0c 100644
\end_inset
</cell>
</row>
-@@ -3784,7 +3649,7 @@ lib
+@@ -3837,7 +3702,7 @@ lib
\begin_layout Plain Layout
\emph on
@@ -1469,7 +1486,7 @@ index c8f8e73..e4afb0c 100644
\end_layout
\end_inset
-@@ -3793,7 +3658,7 @@ NON_FREE_LIB_DIR_SUFFIX
+@@ -3846,7 +3711,7 @@ NON_FREE_LIB_DIR_SUFFIX
\begin_inset Text
\begin_layout Plain Layout
@@ -1478,7 +1495,7 @@ index c8f8e73..e4afb0c 100644
\end_layout
\end_inset
-@@ -3802,7 +3667,7 @@ sdcc/non-free/lib
+@@ -3855,7 +3720,7 @@ sdcc/non-free/lib
\begin_inset Text
\begin_layout Plain Layout
@@ -1487,7 +1504,7 @@ index c8f8e73..e4afb0c 100644
\end_layout
\end_inset
-@@ -4201,20 +4066,6 @@ include
+@@ -4254,20 +4119,6 @@ include
\end_inset
@@ -1508,7 +1525,7 @@ index c8f8e73..e4afb0c 100644
\backslash
\begin_inset Newline newline
-@@ -4229,20 +4080,6 @@ lib
+@@ -4282,20 +4133,6 @@ lib
\end_inset
@@ -1529,7 +1546,7 @@ index c8f8e73..e4afb0c 100644
\backslash
\begin_inset Newline newline
-@@ -4423,20 +4260,6 @@ include
+@@ -4476,20 +4313,6 @@ include
\end_inset
@@ -1550,7 +1567,7 @@ index c8f8e73..e4afb0c 100644
\backslash
\begin_inset Newline newline
-@@ -4451,20 +4274,6 @@ lib
+@@ -4504,20 +4327,6 @@ lib
\end_inset
@@ -1571,7 +1588,7 @@ index c8f8e73..e4afb0c 100644
\backslash
\begin_inset Newline newline
-@@ -4561,7 +4370,7 @@ Install paths
+@@ -4614,7 +4423,7 @@ Install paths
\begin_layout Standard
\align center
\begin_inset Tabular
@@ -1580,7 +1597,7 @@ index c8f8e73..e4afb0c 100644
<features tabularvalignment="middle">
<column alignment="left" valignment="top">
<column alignment="left" valignment="top" width="4.5cm">
-@@ -4717,64 +4526,6 @@ include
+@@ -4770,64 +4579,6 @@ include
<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
\begin_inset Text
@@ -1645,7 +1662,7 @@ index c8f8e73..e4afb0c 100644
\begin_layout Plain Layout
Library file**
\end_layout
-@@ -4824,64 +4575,6 @@ sdcc
+@@ -4877,64 +4628,6 @@ sdcc
lib
\end_layout
@@ -1710,7 +1727,7 @@ index c8f8e73..e4afb0c 100644
\end_inset
</cell>
</row>
-@@ -5204,7 +4897,7 @@ $PATH
+@@ -5257,7 +4950,7 @@ $PATH
\begin_layout Standard
\align center
\begin_inset Tabular
@@ -1719,7 +1736,7 @@ index c8f8e73..e4afb0c 100644
<features tabularvalignment="middle">
<column alignment="block" valignment="top" width="0.5cm">
<column alignment="block" valignment="top" width="4.8cm">
-@@ -5482,203 +5175,13 @@ include
+@@ -5535,203 +5228,13 @@ include
</cell>
</row>
<row>
@@ -1924,7 +1941,7 @@ index c8f8e73..e4afb0c 100644
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
-@@ -5694,21 +5197,13 @@ $DATADIR/
+@@ -5747,21 +5250,13 @@ $DATADIR/
\end_inset
@@ -1947,7 +1964,7 @@ index c8f8e73..e4afb0c 100644
\begin_inset Text
\begin_layout Plain Layout
-@@ -5716,7 +5211,7 @@ $INCLUDE_DIR_SUFFIX
+@@ -5769,7 +5264,7 @@ $INCLUDE_DIR_SUFFIX
\begin_inset Newline newline
\end_inset
@@ -1956,7 +1973,7 @@ index c8f8e73..e4afb0c 100644
\end_layout
\end_inset
-@@ -5814,7 +5309,7 @@ model
+@@ -5867,7 +5362,7 @@ model
\begin_layout Standard
\align center
\begin_inset Tabular
@@ -1965,7 +1982,7 @@ index c8f8e73..e4afb0c 100644
<features tabularvalignment="middle">
<column alignment="block" valignment="top" width="0.5cm">
<column alignment="block" valignment="top" width="4.5cm">
-@@ -6094,7 +5589,7 @@ lib
+@@ -6147,7 +5642,7 @@ lib
</cell>
</row>
<row>
@@ -1974,7 +1991,7 @@ index c8f8e73..e4afb0c 100644
\begin_inset Text
\begin_layout Plain Layout
-@@ -6103,7 +5598,7 @@ lib
+@@ -6156,7 +5651,7 @@ lib
\end_inset
</cell>
@@ -1983,7 +2000,7 @@ index c8f8e73..e4afb0c 100644
\begin_inset Text
\begin_layout Plain Layout
-@@ -6134,7 +5629,7 @@ $LIB_DIR_SUFFIX/
+@@ -6187,7 +5682,7 @@ $LIB_DIR_SUFFIX/
\end_inset
</cell>
@@ -1992,7 +2009,7 @@ index c8f8e73..e4afb0c 100644
\begin_inset Text
\begin_layout Plain Layout
-@@ -6149,7 +5644,7 @@ lib/
+@@ -6202,7 +5697,7 @@ lib/
\end_inset
</cell>
@@ -2001,7 +2018,7 @@ index c8f8e73..e4afb0c 100644
\begin_inset Text
\begin_layout Plain Layout
-@@ -6172,308 +5667,6 @@ lib
+@@ -6225,308 +5720,6 @@ lib
<model>
\end_layout
@@ -2310,7 +2327,7 @@ index c8f8e73..e4afb0c 100644
\end_inset
</cell>
</row>
-@@ -8737,14 +7930,6 @@ In <installdir>/share/sdcc/include
+@@ -8801,14 +7994,6 @@ In <installdir>/share/sdcc/include
the include files
\end_layout
@@ -2325,7 +2342,7 @@ index c8f8e73..e4afb0c 100644
\begin_layout Standard
In <installdir>/share/sdcc/lib
\end_layout
-@@ -8753,14 +7938,6 @@ In <installdir>/share/sdcc/lib
+@@ -8817,14 +8002,6 @@ In <installdir>/share/sdcc/lib
the src and target subdirectories with the precompiled relocatables.
\end_layout
@@ -2340,7 +2357,7 @@ index c8f8e73..e4afb0c 100644
\begin_layout Standard
In <installdir>/share/sdcc/doc
\end_layout
-@@ -15274,66 +14451,6 @@ splint
+@@ -15590,66 +14767,6 @@ splint
myprogram.c
\end_layout
@@ -2407,7 +2424,7 @@ index c8f8e73..e4afb0c 100644
\begin_layout Subsection
Linker Options
\begin_inset Index idx
-@@ -44653,66 +43770,9 @@ http://sourceforge.net/projects/gputils
+@@ -45248,66 +44365,9 @@ http://sourceforge.net/projects/gputils
Pic device specific header and c source files are automatically generated
from MPLAB include files, which are published by Microchip with a special
requirement that they are only to be used with authentic Microchip devices.
@@ -2477,7 +2494,7 @@ index c8f8e73..e4afb0c 100644
\begin_inset Newline newline
\end_inset
-@@ -44766,7 +43826,7 @@ Makefile
+@@ -45361,7 +44421,7 @@ Makefile
\begin_inset space ~
\end_inset
@@ -2486,7 +2503,7 @@ index c8f8e73..e4afb0c 100644
\begin_inset Newline newline
\end_inset
-@@ -44860,7 +43920,7 @@ Makefile
+@@ -45455,7 +44515,7 @@ Makefile
\begin_inset space ~
\end_inset
@@ -2495,7 +2512,7 @@ index c8f8e73..e4afb0c 100644
\begin_inset Newline newline
\end_inset
-@@ -45142,47 +44202,6 @@ status collapsed
+@@ -45737,47 +44797,6 @@ status collapsed
\begin_layout Plain Layout
@@ -2543,7 +2560,7 @@ index c8f8e73..e4afb0c 100644
\backslash
/
\end_layout
-@@ -46055,47 +45074,6 @@ status collapsed
+@@ -46650,47 +45669,6 @@ status collapsed
-all-callee-saves
\end_layout
@@ -2591,7 +2608,7 @@ index c8f8e73..e4afb0c 100644
\begin_layout Subsection
Port Specific Options
\begin_inset Index idx
-@@ -47372,188 +46350,6 @@ Linker
+@@ -47967,188 +46945,6 @@ Linker
\end_inset
@@ -2780,7 +2797,7 @@ index c8f8e73..e4afb0c 100644
\end_layout
\begin_layout Subsection
-@@ -48249,66 +47045,9 @@ name "subsec:PIC16_Header-Files-and-Libraries"
+@@ -48844,66 +47640,9 @@ name "subsec:PIC16_Header-Files-and-Libraries"
Pic device specific header and c source files are automatically generated
from MPLAB include files, which are published by Microchip with a special
requirement that they are only to be used with authentic Microchip devices.
@@ -2850,7 +2867,7 @@ index c8f8e73..e4afb0c 100644
\end_layout
\begin_layout Subsection
-@@ -48554,195 +47293,6 @@ vfprintf.c
+@@ -49149,195 +47888,6 @@ vfprintf.c
should also work, but is untested.
\end_layout
@@ -3046,7 +3063,7 @@ index c8f8e73..e4afb0c 100644
\begin_layout Subsection
Memory Models
\end_layout
-@@ -73528,6 +72078,12 @@ This document was initially written by Sandeep Dutta and updated by SDCC
+@@ -74082,6 +72632,12 @@ This document was initially written by Sandeep Dutta and updated by SDCC
developers.
\end_layout
@@ -3060,7 +3077,7 @@ index c8f8e73..e4afb0c 100644
All product names mentioned herein may be trademarks
\begin_inset Index idx
diff --git a/sdcc.spec b/sdcc.spec
-index 3609ffe..4b4a5cb 100644
+index 85ae200..8e0ef4b 100644
--- a/sdcc.spec
+++ b/sdcc.spec
@@ -89,9 +89,7 @@ rm -rf $RPM_BUILD_ROOT
@@ -3073,8 +3090,8 @@ index 3609ffe..4b4a5cb 100644
%files doc
%defattr(-,root,root)
-@@ -100,6 +98,8 @@ rm -rf $RPM_BUILD_ROOT
- %changelog
+@@ -102,6 +100,8 @@ rm -rf $RPM_BUILD_ROOT
+ - version updated to 4.2.0
* Sat Feb 20 2021 - pkk AT spth.de
- version updated to 4.0.0
+* Tue Dec 08 2020 - simon AT simonsouth.net
@@ -3083,7 +3100,7 @@ index 3609ffe..4b4a5cb 100644
- version updated to 4.0.0
* Fri Apr 05 2019 - krauseph AT informatik.uni-freiburg.de
diff --git a/sdcc_vc.h.in b/sdcc_vc.h.in
-index 06d8cca..736c325 100644
+index 8cf401b..19f5113 100644
--- a/sdcc_vc.h.in
+++ b/sdcc_vc.h.in
@@ -23,8 +23,6 @@
@@ -3096,7 +3113,7 @@ index 06d8cca..736c325 100644
#define BIN2DATA_DIR "\\.."
#define PREFIX2BIN_DIR "\\bin"
diff --git a/sdccconf_in.h b/sdccconf_in.h
-index eb6f48b..9f5b003 100644
+index ca8d69f..980af8d 100644
--- a/sdccconf_in.h
+++ b/sdccconf_in.h
@@ -100,12 +100,6 @@
@@ -3112,9 +3129,9 @@ index eb6f48b..9f5b003 100644
/* Define to 1 to disable the AVR port */
#undef OPT_DISABLE_AVR
-@@ -130,9 +124,6 @@
+@@ -133,9 +127,6 @@
/* XXX */
- #undef OPT_DISABLE_MCS51
+ #undef OPT_DISABLE_MOS65C02
-/* XXX */
-#undef OPT_DISABLE_NON_FREE
@@ -3123,10 +3140,10 @@ index eb6f48b..9f5b003 100644
#undef OPT_DISABLE_PACKIHX
diff --git a/src/SDCCglobl.h b/src/SDCCglobl.h
-index 9383f68..c2f0b42 100644
+index b49fa1b..d357169 100644
--- a/src/SDCCglobl.h
+++ b/src/SDCCglobl.h
-@@ -288,7 +288,6 @@ struct options
+@@ -287,7 +287,6 @@ struct options
int stack_size; /* MCS51/DS390 - Tells the linker to allocate this space for stack */
int acall_ajmp; /* MCS51 - Use acall/ajmp instead of lcall/ljmp */
int no_ret_without_call; /* MCS51 - Do not use ret independent of acall/lcall */
@@ -3135,7 +3152,7 @@ index 9383f68..c2f0b42 100644
int xstack_loc; /* initial location of external stack */
int stack_loc; /* initial value of internal stack pointer */
diff --git a/src/SDCCmain.c b/src/SDCCmain.c
-index 2a7a711..f46370f 100644
+index bc1493d..e775988 100644
--- a/src/SDCCmain.c
+++ b/src/SDCCmain.c
@@ -151,7 +151,6 @@ char buffer[PATH_MAX * 2];
@@ -3146,7 +3163,7 @@ index 2a7a711..f46370f 100644
#define OPTION_PEEP_RETURN "--peep-return"
#define OPTION_NO_PEEP_RETURN "--no-peep-return"
#define OPTION_NO_OPTSDCC_IN_ASM "--no-optsdcc-in-asm"
-@@ -207,7 +206,6 @@ static const OPTION optionsTable[] = {
+@@ -209,7 +208,6 @@ static const OPTION optionsTable[] = {
{0, OPTION_STD_SDCC2X, NULL, "Use ISO C2X standard with SDCC extensions"},
{0, OPTION_DOLLARS_IN_IDENT, &options.dollars_in_ident, "Permit '$' as an identifier character"},
{0, OPTION_SIGNED_CHAR, &options.signed_char, "Make \"char\" signed by default"},
@@ -3154,7 +3171,7 @@ index 2a7a711..f46370f 100644
{0, NULL, NULL, "Code generation options"},
{'m', NULL, NULL, "Set the port to use e.g. -mz80."},
-@@ -2113,10 +2111,6 @@ preProcess (char **envp)
+@@ -2132,10 +2130,6 @@ preProcess (char **envp)
else
addSet (&preArgvSet, Safe_strdup ("-D__SDCC_CHAR_UNSIGNED"));
@@ -3165,7 +3182,7 @@ index 2a7a711..f46370f 100644
/* set the macro for large model */
switch (options.model)
{
-@@ -2336,12 +2330,6 @@ setIncludePath (void)
+@@ -2365,12 +2359,6 @@ setIncludePath (void)
* 6. - $SDCC_HOME/PREFIX2DATA_DIR/INCLUDE_DIR_SUFFIX
* 7. - path(argv[0])/BIN2DATA_DIR/INCLUDE_DIR_SUFFIX
* 8. - DATADIR/INCLUDE_DIR_SUFFIX (only on *nix)
@@ -3178,7 +3195,7 @@ index 2a7a711..f46370f 100644
*/
if (!options.nostdinc)
-@@ -2357,17 +2345,6 @@ setIncludePath (void)
+@@ -2386,17 +2374,6 @@ setIncludePath (void)
includeDirsSet = processStrSet (includeDirsSet, NULL, port->target, NULL);
mergeSets (&includeDirsSet, tempSet);
@@ -3196,7 +3213,7 @@ index 2a7a711..f46370f 100644
if ((p = getenv (SDCC_INCLUDE_NAME)) != NULL)
{
struct dbuf_s dbuf;
-@@ -2392,9 +2369,6 @@ setLibPath (void)
+@@ -2421,9 +2398,6 @@ setLibPath (void)
* 3. - $SDCC_HOME/PREFIX2DATA_DIR/LIB_DIR_SUFFIX/<model>
* 4. - path(argv[0])/BIN2DATA_DIR/LIB_DIR_SUFFIX/<model>
* 5. - DATADIR/LIB_DIR_SUFFIX/<model> (only on *nix)
@@ -3206,7 +3223,7 @@ index 2a7a711..f46370f 100644
*/
if (!options.nostdlib)
-@@ -2411,13 +2385,6 @@ setLibPath (void)
+@@ -2440,13 +2414,6 @@ setLibPath (void)
dbuf_makePath (&dbuf, LIB_DIR_SUFFIX, port->general.get_model ? port->general.get_model () : targetname);
libDirsSet = processStrSet (dataDirsSet, NULL, dbuf_c_str (&dbuf), NULL);
@@ -3221,7 +3238,7 @@ index 2a7a711..f46370f 100644
{
addSetHead (&libDirsSet, Safe_strdup (p));
diff --git a/src/pic14/main.c b/src/pic14/main.c
-index ee90470..519ccfc 100644
+index 38d8730..a0eecdb 100644
--- a/src/pic14/main.c
+++ b/src/pic14/main.c
@@ -42,7 +42,6 @@ static OPTION _pic14_poptions[] =
@@ -3232,7 +3249,7 @@ index ee90470..519ccfc 100644
{ 0, NULL, NULL, NULL }
};
-@@ -176,16 +175,6 @@ _pic14_finaliseOptions (void)
+@@ -180,16 +179,6 @@ _pic14_finaliseOptions (void)
addSet (&preArgvSet, Safe_strdup (dbuf_detach_c_str (&dbuf)));
}
@@ -3274,10 +3291,10 @@ index cdfbba0..5877f09 100644
extern pic16_options_t pic16_options;
diff --git a/src/pic16/main.c b/src/pic16/main.c
-index d416642..bfe514d 100644
+index b0e717a..d7616f5 100644
--- a/src/pic16/main.c
+++ b/src/pic16/main.c
-@@ -655,7 +655,6 @@ OPTION pic16_optionsTable[]= {
+@@ -660,7 +660,6 @@ OPTION pic16_optionsTable[]= {
{ 0, "--pcode-verbose", &pic16_pcode_verbose, "dump pcode related info"},
{ 0, "--calltree", &pic16_options.dumpcalltree, "dump call tree in .calltree file"},
{ 0, "--gstack", &pic16_options.gstack, "trace stack pointer push/pop to overflow"},
@@ -3285,7 +3302,7 @@ index d416642..bfe514d 100644
{ 0, NULL, NULL, NULL}
};
-@@ -940,16 +939,6 @@ _pic16_finaliseOptions (void)
+@@ -945,16 +944,6 @@ _pic16_finaliseOptions (void)
addSet (&asmOptionsSet, Safe_strdup ("-D__STACK_MODEL_SMALL"));
}
@@ -3302,7 +3319,7 @@ index d416642..bfe514d 100644
dbuf_destroy (&dbuf);
}
-@@ -979,7 +968,6 @@ _pic16_setDefaultOptions (void)
+@@ -984,7 +973,6 @@ _pic16_setDefaultOptions (void)
pic16_options.ip_stack = 1; /* set to 1 to enable ipop/ipush for stack */
pic16_options.gstack = 0;
pic16_options.debgen = 0;
@@ -3496,10 +3513,10 @@ index 6db417a..4b35225 100755
);
diff --git a/support/scripts/sdcc.nsi b/support/scripts/sdcc.nsi
-index da63063..dae8d8d 100644
+index cebb8a6..778472a 100644
--- a/support/scripts/sdcc.nsi
+++ b/support/scripts/sdcc.nsi
-@@ -479,11 +479,6 @@ ${Section} "SDCC include files" SEC05
+@@ -480,11 +480,6 @@ ${Section} "SDCC include files" SEC05
SetOutPath "$INSTDIR\include"
File "${DEV_ROOT}\include\*.h"
@@ -3511,7 +3528,7 @@ index da63063..dae8d8d 100644
${SectionEnd}
${Section} "SDCC DS390 library" SEC06
-@@ -581,18 +576,12 @@ ${Section} "SDCC PIC16 library" SEC21
+@@ -582,18 +577,12 @@ ${Section} "SDCC PIC16 library" SEC21
SetOutPath "$INSTDIR\lib\pic16"
File "${DEV_ROOT}\lib\pic16\*.o"
File "${DEV_ROOT}\lib\pic16\*.lib"
@@ -3530,7 +3547,7 @@ index da63063..dae8d8d 100644
${SectionEnd}
${Section} "SDCC STM8 small model library" SEC23
-@@ -697,10 +686,6 @@ ${Section} "SDCC library sources" SEC25
+@@ -702,10 +691,6 @@ ${Section} "SDCC library sources" SEC25
File "${DEV_ROOT}\lib\src\pic14\libsdcc\enhanced\*.inc"
# File "${DEV_ROOT}\lib\src\pic14\libsdcc\Makefile"
@@ -3541,7 +3558,7 @@ index da63063..dae8d8d 100644
SetOutPath "$INSTDIR\lib\src\pic14\libm"
# File "${DEV_ROOT}\lib\src\pic14\libm\*.c"
-@@ -752,10 +737,6 @@ ${Section} "SDCC library sources" SEC25
+@@ -757,10 +742,6 @@ ${Section} "SDCC library sources" SEC25
File "${DEV_ROOT}\lib\src\pic16\libc\utils\*.S"
# File "${DEV_ROOT}\lib\src\pic16\libc\utils\Makefile"
@@ -3552,7 +3569,7 @@ index da63063..dae8d8d 100644
SetOutPath "$INSTDIR\lib\src\pic16\libio"
File "${DEV_ROOT}\lib\src\pic16\libio\*.ignore"
# File "${DEV_ROOT}\lib\src\pic16\libio\Makefile"
-@@ -1105,13 +1086,9 @@ ${Section} Uninstall SECUNINSTALL
+@@ -1126,13 +1107,9 @@ ${Section} Uninstall SECUNINSTALL
Delete "$INSTDIR\lib\pic14\*.lib"
@@ -3566,7 +3583,7 @@ index da63063..dae8d8d 100644
Delete "$INSTDIR\lib\hc08\*.lib"
Delete "$INSTDIR\lib\s08\*.lib"
-@@ -1182,9 +1159,7 @@ ${Section} Uninstall SECUNINSTALL
+@@ -1208,9 +1185,7 @@ ${Section} Uninstall SECUNINSTALL
Delete "$INSTDIR\include\pic14\*.h"
Delete "$INSTDIR\include\pic14\*.txt"
Delete "$INSTDIR\include\pic14\*.inc"
@@ -3576,7 +3593,7 @@ index da63063..dae8d8d 100644
Delete "$INSTDIR\include\pic16\*.txt"
Delete "$INSTDIR\include\mcs51\*.h"
Delete "$INSTDIR\include\hc08\*.h"
-@@ -1246,9 +1221,7 @@ ${Section} Uninstall SECUNINSTALL
+@@ -1273,9 +1248,7 @@ ${Section} Uninstall SECUNINSTALL
Delete "$INSTDIR\uninstall.exe"
RMDir /r "$INSTDIR\lib\src\pic14"
@@ -3586,8 +3603,8 @@ index da63063..dae8d8d 100644
RMDir "$INSTDIR\lib\src\small"
RMDir "$INSTDIR\lib\src\medium"
RMDir "$INSTDIR\lib\src\large"
-@@ -1274,12 +1247,9 @@ ${Section} Uninstall SECUNINSTALL
- RMDir "$INSTDIR\lib\src\tlcs90"
+@@ -1303,12 +1276,9 @@ ${Section} Uninstall SECUNINSTALL
+ RMDir "$INSTDIR\lib\src\mos6502"
RMDir "$INSTDIR\lib\src\z80n"
RMDir "$INSTDIR\lib\src"
- RMDir "$INSTDIR\non-free\lib\src"
@@ -3599,8 +3616,8 @@ index da63063..dae8d8d 100644
RMDir "$INSTDIR\lib\z80"
RMDir "$INSTDIR\lib\z180"
RMDir "$INSTDIR\lib\r2k"
-@@ -1305,15 +1275,12 @@ ${Section} Uninstall SECUNINSTALL
- RMDir "$INSTDIR\lib\tlcs90"
+@@ -1336,15 +1306,12 @@ ${Section} Uninstall SECUNINSTALL
+ RMDir "$INSTDIR\lib\mos6502"
RMDir "$INSTDIR\lib\z80n"
RMDir "$INSTDIR\lib"
- RMDir "$INSTDIR\non-free\lib"
@@ -3613,9 +3630,9 @@ index da63063..dae8d8d 100644
RMDir "$INSTDIR\include\asm\pic14"
- RMDir "$INSTDIR\non-free\include\asm\pic14"
RMDir "$INSTDIR\include\asm\mcs51"
- RMDir "$INSTDIR\include\asm\gbz80"
+ RMDir "$INSTDIR\include\asm\sm83"
RMDir "$INSTDIR\include\asm\ds390"
-@@ -1322,17 +1289,12 @@ ${Section} Uninstall SECUNINSTALL
+@@ -1353,17 +1320,12 @@ ${Section} Uninstall SECUNINSTALL
RMDir "$INSTDIR\include\asm"
RMDir "$INSTDIR\include\z180"
RMDir "$INSTDIR\include\pic14"