Thread overview
minit and DMD's makefiles
Feb 15, 2013
Nick Sabalausky
Feb 15, 2013
Andrej Mitrovic
Feb 16, 2013
Walter Bright
Feb 16, 2013
Andrej Mitrovic
Feb 16, 2013
Walter Bright
Feb 16, 2013
Rainer Schuetze
Feb 16, 2013
Walter Bright
Feb 16, 2013
Walter Bright
Feb 16, 2013
Andrej Mitrovic
Feb 16, 2013
Rainer Schuetze
February 15, 2013
I'm finding that much of the time I try to compile DMD from Git HEAD, the timestamp on 'src/rt/minit.obj' has become out of date with the timestamp on 'src/rt/minit.asm', causing the makefile to try to rebuild it, and bail with "masm not found" until I update the timestamp on masm.obj. Anyone else finding this a common thing, too?

The thing is, according to earlier discussions (about a years or two ago, IIRC), minit.asm is something that basically never changes and shouldn't change. And indeed, according to Git, aside from the copyright/license comments, it hasn't changed since *at least* as far back as 2009.

So I'm thinking: Perhaps the makefiles should be adjusted so that minit.(obj|asm) are ignored unless a special extra build target is specified? Or is there a better way?

February 15, 2013
On 2/15/13, Nick Sabalausky <SeeWebsiteToContactMe@semitwist.com> wrote:
> Anyone else finding this a common thing, too?

Yes. My personal fix is to create an empty "masm386.bat" file and put it in my %PATH%. The makefile happily invokes it even though it does nothing, and the build can continue.
February 16, 2013
On 2/15/2013 2:39 PM, Andrej Mitrovic wrote:
> On 2/15/13, Nick Sabalausky <SeeWebsiteToContactMe@semitwist.com> wrote:
>> Anyone else finding this a common thing, too?
>
> Yes. My personal fix is to create an empty "masm386.bat" file and put
> it in my %PATH%. The makefile happily invokes it even though it does
> nothing, and the build can continue.
>

LOL. I just do:

   touch minit.obj

as required.
February 16, 2013
On 2/16/13, Walter Bright <newshound2@digitalmars.com> wrote:
> LOL. I just do:
>
>     touch minit.obj
>
> as required.

Mine's more automated. :p

Btw, have you had the chance to look at https://github.com/DigitalMars/optlink/pull/1 ?
February 16, 2013
On 2/15/2013 6:19 PM, Andrej Mitrovic wrote:
> On 2/16/13, Walter Bright <newshound2@digitalmars.com> wrote:
>> LOL. I just do:
>>
>>      touch minit.obj
>>
>> as required.
>
> Mine's more automated. :p
>
> Btw, have you had the chance to look at
> https://github.com/DigitalMars/optlink/pull/1 ?
>

I looked at it, but I haven't gone through it. Thanks for doing it! What's standing in the way of you building it?
February 16, 2013

On 16.02.2013 05:07, Walter Bright wrote:
> On 2/15/2013 6:19 PM, Andrej Mitrovic wrote:
>> On 2/16/13, Walter Bright <newshound2@digitalmars.com> wrote:
>>> LOL. I just do:
>>>
>>>      touch minit.obj
>>>
>>> as required.
>>
>> Mine's more automated. :p
>>
>> Btw, have you had the chance to look at
>> https://github.com/DigitalMars/optlink/pull/1 ?
>>
>
> I looked at it, but I haven't gone through it. Thanks for doing it!
> What's standing in the way of you building it?

I actually succeded in building optlink, but there are a few things that had to be changed:

- masm (v9 or v10) complained about a number of "mov AL,errorCode" which had to be changed to AX (I guess it would not assume an external to fit into a byte)

- I had to add a number of ridiculous "BYTE PTR" modifiers

- The SLR tools are 16-bit executables so I installed a VM running XP just to find out that they don't work there too. Instead I changed the makefiles to use lib from the dmd distrubution rather than optlib.

What version of masm are you using?

Shall I make it a pull request?
February 16, 2013
On 2/15/2013 11:59 PM, Rainer Schuetze wrote:
>
>
> On 16.02.2013 05:07, Walter Bright wrote:
>> On 2/15/2013 6:19 PM, Andrej Mitrovic wrote:
>>> On 2/16/13, Walter Bright <newshound2@digitalmars.com> wrote:
>>>> LOL. I just do:
>>>>
>>>>      touch minit.obj
>>>>
>>>> as required.
>>>
>>> Mine's more automated. :p
>>>
>>> Btw, have you had the chance to look at
>>> https://github.com/DigitalMars/optlink/pull/1 ?
>>>
>>
>> I looked at it, but I haven't gone through it. Thanks for doing it!
>> What's standing in the way of you building it?
>
> I actually succeded in building optlink, but there are a few things that had to
> be changed:
>
> - masm (v9 or v10) complained about a number of "mov AL,errorCode" which had to
> be changed to AX (I guess it would not assume an external to fit into a byte)
>
> - I had to add a number of ridiculous "BYTE PTR" modifiers
>
> - The SLR tools are 16-bit executables so I installed a VM running XP just to
> find out that they don't work there too. Instead I changed the makefiles to use
> lib from the dmd distrubution rather than optlib.
>
> What version of masm are you using?

5.10 from 1988 :-)

Masm constantly changed the syntax it would accept.


> Shall I make it a pull request?

You can, but I don't have those masm's. Or maybe I do in VS10, I just never looked.
February 16, 2013
On 2/16/2013 12:28 AM, Walter Bright wrote:
> You can, but I don't have those masm's. Or maybe I do in VS10, I just never looked.

Ok, I looked, and I have an ml.exe that says it's Macro Assembler Version 10.00.30319.01
February 16, 2013
On 2/16/13, Rainer Schuetze <r.sagitario@gmx.de> wrote:
> I actually succeded in building optlink

That's great to hear. If you could make a pull to update to the latest MASM compiler it would be great.
February 16, 2013

On 16.02.2013 15:49, Andrej Mitrovic wrote:
> On 2/16/13, Rainer Schuetze <r.sagitario@gmx.de> wrote:
>> I actually succeded in building optlink
>
> That's great to hear. If you could make a pull to update to the latest
> MASM compiler it would be great.
>

https://github.com/DigitalMars/optlink/pull/2