CyberShadow / Digger

A tool to build D and bisect old D versions
Other
57 stars 9 forks source link

Build 2.068+ without binary downloads #17

Closed mihails-strasuns closed 9 years ago

mihails-strasuns commented 9 years ago

Curently Digger tries to download binary 2.066.1 release from http://downloads.dlang.org/releases/2.x/2.066.1/dmd.2.066.1.zip to build DMD version that requires host D compiler. It is preferrable to have an option to either build it locally or use a system-wide installation.

CyberShadow commented 9 years ago

It is preferrable to have an option to either build it locally

At some point, building DMD will require a compiler newer than 2.067. Should Digger compile DMD three times in that case?

or use a system-wide installation.

This risks subtly wrong builds if e.g. the wrong version is installed. If Digger is to achieve its goal of completely isolated and reproducible builds, it needs control over all dependencies.

FWIW, the download will not occur if the ZIP file is placed in the /dl/ directory.

mihails-strasuns commented 9 years ago

Should Digger compile DMD three times in that case?

As an option, yes. Automating bootstrapping feels to me one of major motivating points for usage of tools like Digger.

This risks subtly wrong builds if e.g. the wrong version is installed.

What about optionally defining it during compile-time? The thing is, I don't like to package things that silently download external binaries :) So some way to say "if you need DMD 2.067.0, just use system package" is very tempting path because I will maintain both in a lockstep. I am considering applying such distro-specific patch locally but wanted to hear your opinion first.

CyberShadow commented 9 years ago

cf1ae944c1ff82ddcc8c5adf35f9e7140231ea81 adds --bootstrap

mihails-strasuns commented 9 years ago

Awesome, thanks! Is it included in latest tagged release already?

CyberShadow commented 9 years ago

No, it will be part of the next release.

On Wed, May 13, 2015 at 10:02 AM, Михаил Страшун notifications@github.com wrote:

Awesome, thanks! Is it included in latest tagged release already?

— Reply to this email directly or view it on GitHub https://github.com/CyberShadow/Digger/issues/17#issuecomment-101541344.

mihails-strasuns commented 9 years ago

Will make an Arch Linux package as soon as it is out in that case.

CyberShadow commented 9 years ago

Uploaded 2.2 beta. Will publish 2.2 in a week barring any issues.

CyberShadow commented 9 years ago

https://github.com/CyberShadow/Digger/releases/tag/2.2