www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - DSSS problem

reply "Tim M" <a b.com> writes:
Hi I am using dsss and I'm not sure if I'm not using it right or there is  
a bug in it. I have 2 projects using the same dsss.conf and sharing a lot  
of common code. The linking of a large resource file makes the .exe I  
expect to be a lot larger leaving the other alot smaller but code from the  
smaller one becomes the code for both. AFAIK I should be doing a 'dsss  
build' to build all my projects or a 'dsss build proj' for just one. And  
use A dsss.conf like this:

name = proja
[proj1.d]
target = proja
buildflags+=-L/rc:resources\proj1.res
buildflags+=-gui

name = projb
[proj2.d]
target = projb
buildflags+=-L/rc:resources\proj2.res
buildflags+=-gui

I was testing proj1 for a while fine then I tried a 'dsss build' to  
rebuild all of them and the problem started. It is re-produceable but  
random. Could anyone please provide an example dsss.conf. I am not ready  
to post full sollution.
Dec 19 2008
next sibling parent "Tim M" <a b.com> writes:
NVM I have found that it was caused by both projects had the same  
namespace.
Dec 19 2008
prev sibling parent reply Sergey Gromov <snake.scaly gmail.com> writes:
Fri, 19 Dec 2008 22:01:09 +1300, Tim M wrote:

 Hi I am using dsss and I'm not sure if I'm not using it right or there is  
 a bug in it. I have 2 projects using the same dsss.conf and sharing a lot  
 of common code. The linking of a large resource file makes the .exe I  
 expect to be a lot larger leaving the other alot smaller but code from the  
 smaller one becomes the code for both. AFAIK I should be doing a 'dsss  
 build' to build all my projects or a 'dsss build proj' for just one. And  
 use A dsss.conf like this:
 
 name = proja
 [proj1.d]
 target = proja
 buildflags+=-L/rc:resources\proj1.res
 buildflags+=-gui
 
 name = projb
 [proj2.d]
 target = projb
 buildflags+=-L/rc:resources\proj2.res
 buildflags+=-gui
 
 I was testing proj1 for a while fine then I tried a 'dsss build' to  
 rebuild all of them and the problem started. It is re-produceable but  
 random. Could anyone please provide an example dsss.conf. I am not ready  
 to post full sollution.
You don't mention the problem itself. What happens, what's wrong? As to your dsss.conf file. If what you pasted is the contents of one file then there is at least one problem. The 'name' property is global, and there can be only one. What you have now is a global 'name' property set to 'proja' and another 'name' property in section 'proj1.d' set to 'projb'. That's because everything after [proj1.d] belongs to the 'proj1.d' section, regardless of empty lines you put there. Basically that name=xxx global parameter seems to mean nothing. When you say 'dsss build proja' DSSS searches for a section named 'proja' or a section with a target named 'proja'.
Dec 19 2008
parent "Tim M" <a b.com> writes:
I did metion the problem. In my first post I said that one project has the  
code from the other rather than it's own code. It's linked with an image  
resource but because it's using the other's code it nothing but extra megs  
that are unused. Re-read.


On Sat, 20 Dec 2008 01:06:55 +1300, Sergey Gromov <snake.scaly gmail.com>  
wrote:

 Fri, 19 Dec 2008 22:01:09 +1300, Tim M wrote:

 Hi I am using dsss and I'm not sure if I'm not using it right or there  
 is
 a bug in it. I have 2 projects using the same dsss.conf and sharing a  
 lot
 of common code. The linking of a large resource file makes the .exe I
 expect to be a lot larger leaving the other alot smaller but code from  
 the
 smaller one becomes the code for both. AFAIK I should be doing a 'dsss
 build' to build all my projects or a 'dsss build proj' for just one. And
 use A dsss.conf like this:

 name = proja
 [proj1.d]
 target = proja
 buildflags+=-L/rc:resources\proj1.res
 buildflags+=-gui

 name = projb
 [proj2.d]
 target = projb
 buildflags+=-L/rc:resources\proj2.res
 buildflags+=-gui

 I was testing proj1 for a while fine then I tried a 'dsss build' to
 rebuild all of them and the problem started. It is re-produceable but
 random. Could anyone please provide an example dsss.conf. I am not ready
 to post full sollution.
You don't mention the problem itself. What happens, what's wrong? As to your dsss.conf file. If what you pasted is the contents of one file then there is at least one problem. The 'name' property is global, and there can be only one. What you have now is a global 'name' property set to 'proja' and another 'name' property in section 'proj1.d' set to 'projb'. That's because everything after [proj1.d] belongs to the 'proj1.d' section, regardless of empty lines you put there. Basically that name=xxx global parameter seems to mean nothing. When you say 'dsss build proja' DSSS searches for a section named 'proja' or a section with a target named 'proja'.
Dec 19 2008