File sdcc.changes of Package sdcc
-------------------------------------------------------------------
Wed Feb 12 22:35:06 UTC 2025 - Wojciech Kazubski <wk@ire.pw.edu.pl>
- Update to version 4.5.0
* New Feature List:
- Full atomic_flag support for msc51 and ds390 ports
- Experimental f8 port
- ISO C2y case range expressions
- ISO C2y _Generic selection expression with a type operand
- K&R-style function syntax (preliminarily with the semantics
of non-K&R ISO-style functions)
- ISO C23 enums with user-specified underlying type
- struct / union in initializers
- Workaround for VERBOSE=1 option in %make_build
-------------------------------------------------------------------
Sun Jan 19 22:42:22 UTC 2025 - Wojciech Kazubski <wk@ire.pw.edu.pl>
- Update to version 4.4.0
* New Feature List:
- Optimizations for rotations.
- struct / union parameters for hc08, s08 and mos6502.
- Many bug fixes for -ms08 --stack-auto.
- struct / union return support for hc08 and s08 (caller side only).
- Generalized constant propagation.
- New command line option --syntax-only to only parse the input.
- Added C99 header inttypes.h
- Added library functions imaxabs, imaxdiv, llabs, strtoimax, strtoll, strtoull, strtoumax, wcsncmp, wcstoimax, wcstol, wcstoll, wcstoul, wcstoull, wcstoumax
- New r800 port to better support the ASCII Corp R800 and Zilog Z280.
- Changed the default calling convention for r2k, r2ka, r3ka, tlcs90, ez80-z80 from version 0 to 1 (this is an ABI break, and will require changes to user-written asm functions or their declarations).
- Improved optimizations for code speed for stm8, pdk, z80 (and related).
- New mos65c02 port to better support the WDC 65C02.
- Update to version 4.3.0
* New Feature List:
- C2X bit-precise integer types and bit-fields thereof for
(except for pic14, pic16).
- Added all new general mnemonics from ASxxxx 5.40 except for
.bank and enabled for all ports
- sm83: sdasgb now can output cycles in listing and sz80 has
accurate cycles for this processor except for branching
- struct / union return (except for ds390, hc08, s08, mos6502,
pic14, pic16).
- div standard library function family.
- struct / union parameters (except for hc08, s08, mos6502,
pic14, pic16).
- C2X nullptr.
- Many fixes for the type system and _Generic.
- Adopted more of GCC, QuickC and tinycc tests.
- C2X char8_t.
- C2X memalignment.
- C2X unreachable.
- C2X typeof, typeof_unqual.
- C2X auto.
- C2X keywords bool, true, false, alignas, alignof, static_assert.
- C90-C17 function declarators without prototypes.
- C99 variably modified types.
- C2X bit and byte utilities.
- call_once.
- _sdcc_external_startup renamed to __sdcc_external_startup
and supported for all ports.
- makeshift support for long double as another alias for float.
- Add option to build sdcc with non-free components (disabled now)
- Remove some non-working stuff from specfile
- Do not remove non-free stuff before building (breaks the build)
- Remove patch sdcc-pcode.patch (applied upstream)
-------------------------------------------------------------------
Wed Apr 3 13:49:43 UTC 2024 - Wojciech Kazubski <wk@ire.pw.edu.pl>
- Fix build for Tumbleweed (missing amstext.sty file)
-------------------------------------------------------------------
Mon Feb 26 13:08:49 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
- Use %patch -P N instead of deprecated %patchN.
-------------------------------------------------------------------
Fri Feb 16 10:13:41 UTC 2024 - Wojciech Kazubski <wk@ire.pw.edu.pl>
- Use prebuilt sdccman.pdf as a workaround for build fail on Leap 15.x
(pdf manual not building, probably inkscape is too old)
-------------------------------------------------------------------
Thu Sep 29 22:05:23 UTC 2022 - Andrea Manzini <andrea.manzini@suse.com>
- Update to version 4.2.0
* New Feature List:
- C23 memset_explicit
- Support for --oldralloc has been removed from the
z80, z180, tlcs90, z80n, ez80_z80, r2k, r2ka, r3ka backends.
- gbz80 port now uses more efficient block-initalization of
global variables (users of a custom crt0 need to adapt theirs).
- Full support for __z88dk_callee for the
z80, z180, gbz80, tlcs90, z80n, ez80_z80, r2k, r2ka, r3ka, stm8 backends.
- Support for __raisonance, __iar and __cosmic calling conventions for stm8.
- Support for a new __sdcccall(1) calling convention in the stm8 port AS NEW DEFAULT.
- Support for a new __sdcccall(1) calling convention in the gbz80 port AS NEW DEFAULT.
- Support for a new __sdcccall(1) calling convention in the z80, z80n and z180 ports AS NEW DEFAULT.
- Support for a new __sdcccall(1) calling convention in the r2k, r2ka, r3k, tlcs90 and ez80_z80 ports.
- Removed support for --profile for gbz80, z80, z180, tlcs90, z80n, ez80_z80, r2k, r2ka, r3ka backends.
- The z80n port Z80N Core minimum version has been raised from 1.0 to 2.0.
- Improved rematerialization support in the
stm8, gbz80, z80, z180, tlcs90, z80n, ez80_z80, r2k, r2ka, r3ka backends.
- The gbz80 port was renamed to sm83.
- New in-development mos6502 port.
-------------------------------------------------------------------
Thu Apr 28 09:56:56 UTC 2022 - Dominique Leuenberger <dimstar@opensuse.org>
- Adjust rpmlint filter:
+ binaryinfo-readelf-failed.* => readelf-failed.*
+ Filter out ar-failed /usr/share/sdcc/: file format not recognized
+ Drop files-duplicated-waste filter: no duplicate files existing
-------------------------------------------------------------------
Tue May 4 21:41:49 UTC 2021 - Wojciech Kazubski <wk@ire.pw.edu.pl>
- fixed build for Tumbleweed
-------------------------------------------------------------------
Sun Apr 4 22:32:58 UTC 2021 - Wojciech Kazubski <wk@ire.pw.edu.pl>
- Update to version 4.1.0
* New Feature List:
- New z80n port for the Spectrum Next CPU (a Z80 variant).
- Much better register allocation in the gbz80 backend.
- Workarounds for Rabbit wait state bugs in the r2k backend.
- New r2ka port to better support Rabbit 2000A, 2000B, 2000C, 3000.
- Default crt0 and --data-loc for Rabbits suitable for typical
Rabbit hardware configurations, such as the RCMs.
- Many improvements in code generation for z80 and related ports.
- Rabbit register definition headers for Rabbit 2000, 2000A,
2000B, 2000C, 3000, 3000A.
- C23 digit separators.
* Numerous other new features and bug fixes are included as well.
- Patch sdcc-fixupInlineLabel.patch removed (applied upstream)
-------------------------------------------------------------------
Wed Sep 30 10:28:26 UTC 2020 - Reinhard Max <max@suse.com>
- Update to version 4.0.0
* The pdk15 backend now passes the regression tests (both with
and without --stack-auto), and is thus considered stable.
* New in-development pdk13 backend for Padauk µC with 13-bit
wide program memory.
* C2X memccpy(), strdup(), strndup().
* Better tail call optimization.
* Many fixes in the pic14 backend.
* C2X u8 character constants.
* C2X bool, static_assert, alignof, alignas.
* C2X attributes on statements.
* C2X attribute declarations.
* Support for extended ASCII characters in sdas, sdld.
* Compiler support for UCNs and non-ASCII utf8 in identifiers.
- Fix build by adding sdcc-fixupInlineLabel.patch to fix a
potential buffer overflow.
- Add sdcc-pcode.patch to fix a strict aliasing warning and remove
-fno-strict-aliasing from CFLAGS.
- Remove executable bits from source files to make rpmlint happy.
-------------------------------------------------------------------
Mon Nov 18 22:32:42 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Update to version 3.9.0
* Support for struct / union assignment.
* Optimizations in the stm8 backend relevant to soft float increase
Whetstone score by two thirds.
* Improvements in rematerialization in the stm8 backend improve code
generation for struct, union and arrays.
* New stack allocator reduces stack space usage for the stm8, z80, z180,
gbz80, r2k, r3ka, tlcs90 backends.
* New ez80_z80 backend for eZ80 in Z80 mode.
* Removed deprecated sdcclib utility.
* New pdk14 backend for Padauk µC with 14-bit wide program memory.
* New in-development pdk15 backend for Padauk µC with 15-bit wide program
memory.
- Update to version 3.8.0
* Additional general utility function: bsearch().
* Support for rematerialization in the stm8 backend reduces register
pressure and stack usage.
* Merged upstream GNU binutils 2.30
* All Python code is now fully compatible with both Python 2.7 and
Python 3.6, so Python 3 can be used instead of Python 2.
* Regression testing for diagnostics.
* Improved handling of local bool variables in the mcs51 backend
substantially reduces code size.
* Large memory model for stm8 for 24-bit codespace allows using more
than 32KB of Flash for code.
* New optimizations for calls to some standard library function
(printf(), puts(), strcpy()).
* The type of true and false from stdbool.h change from int to bool.
* New C2X mode (--std-c2x, --std-sdcc2x, #pragma std_c2x) adds support
for one-argument static_assert variant.
* Intermingling of declarations and statements (ISO C99).
* Support headers for AX8052 devices.
* Adopted GCC 8.2 regression tests (execute part of the GCC C torture tests)
- Update to version 3.7.0
* Changed putchar() prototype from void putchar(char) to int putchar(int)
to improve standard-compliance and allow error reporting.
* Various speed improvements in stm8 backend - Dhrystone score more than
doubled, resulting in SDCC achieving the highest Dhrystone scores
among STM8 C implementations.
* Various speed improvements for multiplications resulting in SDCC achieving
the highest Coremark scores among STM8 C implementations.
* Declarations in for loops (ISO C99).
* 64-bit integers (long long) for the mcs51 and ds390 backends (now long long
is fully supported in SDCC except for the pic14 and pic16 backends).
* Full _Bool support for mcs51 and ds390 backend (now _Bool is fully
supported in SDCC regardless of backend).
* Additional wide character library functions: mbstowcs() and wcstombs(),
btowc() and wctob(), wcscmp(), wcslen().
* Changed PRNG for rand() from LCG to xorshift to improve speed and quality.
* Support for Small-C calling convention on the callee side (i.e. function
definitions with Small-C calling convention).
* The obsolete macro SDCC (which used to contain the version number encoded
as an integer) has finally been removed (except for mcs51, where it will
survive a little bit longer for SiLabs IDE compability).
* New devices supported by simulator (TLCS-90, and the 517, F380, XC88X,
DS320 mcs51-variants along with dual-dptr and MDU support).
* Timer, UART (incl. interrupt) and I/O support in STM8 simulator.
* Simulator support for banked memory and bit banding.
* Various simulator improvements: Conditional breakpoints, breakpoints by
function name from SDCC debug output, OMF input, VCD output, simulator
interface for simulated program and new operators in expressions.
* Deprecated --nojtbound and the corresponding pragma.
* Faster register allocator reduces compilation time by about 25% (does not
apply to mcs51, ds390 which use a different register allocator).
* Execution count guessing and use of execution count guesses in stm8
register allocation improve optimization for code speed.
* Changed getchar() prototype from char getchar(void) to int getchar(void)
to improve standard-compliance and allow error reporting.
* Type qualifiers in array parameters (ISO C99).
* static in array parameters (ISO C99).
* Improved support for DWARFv2 debug info in ELF output (stm8, hc08, s08).
* Various improvements in z80/z180/gbz80/tlcs90/r2k/r3ka code generation,
in particular for mixed 16-/32-bit code.
* __z88dk_fastcall function pointer support for --reserve-regs-iy.
* tlcs90 is now a fully supported backend, no longer work in progress.
* --data-seg to specify the segment for non-initialized data in the z80,
z180, gbz80, tlcs90, r2k and r3ka backends.
* New methods to obtain tree-decompositions of control-flow graphs improve
compilation time / code-quality trade-off (when SDCC is built with
support for the treedec library).
* Additional general utility functions: qsort(), strtol(), strtoul().
- Rebase 0001-Doc-Disable-fallback-to-dvipdfm-remove-non-pdftex-ta.patch
- Rebase patch sdcc_enable_additional_target_libs.patch
- Use Python 3 for building, remove unused pyton-devel BuildRequires
-------------------------------------------------------------------
Thu Dec 13 17:19:59 UTC 2018 - Michal Suchanek <msuchanek@suse.de>
- Fix Tumbleweed build.
- Instead of including prebuilt MCS51_named.pdf build it during package build.
Besides avoiding the ImageMagick problem with interpreting PS this also
avoids rasterising the image.
-------------------------------------------------------------------
Thu Oct 18 17:04:49 UTC 2018 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Delete PowerPC embedspu script from sdbinutils which conflicts with binutils,
fixes boo#1112433
-------------------------------------------------------------------
Tue Oct 2 21:12:41 UTC 2018 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Add pre-converted MCS51_named.pdf to sources, to avoid the lossy
SVG -> EPS (rasterized) -> PDF conversion of the distributed SVG.
[bsc#1109976]
-------------------------------------------------------------------
Sat Feb 3 02:10:45 UTC 2018 - stefan.bruens@rwth-aachen.de
- Add explicit BuildRequires: for footnote.sty
- Remove handling of obsolete distribution versions
- Cleanup spec, remove code necessary for older sdcc versions
- Drop dvipdfm and latex2html BuildRequires:, these are not really
used
- Add 0001-Doc-Disable-fallback-to-dvipdfm-remove-non-pdftex-ta.patch
* do not build dvi file, but use pdflatex to build references (.aux)
* use PDF version 1.5 instead of 1.3, reduces sdccman.pdf size by 40%
-------------------------------------------------------------------
Thu Feb 2 12:40:27 UTC 2017 - adam.majer@suse.de
- use individual libboost-*-devel packages instead of boost-devel
-------------------------------------------------------------------
Tue Sep 20 19:24:27 UTC 2016 - stefan.bruens@rwth-aachen.de
- Spec file cleanup:
* disable non-free build, instead of deleting build files
* do not install bfd info, which conflicts with binutils package,
and is useless, as sdcc links libbfd statically
* cleanup %doc
-------------------------------------------------------------------
Tue Sep 6 22:17:08 UTC 2016 - wk@ire.pw.edu.pl
- Fixed info file uninstall
-------------------------------------------------------------------
Mon Sep 5 19:49:01 UTC 2016 - wk@ire.pw.edu.pl
- Update to version 3.5.0
* Merged upstream binutils 2.25
* New memory management with lower overhead
* Changed default language dialect to --std-sdcc11
* Diagnostic for missing type specifier: No implicit int outside of C90 mode anymore
* C11 generic selections
* char type is now unsigned by default (old behaviour can be restored using --fsigned-char)
* Character constants are now of type int instead of char.
* ISO C95 and ISO C11 wide character constants
* ISO C95 and ISO C11 wide string literals
* Basic standard library support for wide characters: c16rtomb(), mbrtoc16(), mbsinit(), mbtowc(), mbrlen(), mbrtoc32, c32rtomb(), mbrtowc(), wcrtomb(), mblen(), wctomb()
* Treat all ports the same in the manual (i.e. mcs51-specific stuff is now clearly described as such)
* Reorganized interrupt handling for z80, z180, r2k, r3ka, tlcs90, gbz80 backends
* Workaround for stm8 division hardware bug
* ELF/DWARF support for stm8
* Output symbol table for ELF
* pic16 port now uses standard-compliant crt0iz that initializes static and globals to 0 by default
- Numerous feature requests and bug fixes are included as well.
- Removed patch sdcc_add_ppc64le_suse_support.patch (applied upstream)
- Modified patch sdcc_enable_additional_target_libs.patch
-------------------------------------------------------------------
Tue Aug 16 07:37:46 UTC 2016 - dimstar@opensuse.org
- BuildRequire texlive-xetex-bin in plus in openSUSE Tumbleweed in
order to workaround boo#992360.
-------------------------------------------------------------------
Fri Oct 30 20:01:08 UTC 2015 - tobias.johannes.klausmann@mni.thm.de
- Build additional libraries sdcc can link against
- Add patch sdcc_enable_additional_target_libs.patch
-------------------------------------------------------------------
Tue Aug 25 20:51:34 UTC 2015 - dmitry_r@opensuse.org
- Add _constraints file, 3 Gb of memory are required
-------------------------------------------------------------------
Tue Aug 18 16:03:31 UTC 2015 - normand@linux.vnet.ibm.com
- new patch to build on ppc64le
sdcc_add_ppc64le_suse_support.patch
-------------------------------------------------------------------
Fri Jun 26 05:33:39 UTC 2015 - dmitry_r@opensuse.org
- Update to version 3.5.0
* Changed default language dialect from --std-sdcc89 to --std-sdcc99
* Reorganized and updated manual
* Reduced memory consumption (most noticeable for high --max-allocs-per-node)
* Faster compilation for stm8 (most noticeable for high --max-allocs-per-node)
* atoll() function for conversion of strings to long long
* __z88dk_fastcall and __z88dk_callee calling conventions for more
efficient function calls and better compability with z88dk
* --lospre-unsafe-read renamed to --allow-unsafe-read
- Drop obsolete
* sdcc-remove-strndup.patch
* sdcc-libiberty.patch
-------------------------------------------------------------------
Sun Nov 30 11:21:26 UTC 2014 - wk@ire.pw.edu.pl
- Fixed build for Tumbleweed and Factory by adding patch
sdcc-remove-strndup.patch
- added patch sdcc-libiberty.patch
-------------------------------------------------------------------
Thu Jul 31 14:39:49 UTC 2014 - dmitry_r@opensuse.org
- Change package license to GPL-2.0+ and GPL-3.0+ [bnc#889723]
-------------------------------------------------------------------
Mon Jul 28 17:24:46 UTC 2014 - dmitry_r@opensuse.org
- spec file cleanup
- Remove non-free libraries
- Move libc sources to separate package
-------------------------------------------------------------------
Sun Oct 4 2012 Wojciech Kazubski <wk@ire.pw.edu.pl> -3.2.0-13
- update to 3.2.0
-------------------------------------------------------------------
Mon Sep 3 2012 Wojciech Kazubski <wk@ire.pw.edu.pl>
- update to 3.1.0
-------------------------------------------------------------------
Sun Nov 30 2007 Tuukka Pasanen <rpms@ilmi.fi>
- New version
-------------------------------------------------------------------
Tue Feb 20 2007 Tuukka Pasanen <rpms@ilmi.fi>
- Initial build