D - -o doesn't work properly

"Matthew Wilson" <dmd synesis.com.au> writes:
I've just upgraded from v0.62 to the latest, in the hope that -o would have
been extended. What I was after was a way to specify the output filename of
a compile-only, in other words rather than dmd BLAH.D always producing
BLAH.OBJ I wanted it to produce BLAH.DBJ. That way I could keep debug and
release object files in the same directories, which meant that I could take
advantage of suffix rules in my makefile, which meant a lot less timing (and
a simpler makefile generator script).

When I typed dmd on the new version I was very excited to see

"  -oobjdir       write object files to directory objdir
-o filename    name output file
"

so typed dmd BLAH.D -o BLAH.DBJ (<= note the space between -o and BLAH.DBJ)

only to be told that it could not create BLAH.DBJ\BLAH.OBJ.

Bah!

Any chance of this being fixed to work in the way I had intended? (Or have I
missed something important ... ?)

Matthew

Jun 27 2003
"Walter" <walter digitalmars.com> writes:
Why not just skip the space and write -oblah.dbj?

"Matthew Wilson" <dmd synesis.com.au> wrote in message
news:bdjagq$3p$1 digitaldaemon.com...
I've just upgraded from v0.62 to the latest, in the hope that -o would

been extended. What I was after was a way to specify the output filename

a compile-only, in other words rather than dmd BLAH.D always producing
BLAH.OBJ I wanted it to produce BLAH.DBJ. That way I could keep debug and
release object files in the same directories, which meant that I could

advantage of suffix rules in my makefile, which meant a lot less timing

a simpler makefile generator script).

When I typed dmd on the new version I was very excited to see

"  -oobjdir       write object files to directory objdir
-o filename    name output file
"

so typed dmd BLAH.D -o BLAH.DBJ (<= note the space between -o and

only to be told that it could not create BLAH.DBJ\BLAH.OBJ.

Bah!

Any chance of this being fixed to work in the way I had intended? (Or have

missed something important ... ?)

Matthew


Jun 30 2003
"Matthew Wilson" <matthew stlsoft.org> writes:
I think I tried that, and it failed. I'll have to check again.

"Walter" <walter digitalmars.com> wrote in message
news:bdqimr$1dq7$1 digitaldaemon.com...
Why not just skip the space and write -oblah.dbj?

"Matthew Wilson" <dmd synesis.com.au> wrote in message
news:bdjagq$3p$1 digitaldaemon.com...
I've just upgraded from v0.62 to the latest, in the hope that -o would

been extended. What I was after was a way to specify the output filename

a compile-only, in other words rather than dmd BLAH.D always producing
BLAH.OBJ I wanted it to produce BLAH.DBJ. That way I could keep debug

release object files in the same directories, which meant that I could

advantage of suffix rules in my makefile, which meant a lot less timing

a simpler makefile generator script).

When I typed dmd on the new version I was very excited to see

"  -oobjdir       write object files to directory objdir
-o filename    name output file
"

so typed dmd BLAH.D -o BLAH.DBJ (<= note the space between -o and

only to be told that it could not create BLAH.DBJ\BLAH.OBJ.

Bah!

Any chance of this being fixed to work in the way I had intended? (Or

I
missed something important ... ?)

Matthew


Jul 08 2003
"Matthew Wilson" <matthew stlsoft.org> writes:
Doesn't work. Consider the following

# Without space

H:\SynSoft\D\synsoft\text>dmd -c -otoken.dbj token.d
Error: Error writing file 'token.dbj\token.obj'

# With space
H:\SynSoft\D\synsoft\text>dmd -c -o token.dbj token.d
Error: Error writing file 'token.dbj\token.obj'

Both with DMD v0.67

"Walter" <walter digitalmars.com> wrote in message
news:bdqimr$1dq7$1 digitaldaemon.com...
Why not just skip the space and write -oblah.dbj?

"Matthew Wilson" <dmd synesis.com.au> wrote in message
news:bdjagq$3p$1 digitaldaemon.com...
I've just upgraded from v0.62 to the latest, in the hope that -o would

been extended. What I was after was a way to specify the output filename

a compile-only, in other words rather than dmd BLAH.D always producing
BLAH.OBJ I wanted it to produce BLAH.DBJ. That way I could keep debug

release object files in the same directories, which meant that I could

advantage of suffix rules in my makefile, which meant a lot less timing

a simpler makefile generator script).

When I typed dmd on the new version I was very excited to see

"  -oobjdir       write object files to directory objdir
-o filename    name output file
"

so typed dmd BLAH.D -o BLAH.DBJ (<= note the space between -o and

only to be told that it could not create BLAH.DBJ\BLAH.OBJ.

Bah!

Any chance of this being fixed to work in the way I had intended? (Or

I
missed something important ... ?)

Matthew


Jul 08 2003
"Matthew Wilson" <matthew stlsoft.org> writes:
And, before anyone mentions it:

H:\SynSoft\D\synsoft\text>dmd -c token.d -otoken.dbj
Error: Error writing file 'token.dbj\token.obj'

H:\SynSoft\D\synsoft\text>dmd -c token.d -o token.dbj
Error: Error writing file 'token.dbj\token.obj'

"Matthew Wilson" <matthew stlsoft.org> wrote in message
news:beg0vr$1b8m$1 digitaldaemon.com...
Doesn't work. Consider the following

# Without space

H:\SynSoft\D\synsoft\text>dmd -c -otoken.dbj token.d
Error: Error writing file 'token.dbj\token.obj'

# With space
H:\SynSoft\D\synsoft\text>dmd -c -o token.dbj token.d
Error: Error writing file 'token.dbj\token.obj'

Both with DMD v0.67

"Walter" <walter digitalmars.com> wrote in message
news:bdqimr$1dq7$1 digitaldaemon.com...
Why not just skip the space and write -oblah.dbj?

"Matthew Wilson" <dmd synesis.com.au> wrote in message
news:bdjagq$3p$1 digitaldaemon.com...
I've just upgraded from v0.62 to the latest, in the hope that -o would

been extended. What I was after was a way to specify the output

of
a compile-only, in other words rather than dmd BLAH.D always producing
BLAH.OBJ I wanted it to produce BLAH.DBJ. That way I could keep debug

release object files in the same directories, which meant that I could

advantage of suffix rules in my makefile, which meant a lot less

(and
a simpler makefile generator script).

When I typed dmd on the new version I was very excited to see

"  -oobjdir       write object files to directory objdir
-o filename    name output file
"

so typed dmd BLAH.D -o BLAH.DBJ (<= note the space between -o and

only to be told that it could not create BLAH.DBJ\BLAH.OBJ.

Bah!

Any chance of this being fixed to work in the way I had intended? (Or

I
missed something important ... ?)

Matthew


Jul 08 2003
This is a bug in mars.c at line 334, which discriminates between the
types of -o by checking the file extension.  If it matches .obj, it's
considered an object file, otherwise it's considered an object directory.

Jul 08 2003
"Matthew Wilson" <matthew stlsoft.org> writes:
Excellent.

I guess a fix is just around the corner. Shall we say 0.68? :)

"Burton Radons" <loth users.sourceforge.net> wrote in message
news:beg1hq$1bnb$1 digitaldaemon.com...
This is a bug in mars.c at line 334, which discriminates between the
types of -o by checking the file extension.  If it matches .obj, it's
considered an object file, otherwise it's considered an object directory.


Jul 08 2003
"Walter" <walter digitalmars.com> writes:
I'm addressing this in 0.69. -Walter

"Matthew Wilson" <matthew stlsoft.org> wrote in message
news:beg1o6$1bvl$1 digitaldaemon.com...
Excellent.

I guess a fix is just around the corner. Shall we say 0.68? :)

"Burton Radons" <loth users.sourceforge.net> wrote in message
news:beg1hq$1bnb$1 digitaldaemon.com...
This is a bug in mars.c at line 334, which discriminates between the
types of -o by checking the file extension.  If it matches .obj, it's
considered an object file, otherwise it's considered an object


Aug 04 2003