On Sunday, 11 August 2024 at 11:08:24 UTC, Denis Feklushkin wrote:
Similar to how people can avoid explicitly linking GNU's libstdc++ / LLVM's libc++ by using `c++` instead of `cc` as linker driver, thereby not having to know which implementation of the C++ std library to choose for the particular platform.

Maybe in D case it will be right choice to respect --defaultlib= setting during static linking? So if anyone wants to link static library without stdlibs then just can leave it empty. In other cases druntime and phobos will be linked into static library?

This is NOT static **linking**, what you are asking for is merging the D-default static libraries into a generated static lib, to make it 'standalone' and thus simplify linking D parts into another project. Merging druntime and Phobos into a static lib is an extremely exotic case, analogous to someone wanting to merge a static libstdc++.a into their static C++ lib. So I don't see a good reason to support this use case by the compiler directly.

What you could e.g. do with a dedicated ldc2.conf is specifying the paths to druntime and Phobos as regular default switches. Then they'll be merged into all static libraries that you create with that config file. Compilations are unaffected. [I guess linking would still work, but note that even with `-defaultlib=`, druntime and Phobos would be in every generated static lib *and* additionally in the linker cmdline.]
  • Build fully stat... Denis Feklushkin via Digitalmars-d-learn
    • Re: Build f... Alex Bryan via Digitalmars-d-learn
      • Re: Bui... ryuukk_ via Digitalmars-d-learn
      • Re: Bui... Denis Feklushkin via Digitalmars-d-learn
        • Re:... ryuukk_ via Digitalmars-d-learn
          • ... Denis Feklushkin via Digitalmars-d-learn
    • Re: Build f... kinke via Digitalmars-d-learn
      • Re: Bui... Denis Feklushkin via Digitalmars-d-learn
        • Re:... kinke via Digitalmars-d-learn
          • ... Denis Feklushkin via Digitalmars-d-learn
            • ... kinke via Digitalmars-d-learn
              • ... Richard (Rikki) Andrew Cattermole via Digitalmars-d-learn
                • ... Denis Feklushkin via Digitalmars-d-learn
                • ... Richard (Rikki) Andrew Cattermole via Digitalmars-d-learn

Reply via email to