[dmd-internals] dmd commit, revision 663

Brad Roberts braddr at puremagic.com
Tue Sep 7 01:20:17 PDT 2010


On 9/7/2010 1:02 AM, Don Clugston wrote:
> On 7 September 2010 09:03, Brad Roberts <braddr at puremagic.com> wrote:
>> On 9/6/2010 11:25 PM, dsource.org wrote:
>>> dmd commit, revision 663
>>>
>>>
>>> user: braddr
>>>
>>> msg:
>>> Changes to run on win32 under cygwin.
>>>
>>> http://www.dsource.org/projects/dmd/changeset/663
>>>
>>
>> The test suite that is.. not the compiler, though that'd be a rather interesting
>> project all by itself. :)
>>
>> So far, I've only tested the quick version on win32.  The time it takes to run
>> just that subset under windows/cygwin is embarassingly slow (3 minutes on linux
>> vs 18 minutes on windows -- not exactly the same hardware, but close enough).
>> I've been focused on 'get it runnable' and have deferred the speed issues.  But
>> 18 minutes is unacceptably slow, imho.  I don't want to think about how long
>> it'd take to run every argument combination.
>>
>> My plan at this point is to replace the makefile+do_test.sh with a c++ or d
>> executable.  I'm tempted to use D, but that introduces a bootstrapping concern
>> as well as a reliability concern.
> 
> I think we should be dogfooding as much as we can. Also, we could do
> some more interesting things with a D test program.

I agree, but I still worry about using a D app when the compiler itself should
be suspect at that stage of life.

>> I've enabled the dmd tests in the win32 auto-tester, so those results will start
>> showing up hourly now too.
> 
> I get this:
> 
> Running runnable tests
> gnumake[1]: *** No rule to make target `test_results/runnable/A16.d.out', needed
>  by `run_runnable_tests'.  Stop.
> gnumake: *** [start_runnable_tests] Error 2
> 
> (gnumake is just cygwin make, renamed). Any ideas?

I remember seeing that early on in my development.  I _think_ it's because it's
not finding the dmd executable.  Try this debugging step.  In the Makefile,
after the block of code doing OS detection, right after the export OS line, add
this:

$(error os: $(OS))

I suspect it's detecting the OS badly and setting DMD to ../src/dmd which
doesn't exist.

Thanks,
Brad


More information about the dmd-internals mailing list