[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2017-01-16 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

--- Comment #19 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/tools

https://github.com/dlang/tools/commit/b6ec807712a452a47f712364b86d02335af2a93f
Fix Issue 16962 - rdmd --build-only --force -c main.d fails: ./main: No such
file or directory

https://github.com/dlang/tools/commit/bfbcd086bad634066ba142964823f1689e879aaf
Merge pull request #207 from CyberShadow/issue-16962

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2017-01-06 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

--- Comment #18 from Timothee Cour  ---
Split of the bug pertaining to -of= -od= to
https://issues.dlang.org/show_bug.cgi?id=17064

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2017-01-06 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

--- Comment #17 from github-bugzi...@puremagic.com ---
Commits pushed to master at https://github.com/dlang/tools

https://github.com/dlang/tools/commit/b6ec807712a452a47f712364b86d02335af2a93f
Fix Issue 16962 - rdmd --build-only --force -c main.d fails: ./main: No such
file or directory

https://github.com/dlang/tools/commit/bfbcd086bad634066ba142964823f1689e879aaf
Merge pull request #207 from CyberShadow/issue-16962

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

github-bugzi...@puremagic.com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

--- Comment #16 from github-bugzi...@puremagic.com ---
Commits pushed to stable at https://github.com/dlang/tools

https://github.com/dlang/tools/commit/b6ec807712a452a47f712364b86d02335af2a93f
Fix Issue 16962 - rdmd --build-only --force -c main.d fails: ./main: No such
file or directory

The actual fix was done by the revert. This simply adds a test.

https://github.com/dlang/tools/commit/bfbcd086bad634066ba142964823f1689e879aaf
Merge pull request #207 from CyberShadow/issue-16962

rdmd fixes (issues 14296, 16962 and 16978)
merged-on-behalf-of: Martin Nowak <c...@dawg.eu>

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-17 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

Vladimir Panteleev  changed:

   What|Removed |Added

   Keywords||pull

--- Comment #15 from Vladimir Panteleev  ---
https://github.com/dlang/tools/pull/207

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-17 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

Vladimir Panteleev  changed:

   What|Removed |Added

   See Also||https://issues.dlang.org/sh
   ||ow_bug.cgi?id=16978

--- Comment #14 from Vladimir Panteleev  ---
Another regression: issue 16978

Since there has been no reply from ag0aep6g for 5 days, I am going to revert
that PR and add tests for the regressions. Then they or anyone else can have a
go at it.

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-12 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

--- Comment #13 from Vladimir Panteleev  ---
(In reply to Vladimir Panteleev from comment #12)
> DMD will now use -c even with -lib.

rdmd, not DMD

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-12 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

--- Comment #12 from Vladimir Panteleev  ---
ag0aep6g: There is now an outdated comment in rdmd:

// When building libraries, DMD does not generate object files.
// Instead, it uses the -od parameter as the location for the library file.
// Thus, override objDir (which is normally a temporary directory)
// to be the target output directory.

DMD will now use -c even with -lib. Was this something that changed due to your
recent changes?

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-11 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

--- Comment #11 from Vladimir Panteleev  ---
 ag0aep6g: Since implementing -c directly is more complicated with the recent
changes, can we emulate by using -lib and extracting the lib file's contents or
such?

Timothee, can you substitute -c with -lib in your use case? If so, we could fix
the -od problem and make -c an explicitly unsupported switch like -o-.

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-11 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

Andrei Alexandrescu  changed:

   What|Removed |Added

 CC||and...@erdani.com

--- Comment #10 from Andrei Alexandrescu  ---
It may indeed be worthwhile to support -c as in "solve all dependencies and
produce a big .o file ready for linking". There is no easy way to do that with
either dmd or rdmd. Alternatively we could use a --no-link flag but -c seems
more direct. Vladimir, what do you think?

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-11 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

--- Comment #9 from Timothee Cour  ---
>> Sorry, what is the use case of using -c ? I think it working was a mere 
>> accident. If you want to syntax-check the file, use dmd (not rdmd) with -o-. 
>> Or do you want to compile everything into a single object file for some 
>> reason?

Use case: when dmd's built-in linker magic isn't good enough (eg 
http://forum.dlang.org/post/mailman.765.1481492407.9448.digitalmar...@puremagic.com
where i have to first compile then link to get -pie but I keep running into
similar issues where i want to link seperately because the default isn't good
enough)

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-11 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

--- Comment #8 from Vladimir Panteleev  ---
There is a known problem with -lib and -od:

https://issues.dlang.org/show_bug.cgi?id=14296

Admittedly it's my fault as my commit introduced the regression, however the
underlying bug is that DMD treats -od differently depending on whether -lib is
passed or not, which I did not expect.

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-11 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

Vladimir Panteleev  changed:

   What|Removed |Added

 CC||thecybersha...@gmail.com

--- Comment #7 from Vladimir Panteleev  ---
Sorry, what is the use case of using -c ? I think it working was a mere
accident. If you want to syntax-check the file, use dmd (not rdmd) with -o-. Or
do you want to compile everything into a single object file for some reason?

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-11 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

ag0ae...@gmail.com changed:

   What|Removed |Added

 CC||ag0ae...@gmail.com

--- Comment #6 from ag0ae...@gmail.com ---
Found another one while looking into this:
https://issues.dlang.org/show_bug.cgi?id=16966

Regarding the bugs here:

The -of=/-od= thing (comment 3) seems to be a simple oversight. rdmd has just
not been thought of when the feature was implemented in dmd. Should be easy to
fix.

-o- not working (comment 2) seems to a deliberate restriction.

Supporting -c as in the summary may be some work. I must have missed that
scenario completely when doing .
Problem is that rdmd now treats the root module specially: compiles it
separately, links everything together in a separate step. That doesn't go
naturally with -c, as far as I see. May have to detect -c and do things
completely different then.

-lib not working with relative paths (comment 3) seems odd. I hope it's just a
simple bug, and not a design flaw. I haven't investigated.

I'm going to look into this further, but it may take me a while. If anyone else
wants to have a go, that would be great.

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-11 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

--- Comment #5 from Andrej Mitrovic  ---
(In reply to Andrej Mitrovic from comment #4)
> https://github.com/dlang/tools/commit/
> a63233c22dce33ff91141c5706cdc7d66a8c0099 seems to have caused the regression
> for the first test-case.

That's a merge commit, it was specifically 10ca158.

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-11 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

Andrej Mitrovic  changed:

   What|Removed |Added

 CC||andrej.mitrov...@gmail.com

--- Comment #4 from Andrej Mitrovic  ---
https://github.com/dlang/tools/commit/a63233c22dce33ff91141c5706cdc7d66a8c0099
seems to have caused the regression for the first test-case.

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-10 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

--- Comment #3 from Timothee Cour  ---
also broken:
rdmd --build-only --force -od=/tmp/bar/ main.d

std.file.FileException@std/file.d(679): =/tmp/bar/main: No such file or
directory
=> rdmd doesn't seem to understand the new '=' syntax in '-od=' even though dmd
does (DMD64 D Compiler v2.072.1)

the only thing that works is:

rdmd --build-only --force -lib -od/tmp/bar/ main.d
rdmd --build-only --force -od/tmp/bar/ main.d

but NOT these:
s/-od/-od=/
s/-lib/-c/
or when we replace absolute path in od by relative path

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-10 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

--- Comment #2 from Timothee Cour  ---
as well as:

rdmd --build-only --force -lib -odtemp/ -o- main.d
object.Exception@rdmd.d(95): Option -o- currently not supported by rdmd

--


[Issue 16962] rdmd --build-only --force -c main.d fails: ./main: No such file or directory

2016-12-10 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16962

Timothee Cour  changed:

   What|Removed |Added

 CC||timothee.co...@gmail.com

--- Comment #1 from Timothee Cour  ---
these also fail:

mkdir temp
rdmd --build-only --force -lib -od=temp/ main.d
core.exception.AssertError@rdmd.d(489): should have been created by
compileRootAndGetDeps


rdmd --build-only --force -lib -of=temp/main.a main.d
core.exception.AssertError@rdmd.d(489): should have been created by
compileRootAndGetDeps


rdmd --build-only --force -lib -oftemp/main.a main.d
std.file.FileException@std/file.d(679): temp/main.a: No such file or directory


rdmd --build-only --force -lib -odtemp/ main.d
std.file.FileException@std/file.d(679): temp/main.a: No such file or directory

--