View previous topic :: View next topic |
Author |
Message |
tom
Joined: 14 Dec 2005 Posts: 22 Location: Buenos Aires, Argentina
|
Posted: Sun Dec 30, 2007 11:11 pm Post subject: D interface files (.di) and Rebuild |
|
|
Hi,
I'm building a private library and use Rebuild to compile.
I'd like to have the resulting .lib file at some place (to link with it directly), and also have an include dir where interface files would be readed for the compilation process.
The first is easy, but the second has a problem, or I'm missing something.
Let's say I have
Code: |
rebuild main.d -of..\bin\%TARGET%.lib -oq%PATH_OBJS% -Hd..\include -Dq..\doc -lib %RBLD_VERSION% -D -H %RBLD_TYPE%
|
Then, include dir would contain all the .di files, but flattened in the package/dir sense of the word. Namely, I need to keep the same directory structure (i.e. package structure) of the src folder in the include folder. So I expect not to do that manually nor make my own tool/script for such job. I hope that, maybe, there is (or could be) an easy way to do this with Rebuild.
Thanks in advance, _________________ Tom; |
|
Back to top |
|
|
doob
Joined: 06 Jan 2007 Posts: 367
|
Posted: Mon Dec 31, 2007 6:56 am Post subject: |
|
|
I don't think you can do this with rebuild alone, you need to use dsss (dsss uses rebuild) to get what you want.
You need to create a dsss.conf file and place it one level above the library root directory
containing for a lib: "[lib_root_directory]"
or for an application: "[main.d]".
(without the quotes)
Then run "dsss build" to build the lib and "dsss install" to install it in the dsss folder, the later will create the .di files you want. The .di files will be kept in the necessary directory structure for the package and modules to work correctly. |
|
Back to top |
|
|
tom
Joined: 14 Dec 2005 Posts: 22 Location: Buenos Aires, Argentina
|
Posted: Tue Jan 01, 2008 4:21 pm Post subject: |
|
|
Oh ok, I see. That's wonderful.
Thanks.
Now that I've done it, I have another question:
Is it possible to override the path to which dsss write the lib, objs, imports and docs (by default: <CURDIR>, dsss_objs, dsss_imports and dsss_docs, respectively) ?
Kind regards, _________________ Tom; |
|
Back to top |
|
|
doob
Joined: 06 Jan 2007 Posts: 367
|
Posted: Wed Jan 02, 2008 7:24 am Post subject: |
|
|
I know that you can change the installation folders but the build folders, I don't know if that's possible. Someone else that knows dsss better should answer that question. You can aways run "dsss --help" to see if you find something. |
|
Back to top |
|
|
tom
Joined: 14 Dec 2005 Posts: 22 Location: Buenos Aires, Argentina
|
Posted: Wed Jan 02, 2008 8:17 am Post subject: |
|
|
Nope, I tried '--help' already. The other alternative for me was to use the '--config' option, so that I could gather all the output in a build folder. But '--help' says it should be used for testing purposes only. So...
It seems like DSSS is oriented to work in a shared-path build manner, and there's no way to customize it for working on a more traditional scheme. _________________ Tom; |
|
Back to top |
|
|
|