Hey Everyone,

Why can't you heat the sub directories "greeneggs" and "ham" directly and
use the -srd and -dr FOO switches? I do understand if there are additional
sub directories this might be a bit more difficult. However, you could
re-arrange your source directories to handle these issues if necessary, no?

Thanks,

Brian Rogers
"Intelligence removes complexity." - Me
http://blogs.msdn.com/icumove <-- NEW


On Fri, Jan 8, 2010 at 7:52 PM, Blair <os...@live.com> wrote:

> Looking at your situation, this is what looks to me to be your solution:
>
> 1- I'm assuming that your transformed heat outputs don't have any Directory
> elements with an Id of either localized or neutral. Remove them if they
> exist in your transform.
> 2- Under your Product element (or some other manually authored location
> that
> is linked into your final MSI):
>    <Directory Id='INSTALLDIR' ...><!--INSTALLDIR will likely live under
> other Directory element(s) as needed to create a correct directory tree-->
>      <Directory Id='foo' .../>
>      <Directory Id='bar' .../>
>    </Directory>
> 3- In your transformed localized sources from heat:
>    <DirectoryRef Id='foo'>
>      ...
>      <Directory Id='greeneggs'>
>        ...
>      </Directory>
>      ...
>    </Directory>
>    <DirectoryRef Id='bar'>
>      ...
>    </Directory>
>
> 4- In your transformed neutral sources from heat:
>    <DirectoryRef Id='foo'>
>      ...
>      <Directory Id='ham'>
>        ...
>      </Directory>
>      ...
>    </Directory>
>
> So your transform will need to look at the directory tree that heat
> produces
> and transform that to get the above results (by altering at and above the
> level of the children of installdir and leaving the others unless you start
> creating some of them as well).
>
> If you have files in installdir as well as the above subdirs you will need
> to also declare a DirectoryRef for that directory so that the fragment(s)
> from heat can be linked into your wixlibs. The only directories you have to
> transform/manually deal with are those that are in common. The above lets
> you simply harvest the unique directories as they are laid out without
> having to manually deal with them.
>
> -----Original Message-----
> From: Kyle Huey [mailto:ksh...@ufl.edu]
> Sent: Friday, January 08, 2010 5:48 PM
> To: General discussion for Windows Installer XML toolset.
>  Subject: Re: [WiX-users] Using Heat multiple times => Duplicate symbols
>
> Yeah, this is more or less what I'm doing.  The issue is that I still need
> to define the directory structure somewhere.  Zach suggests defining it
> manually which is probably the best solution but unfortunately isn't really
> an option for what I'm doing.  What would be ideal is if light would handle
> a duplicate symbol definition if the symbols are identical (same ID and
> attributes, etc.) by outputting the symbol once instead of choking.  Of
> course, there may be good reasons I haven't thought of not to do that - I'm
> not sure.  I'm hoping that someone has solved the same problem in a manner
> that avoids this problem.
>
> - Kyle
>
> On Fri, Jan 8, 2010 at 6:47 PM, Blair <os...@live.com> wrote:
>
> > How about using XSLT to change the <Directory Id="foo" ...> into
> > <DirectoryRef Id="foo"> in the localized wixlib's wxs file from heat?
> >
> > -----Original Message-----
> > From: Kyle Huey [mailto:ksh...@ufl.edu]
> > Sent: Friday, January 08, 2010 7:09 AM
> > To: wix-users@lists.sourceforge.net
> > Subject: [WiX-users] Using Heat multiple times => Duplicate symbols
> >
> > Hello all,
> >
> > I am using heat to generate the source for two .wixlibs which are lighted
> > together with some other pieces to form my final MSI.  Heat is used on
> two
> > different directories at build time.  One of these directories holds all
> of
> > my language specific files "/localized/" and the other holds all of my
> > language neutral files "/neutral/".  Creating a setup this way allows me
> to
> > generate the language neutral .wixlib just once for every locale I
> support.
> > The problem is that the directory structure within those directories has
> > some (but not complete) overlap.  e.g.
> >
> > localized
> >  foo
> >    greeneggs
> >  bar
> >
> > neutral
> >  foo
> >    ham
> >
> > becomes on the user's computer
> > installdir
> >  foo
> >    greeneggs
> >    ham
> >  bar
> >
> > This gives me a duplicate symbol error at foo when I try to link the two
> > wixlibs together.  I can't just throw away the directory fragments from
> one
> > heat run because neither structure is a subset of the other.  I also
> don't
> > want to tell light to suppress the duplicate symbols error (and I don't
> > know
> > that that will produce a working MSI).  Really the only solution I've
> come
> > up with is to use XSLT to eliminate all of the directory elements from
> the
> > first two runs and then run heat again against the combined result and
> use
> > XSLT on that third run to eliminate all of the non-directory elements.
> >
> > That seems suboptimal at best.  Anyone have any better ideas?
> >
> > Thanks,
> >
> > - Kyle
> >
> >
>
> ----------------------------------------------------------------------------
> > --
> > This SF.Net email is sponsored by the Verizon Developer Community
> > Take advantage of Verizon's best-in-class app development support
> > A streamlined, 14 day to market process makes app distribution fast and
> > easy
> > Join now and get one step closer to millions of Verizon customers
> > http://p.sf.net/sfu/verizon-dev2dev
> > _______________________________________________
> > WiX-users mailing list
> > WiX-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wix-users
> >
> >
> >
> >
>
> ----------------------------------------------------------------------------
> --
> > This SF.Net email is sponsored by the Verizon Developer Community
> > Take advantage of Verizon's best-in-class app development support
> > A streamlined, 14 day to market process makes app distribution fast and
> > easy
> > Join now and get one step closer to millions of Verizon customers
> > http://p.sf.net/sfu/verizon-dev2dev
> > _______________________________________________
> > WiX-users mailing list
> > WiX-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wix-users
> >
>
> ----------------------------------------------------------------------------
> --
> This SF.Net email is sponsored by the Verizon Developer Community
> Take advantage of Verizon's best-in-class app development support
> A streamlined, 14 day to market process makes app distribution fast and
> easy
> Join now and get one step closer to millions of Verizon customers
> http://p.sf.net/sfu/verizon-dev2dev
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
>
> ------------------------------------------------------------------------------
>  This SF.Net email is sponsored by the Verizon Developer Community
> Take advantage of Verizon's best-in-class app development support
> A streamlined, 14 day to market process makes app distribution fast and
> easy
> Join now and get one step closer to millions of Verizon customers
> http://p.sf.net/sfu/verizon-dev2dev
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to