Giter Club home page Giter Club logo

dlang-nix's People

Contributors

artturin avatar beardhatcode avatar dependabot[bot] avatar dukc avatar mindavi avatar opna2608 avatar petarkirov avatar symphorien avatar tomfitzhenry avatar trofi avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

dukc

dlang-nix's Issues

Instructions needed.

There should be an instruction file for the user to build the derivations here. It should specify both how to simply build an already fetched version of a single package (copying what readme.md in OldDDerivations says probably does pretty good job) and how to run the prefetcher scripts to generate the version-specific hash files (once #9 is in).

dmd 2.102.2 doesn't compile on macos

See: https://github.com/PetarKirov/dlang-nix/actions/runs/6291202903/job/17079346714

During the checkPhase of dmd, the following two test cases fail to link on macOS:

dmd>  ... runnable/objc_class.d          -L-framework -LFoundation  -fPIC (-inline -release -g -O)
dmd> ==============================
dmd> Test 'runnable/objc_class.d' failed. The logged output:
dmd> clang -m64 -c runnable/extra-files/objc_class.m -o test_results/runnable/objc_class.m.o
dmd> /private/tmp/nix-build-dmd-2.102.2.drv-0/dmd/generated/osx/release/64/dmd -conf= -m64 -Irunnable -L-framework -LFoundation  -fPIC  -odtest_results/runnable -oftest_results/runnable/objc_class_0  runnable/objc_class.d test_results/runnable/objc_class.m.o
dmd> Undefined symbols for architecture x86_64:
dmd>   "_objc_alloc_init", referenced from:
dmd>       _callFooInstanceMethod in objc_class.m.o
dmd> ld: symbol(s) not found for architecture x86_64
dmd> clang-11: error: linker command failed with exit code 1 (use -v to see invocation)
dmd> Error: linker exited with status 1
dmd> ==============================
dmd> Test 'runnable/objc_class.d' failed: Expected rc == 0, but exited with rc == 1
dmd> >>> TARGET FAILED: runnable/objc_class.d
dmd>  ... runnable/objc_self_test.d      -L-framework -LFoundation  -fPIC (-inline -release -g -O)
dmd> ==============================
dmd> Test 'runnable/objc_self_test.d' failed. The logged output:
dmd> clang -m64 -c runnable/extra-files/objc_self_test.m -o test_results/runnable/objc_self_test.m.o
dmd> /private/tmp/nix-build-dmd-2.102.2.drv-0/dmd/generated/osx/release/64/dmd -conf= -m64 -Irunnable -L-framework -LFoundation  -fPIC  -odtest_results/runnable -oftest_results/runnable/objc_self_test_0  runnable/objc_self_test.d test_results/runnable/objc_self_test.m.o
dmd> Undefined symbols for architecture x86_64:
dmd>   "_objc_alloc_init", referenced from:
dmd>       _getValue in objc_self_test.m.o
dmd> ld: symbol(s) not found for architecture x86_64
dmd> clang-11: error: linker command failed with exit code 1 (use -v to see invocation)
dmd> Error: linker exited with status 1
dmd> ==============================
dmd> Test 'runnable/objc_self_test.d' failed: Expected rc == 0, but exited with rc == 1
dmd> >>> TARGET FAILED: runnable/objc_self_test.d

Building DMD with LDC

It is claimed that DMD, despite being a fast compiler already, is even faster when compiled with LDC. We would do well to take advantage of this, especially since it will presumably make running the tests faster.

Resynchronise `pkgs/dmd` with Nixpkgs dmd.

An year ago or so, the generic.nix and binary.nix in OldDDerivations were basically the same as in Nixpkgs. It was easy to upstream and downstream any improvements, Nixpkgs only lacking the version-specific hash files.

If possible, I would like to reintroduce this synergy. Obviously this does depend on reaching agreement with other Nixpkgs maintainers (I'm one of the dmd maintainers there though so I should have some power). However, I think we should first get DMD versions from 2.084.1 (oldest in OldDDerivations) to the latest stable working first, otherwise people in Nixpkgs don't have much reason to accept any changes from here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.