July 02, 2014
On 27/06/2014 17:03, Dicebot wrote:
> On Friday, 27 June 2014 at 15:28:30 UTC, Bruno Medeiros wrote:
>> On 24/06/2014 18:53, Daniel Kozak wrote:
>>>> Yeah, someone else had a similar problem recently. DDT tries to detect
>>>> the location of the library source code folders relative to the
>>>> compiler binary, but every other linux distro has its own different
>>>> layout (plus with DMD/GDC/LDC variations).
>>>>
>>>> What's yours so I can add to the auto-detection? Is it:
>>>> /usr/bin/dmd
>>>> /usr/include/dlang   (location of D runtime and Phobos source)
>>>> ?
>>> On Archlinux:
>>> /usr/bin/dmd -- /usr/include/dlang/dmd
>>> /usr/bin/{ldc2,ldmd2} -- /usr/include/dlang/ldc
>>> /usr/bin/gdc -- /usr/include/dlang/gdc
>>
>>
>> Are these :
>> /usr/include/dlang/dmd
>> /usr/include/dlang/ldc
>> /usr/include/dlang/gdc
>> the actual standard library import path *roots* ? That is, is there
>> where object.d/object.di and core/* and std/* are located, or is
>> another subfolder? (DMD sometimes has two import path roots ,
>> "druntime/import" and "phobos")
>
> $ ls /usr/include/dlang/dmd/
> core  etc  index.d  object.di  std  unittest.d

Thanks, then that is indeed be the import root. (and the only one)

Can someone verify the same for LDC?


-- 
Bruno Medeiros
https://twitter.com/brunodomedeiros
July 02, 2014
On Wednesday, 2 July 2014 at 11:05:46 UTC, Bruno Medeiros wrote:
>> $ ls /usr/include/dlang/dmd/
>> core  etc  index.d  object.di  std  unittest.d
>
> Thanks, then that is indeed be the import root. (and the only one)
>
> Can someone verify the same for LDC?

Yes (I am the packager of all D stuff on Arch Linux)
July 02, 2014
On 02/07/2014 12:47, Dicebot wrote:
> On Wednesday, 2 July 2014 at 11:05:46 UTC, Bruno Medeiros wrote:
>>> $ ls /usr/include/dlang/dmd/
>>> core  etc  index.d  object.di  std  unittest.d
>>
>> Thanks, then that is indeed be the import root. (and the only one)
>>
>> Can someone verify the same for LDC?
>
> Yes (I am the packager of all D stuff on Arch Linux)

Just to confirm, object.di specifically is in /usr/include/dlang/ldc too ?

-- 
Bruno Medeiros
https://twitter.com/brunodomedeiros
July 02, 2014
On Wednesday, 2 July 2014 at 13:55:50 UTC, Bruno Medeiros wrote:
> On 02/07/2014 12:47, Dicebot wrote:
>> On Wednesday, 2 July 2014 at 11:05:46 UTC, Bruno Medeiros wrote:
>>>> $ ls /usr/include/dlang/dmd/
>>>> core  etc  index.d  object.di  std  unittest.d
>>>
>>> Thanks, then that is indeed be the import root. (and the only one)
>>>
>>> Can someone verify the same for LDC?
>>
>> Yes (I am the packager of all D stuff on Arch Linux)
>
> Just to confirm, object.di specifically is in /usr/include/dlang/ldc too ?

Yes. All standard stuff can be found using -I/usr/include/dlang/<dmd|ldc|gdc>.

It is also planned that bindings to any other D libraries will be stored at /usr/include/dlang/<library> (so that single -I/usr/include/dlang will locate all of them) but currently there are none in Arch repos.
July 02, 2014
On 02/07/2014 15:19, Dicebot wrote:
>
> It is also planned that bindings to any other D libraries will be stored
> at /usr/include/dlang/<library> (so that single -I/usr/include/dlang
> will locate all of them) but currently there are none in Arch repos.

For libraries, I don't care about such system specifics - as DUB should take care of that (and provide the import paths to other tools).

Hum, in fact, now that I think of it, this functionality I have on DDT to detect compiler installations and the standard library import roots, it should ideally reside in DUB itself.

-- 
Bruno Medeiros
https://twitter.com/brunodomedeiros
July 02, 2014
On Wednesday, 2 July 2014 at 15:26:56 UTC, Bruno Medeiros wrote:
> For libraries, I don't care about such system specifics - as DUB should take care of that (and provide the import paths to other tools).
>
> Hum, in fact, now that I think of it, this functionality I have on DDT to detect compiler installations and the standard library import roots, it should ideally reside in DUB itself.

For dub it is not really important as basic installation is usually taken care of by dmd.conf, it assumes already working compiler installation. Same goes for any additional libraries installed by distro package manager - dub won't know a single thing about those.

I don't know if DDT should care either though.
July 02, 2014
On 02/07/2014 16:40, Dicebot wrote:
> On Wednesday, 2 July 2014 at 15:26:56 UTC, Bruno Medeiros wrote:
>> For libraries, I don't care about such system specifics - as DUB
>> should take care of that (and provide the import paths to other tools).
>>
>> Hum, in fact, now that I think of it, this functionality I have on DDT
>> to detect compiler installations and the standard library import
>> roots, it should ideally reside in DUB itself.
>
> For dub it is not really important as basic installation is usually
> taken care of by dmd.conf, it assumes already working compiler
> installation. Same goes for any additional libraries installed by distro
> package manager - dub won't know a single thing about those.
>
> I don't know if DDT should care either though.

You're right, for normal DUB operation (building, fetching dependencies, etc.), it matters not.
Rather this would be useful only for the "dub describe" layer of functionality, which is used only for IDEs and other tools wanting to work with DUB bundles (mostly figuring out the import path and other resolved information).

-- 
Bruno Medeiros
https://twitter.com/brunodomedeiros
1 2
Next ›   Last »