Index index by Group index by Distribution index by Vendor index by creation date index by Name Mirrors Help Search

ldc-1.39.0-1.1 RPM for riscv64

From OpenSuSE Ports Tumbleweed for riscv64

Name: ldc Distribution: openSUSE Tumbleweed
Version: 1.39.0 Vendor: openSUSE
Release: 1.1 Build date: Tue Sep 3 15:47:14 2024
Group: Development/Languages/Other Build host: reproducible
Size: 9270550 Source RPM: ldc-1.39.0-1.1.src.rpm
Packager: https://bugs.opensuse.org
Url: https://wiki.dlang.org/LDC
Summary: The LLVM D Compiler
LDC is an LLVM based compiler for the D programming language. It uses the
frontend of the reference compiler (DMD), thereby supporting the same language
features, but profits from LLVM's superior optimizing and code generation
capabilities.

Provides

Requires

License

Artistic-1.0 AND BSD-3-Clause

Changelog

* Tue Sep 03 2024 Guillaume GARDET <guillaume.gardet@opensuse.org>
  - Update to 1.39.0:
  - Drop upstream patch merge in 1.34.0:
    * riscv64-default-target.patch
* Wed Dec 06 2023 Andreas Schwab <schwab@suse.de>
  - riscv64-default-target.patch: Default to rv64gc for hosted riscv64
    target
  - Enable build on riscv64
* Fri Jul 07 2023 Guillaume GARDET <guillaume.gardet@opensuse.org>
  - Update to 1.32.2:
    * Big news
    - New command-line option --fwarn-stack-size=<threshold> with
      LLVM 13+. (#4378)
    - New command-line option --fsplit-stack for incremental stack
      allocations, see https://llvm.org/docs/SegmentedStacks.html. (#4379)
    - New UDA ldc.attributes.noSplitStack disables it on a per-function
      basis. (#4382)
    - New command-line option --indent for the timetrace2txt tool.
      (#4391)
    * Bug fixes
    - Fix potentially huge compile slowdowns with -g and LLVM 15+.
      (#4354, #4393)
    - Treat all LLVM warnings as regular warnings (e.g., errors
      with -w). Requires LLVM 13+. (#4384)
  - Skipped 1.32.1:
    * Big news
    - The prebuilt Linux packages are now generated on a Ubuntu 20.04
      box, so the min required glibc version has been raised from
      2.26 to 2.31. (#4367)
    * Bug fixes
    - Fix empty ldc.gccbuiltins_* modules with LLVM 15+.
      (#4347, #4350)
    - Fix v1.31 regression wrt. potentially wrong constant pointer
      offsets. (#4362, #4365)
    - Windows: Fix v1.32 regression wrt. leaking Throwable.info
      backtraces. (#4369)
    - Fix C assert calls for newlib targets. (#4351)
* Fri Jul 07 2023 Guillaume GARDET <guillaume.gardet@opensuse.org>
  - Do not use %{_includedir}/d to be able to install/use multiple
    D compilers in parallel - boo#1212913
* Fri Apr 21 2023 Dominique Leuenberger <dimstar@opensuse.org>
  - Add specific conflict from runtime-devel to the old/previous
    libdruntime-ldc99. which contained an unversioned file.
* Thu Apr 20 2023 Dominique Leuenberger <dimstar@opensuse.org>
  - Only move bash-completion from /etc to /usr/share if this was not
    properly installed. There was an error that
    bash-completion-devel did not actually contain the .cmake file
    which in turn resulted in this package mis-installing despite the
    correct build deps.
* Tue Apr 11 2023 Guillaume GARDET <guillaume.gardet@opensuse.org>
  - Move %{_libdir}/ldc_rt.dso.o to runtime-devel package
* Thu Apr 06 2023 Guillaume GARDET <guillaume.gardet@opensuse.org>
  - Use llvm15 when available (Tumbleweed + Leap 15.5)
  - Update to 1.32.0:
    * Big news
    - Frontend, druntime and Phobos are at version 2.102.2. (#4323, #4341) (new)
    - LLVM for prebuilt packages bumped to v15.0.7. (#4311)
    - Linker-level dead code elimination is enabled by default for Apple,
      wasm and all ELF targets too now. (#4320)
    - Vector comparisons (==, !=, <, <=, >, >=) now yield a vector mask.
      Identity comparisons (is, !is) still yield a scalar bool. (3a59ee8)
    - New timetrace2txt tool for easier inspection of --ftime-trace
      output. (#4335) (new)
    - --ftime-trace now also traces CTFE execution: the start
      expression of CTFE and function calls during CTFE. (#4339) (new)
    * Platform support
    - Supports LLVM 9.0 - 15.0.
    - Now supports -mabi for RISC-V targets. (#4322)
    * Bug fixes
    - GC closures including variables with alignment > 16 bytes are
      now properly aligned. (ef8ba48)
    - Fix regression with LLVM 13+: some errors in inline assembly
      don't stop compilation. (#4293, #4331)
  - Changelog from skipped 1.31.0:
    * Big news
    - Frontend, druntime and Phobos are at version 2.101.2. (#4141, #4279)
    - Bit fields support. (#4015)
    - macOS on Apple M1: linking with -g is working again without
      unaligned pointer warnings/errors. This fixes file:line debug
      information in exception backtraces (requiring atos, a macOS
      development tool installed with Xcode), without the need to set
      MACOSX_DEPLOYMENT_TARGET=11 and using a modified LLVM. (#4291)
    - Preliminary support for LLVM 15, incl. adding support for the
      'new' pass manager (-passmanager) and opaque IR pointers
      (-opaque-pointers). (way too many PRs to list!)
    - New command-line option -fno-delete-null-pointer-checks,
      mimicking the same option of GCC and Clang. (#4297)
    - New UDA ldc.attributes.callingConvention("..."), which
      overrides the default calling convention. For expert use only! (#4299)
    - New command-line option -fno-discard-value-names to keep
      value names in LLVM IR. (#4012)
    - dcompute: Support for OpenCL image I/O. (#3835)
    * Platform support
    - Initial ABI support for 64-bit RISC-V. (#4007)
    * Bug fixes
    - dcompute: Fix v1.29 regression when trying to use
      intrinsics. (#4266, #4267)
    - Fix 64-bit symbol offsets. (#4264, #4283)
    - Add missing 32-bit LTO versions of druntime & Phobos to
      Linux multilib package. (#4234, #4235)
    - Fix compiler crash. (#4130, #4135)
    * Internals
    - The former druntime and dmd-testsuite git submodules are now
      part of the LDC repo directly, leaving Phobos as single
      remaining submodule. We are now using a subset of the DMD
      repo (which includes druntime since v2.101), rewritten via
      git filter-repo and exposed as dmd-rewrite-* branches/tags
      in the LDC repo, to merge newer frontend+druntime+tests from
      upstream DMD. The tests/d2/dmd-testsuite dir was moved to
      tests/dmd. (#4274, #4276)
  - Changelog from skipped 1.30.0:
    * Big news
    - Frontend, druntime and Phobos are at version 2.100.1.
      (#3970, #4008, #4009) (new)
    - LLVM for prebuilt packages bumped to v14.0.3.
      (#3952, #3979)
    - All LLVM targets are enabled now (=> more targets for
      cross-compilation).
    - For the Mac package, the minimum supported macOS version
      has been raised to v10.12.
    - The minimum D version for bootstrapping has been raised to
      v2.079 (for GDC: v9.4), in line with DMD. (#3956)
    - The minimum LLVM version has been raised to v9.0. (#3960)
    - New LeakSanitizer support via -fsanitize=leak (not (yet?)
      supported on Windows). (#4005) (new)
    - New prebuilt universal macOS package, runnable on both
      x86_64 and arm64, and enabling x86_64/arm64 macOS/iOS
      cross-compilation targets out of the box (-mtriple={x86_64,arm64}-apple-{macos,ios}).
      The x86_64 package doesn't bundle any arm64 libs anymore;
      the arm64 package newly bundles iOS libs (arm64). (#3958)
    - Avoid an external x86_64-only dub, use the bundled universal
      dub executable instead.
    * Platform support
    - Supports LLVM 9.0 - 14.0.
    * Bug fixes
    - Enable output of variable names in ASan and MSan error
      reporting. (#4004) (new)
    - Report unexpected type repaints as fatal ICEs instead of
      crashing. (#3990, #3991) (new)
    * Internals
    - Main CI was moved from Azure Pipelines to GitHub Actions.
      Any fork on GitHub can trivially reuse the fully automated
      prebuilt packages generation & upload to a GitHub release. (#3978)
* Fri Nov 25 2022 Max Lin <mlin@suse.com>
  - Force to use llvm14 in Leap 15.5 since the default llvm version is
    now llvm15
* Mon Nov 21 2022 Dominique Leuenberger <dimstar@opensuse.org>
  - Do not have the main package recommend the bash-completion
    sub-package, but rather have the subpackage supplement the
    combination of ldc and bash-completion.
* Fri Oct 07 2022 Guillaume GARDET <guillaume.gardet@opensuse.org>
  - Build against llvm14 for Tumbleweed since llvm15 is not
    supported yet
* Tue May 10 2022 Fabian Vogt <fvogt@suse.com>
  - Use gcc-d (gdc) for bootstrapping as recommended by upstream.
    Only gdc is needed for bootstrapping instead of various older ldc
    versions, which also allows to use newer versions of LLVM
    (boo#1199054). On top of that, this allows ldc to use the shared
    runtime built with itself.
  - Drop use of binutils-gold, 1.29.0 does not use it by default anymore
  - Mention %so_ver in %files
* Tue Apr 12 2022 Chris Josten <chris+suse@netsoj.nl>
  - Update to 1.29.0:
    * Frontend, druntime and Phobos are at version 2.099.1
    * Support for LLVM 13 and LLVM 14
    * New @hidden UDA (as counterpart of export).
    * Support 'raw mangles' via leading \1 in pragma(mangle) strings,
      e.g., to access magic linker symbols on Mac.
    * New @noSanitize UDA to selectively disable sanitizer
      instrumentation of functions.
    * WebAssembly: Larger default stack size (1 MB) and protection
      against stack overflow overwriting global memory.
    * LDC doesn't default to the ld.gold linker anymore. The
      combination of LLVM 13+ and older gold linkers can apparently
      cause problems. We recommend using LLD, e.g., via -linker=lld
      or by setting your default /usr/bin/ld symlink; it's
      significantly faster too.
    * -linkonce-templates is less aggressive by default now and
      IMHO production-ready.
    * When linking manually (not via LDC) against shared druntime, it
      is now required to link the bundled lib/ldc_rt.dso.o[bj] object
      file into each binary. It replaces the previously
      Windows-specific dso_windows.obj.
    * Basic compiler support for Newlib targets, i.e., triples
      like arm-none-newlibeabi.
    * dcompute: Add support for OpenCL image I/O.
    * Revamped and improved -ftime-trace implementation for compiler
      profiling/tracing, now excluding LLVM-internal traces, adding
      frontend memory tracing, source file location infos etc
    * Implement core.atomic.pause() for some architectures.
    * Bug fixes:
    * Linux: Make LTO work with LLD.
    * Capture NRVO variable by ref for stack closures.
    * -ftime-trace: JSON-escape filenames.
    * RISC-V: Use 128-bit quadruple real.
    * Linux x86/x64: Fix TLS range with static druntime and bfd/lld
      linkers.
    * Support rdtscp in DMD-style inline assembly.
    * Fix dynamic casts across binary boundaries (DLLs etc.).
    * Don't silently ignore invalid external tool specifications.
    * LLVM v11.1: Add missing PGO ldc-profdata tool.
    * ICE for 64-bit targets with 32-bit pointer size.
    * Breaking ABI changes:
    * extern(D): formal parameters of non-variadic functions aren't
      reversed anymore, in line with the spec.
* Mon May 17 2021 Ferdinand Thiessen <rpm@fthiessen.de>
  - Update to 1.26.0:
    * Frontend, druntime and Phobos are at version 2.096.1+
      incl. new ldmd2 command-line option -gdwarf=<version>
    * Supports LLVM 6.0 - 12.0
    * LDC invocations can now be nicely profiled via --ftime-trace.
    * Struct TypeInfos are emitted into referencing object files only,
      and special TypeInfo member functions into the owning object
      file only.
    * Bug fixes:
    * TypeInfo for interface gives invalid string for name.
    * dcompute: Don’t reject CUDA versions 7.x - 8.0.0.
    * Don’t enforce the frame pointer for functions with GCC-style
      inline asm.
    * Fix some cases of insufficient alignment for arguments and
      parameters.
    * Fix a few issues with LLVM 12.
    * Add source location information for TypeInfo diagnostics
      with -betterC.
    * Keep init symbols of built-in TypeInfo classes mutable just
      like any other TypeInfo, so that e.g. synchronized() can be
      used on the implicit monitor.
    * Predefine version FreeStanding when targeting bare-metal.
    * druntime: Define rt.aaA.AA as naked pointer, no struct wrapper
    * Misc. fixes and improvements for the CMake scripts,
      incl. new defaults for LDC_INSTALL_{LTOPLUGIN,LLVM_RUNTIME_LIBS}
    * -cleanup-obj: Put object files into unique temporary directory
      by default.
    * druntime: Add missing core.atomic.atomicFetch{Add,Sub}.
    * Fix regression wrt. non-deleted temporary -run executable.
    * Breaking ABI changes:
    * extern(D): Pass non-PODs by ref to temporary.
    * -linkonce-templates comes with a new experimental template
      emission scheme and is now suited for projects consisting of
      multiple object files too.
  - 1.13+ is now required for 1.26+ on 32bit

Files

/etc/ldc2.conf
/usr/bin/ldc-build-plugin
/usr/bin/ldc-build-runtime
/usr/bin/ldc-profdata
/usr/bin/ldc-profgen
/usr/bin/ldc-prune-cache
/usr/bin/ldc2
/usr/bin/ldmd2
/usr/bin/timetrace2txt
/usr/share/doc/packages/ldc
/usr/share/doc/packages/ldc/README.md
/usr/share/licenses/ldc
/usr/share/licenses/ldc/LICENSE
/usr/share/man/man1/ldc2.1.gz
/usr/share/man/man1/ldmd2.1.gz


Generated by rpm2html 1.8.1

Fabrice Bellet, Wed Nov 13 00:41:02 2024