Project Home
Project Home
Trackers
Trackers
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - How to handle Projects with multiple programs and libraries in Eclipse / Momentics.: (20 Items)
   
How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  
I've seen this question many times, but never any real answers.

PROBLEM:
With Eclipse I can only create flat projects 
(no nesting of projects within projects)

QUESTION:
How do I move my current products that are hosted on a QNX development server to the Windows Hosted Momentics IDE with 
SVN ?

CURRENT CODE ORGANIZATION:
Infrastructure
   -lib
   -include
   -Inf.Program1
      -ServerCode
      -InterfaceLibraryCode
   -Inf.Program2
      -ClientCode linking with Inf.Program1.InterfaceLibrary

Product1
   -lib
   -include
   -P1.Program1
      -ServerCode
      -InterfaceLibraryCode
      -P1.Program1 -> linking with Inf.Program1.InterfaceLibrary
   -P1.Program2
      -ClientCode linking with Inf.Program1.InterfaceLibrary and P1.Program1.InterfaceLib


Product2
   -lib
   -include
   -P2.Program1
      -ServerCode
      -InterfaceLibraryCode
      -P2.Program1 -> linking with Inf.Program1.InterfaceLibrary
   -P2.Program2
      -ClientCode linking with Inf.Program1.InterfaceLibrary and P2.Program1.InterfaceLib


Product3 ...

-----------------------------------------

I've seen people pointing to ANT, but I've not seen any applied solution.

As my predecessors, I wish to Checkout from SVN my Infrastructure root
and my Product1 root, and from there just call a recursive make from the  
top to build my product.

This is the current infrastructure I have for my QNX4.25 and my QNX hosted QNXv6.3.

HOW do I reproduce this project structure under Momentics in Eclipse???

Thanks in advance,
Martin Politick.
Re: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  
Can you please check this article, let me know if it helps:

http://community.qnx.com/sf/wiki/do/viewPage/projects.ide/wiki/ProjectsBuildAndIDE


Martin Politick wrote:
> I've seen this question many times, but never any real answers.
> 
> PROBLEM:
> With Eclipse I can only create flat projects 
> (no nesting of projects within projects)
> 
> QUESTION:
> How do I move my current products that are hosted on a QNX development server to the Windows Hosted Momentics IDE with
 SVN ?
> 
> CURRENT CODE ORGANIZATION:
> Infrastructure
>    -lib
>    -include
>    -Inf.Program1
>       -ServerCode
>       -InterfaceLibraryCode
>    -Inf.Program2
>       -ClientCode linking with Inf.Program1.InterfaceLibrary
> 
> Product1
>    -lib
>    -include
>    -P1.Program1
>       -ServerCode
>       -InterfaceLibraryCode
>       -P1.Program1 -> linking with Inf.Program1.InterfaceLibrary
>    -P1.Program2
>       -ClientCode linking with Inf.Program1.InterfaceLibrary and P1.Program1.InterfaceLib
> 
> 
> Product2
>    -lib
>    -include
>    -P2.Program1
>       -ServerCode
>       -InterfaceLibraryCode
>       -P2.Program1 -> linking with Inf.Program1.InterfaceLibrary
>    -P2.Program2
>       -ClientCode linking with Inf.Program1.InterfaceLibrary and P2.Program1.InterfaceLib
> 
> 
> Product3 ...
> 
> -----------------------------------------
> 
> I've seen people pointing to ANT, but I've not seen any applied solution.
> 
> As my predecessors, I wish to Checkout from SVN my Infrastructure root
> and my Product1 root, and from there just call a recursive make from the  
> top to build my product.
> 
> This is the current infrastructure I have for my QNX4.25 and my QNX hosted QNXv6.3.
> 
> HOW do I reproduce this project structure under Momentics in Eclipse???
> 
> Thanks in advance,
> Martin Politick.
> 
> 
> _______________________________________________
> QNX Momentics Community Support
> http://community.qnx.com/sf/go/post28558
> 
Re: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  
> Can you please check this article, let me know if it helps:
> 
> http://community.qnx.com/sf/wiki/do/viewPage/projects.ide/wiki/
> ProjectsBuildAndIDE
> 
> 

Thanks,
But it didn't work great for me yet...  I'm confused by some of the instructions.  I'll keep on trying to follow them 
and fight the tools to make
them do what I want.

Did anyone else figure out a good recipe? 

I was hoping that the IDE would help on the building process, but for now
It feels very awkward and unnatural.  It's sad that the Eclipse IDE and Turtoise don't play together.
RE: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  

> -----Original Message-----
> From: Martin Politick [mailto:community-noreply@qnx.com]
> Sent: May-05-09 12:35 AM
> To: momentics-community
> Subject: Re: How to handle Projects with multiple programs and
> libraries in Eclipse / Momentics.
> 
> > Can you please check this article, let me know if it helps:
> >
> > http://community.qnx.com/sf/wiki/do/viewPage/projects.ide/wiki/
> > ProjectsBuildAndIDE
> >
> >
> 
> Thanks,
> But it didn't work great for me yet...  I'm confused by some of the
> instructions.  I'll keep on trying to follow them and fight the tools
> to make
> them do what I want.
> 
> Did anyone else figure out a good recipe?
> 
> I was hoping that the IDE would help on the building process, but for
> now
> It feels very awkward and unnatural.  It's sad that the Eclipse IDE and
> Turtoise don't play together.

You don't need Turtoise if you use subversive or subclipse.

> 
> _______________________________________________
> QNX Momentics Community Support
> http://community.qnx.com/sf/go/post28663
> 
Re: RE: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  
> > It's sad that the Eclipse IDE and
> > Turtoise don't play together.
> 
> You don't need Turtoise if you use subversive or subclipse.
> 
> > 
> > _______________________________________________
> > QNX Momentics Community Support
> > http://community.qnx.com/sf/go/post28663
> > 

I have and use the subversive plug-in in Eclipse.
We also check-in our documentation using Tortoise.

Since we're familiar with Tortoise, it's natural for us to check out
a point in the dev tree using Tortoise (it also has more features) and dropping it in the development workspace space of
 the IDE.
The IDE does not see the added directories.
RE: RE: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  
> Since we're familiar with Tortoise, it's natural for us to check out
> a point in the dev tree using Tortoise (it also has more features) and
> dropping it in the development workspace space of the IDE.
> The IDE does not see the added directories.
> 

It should if you refresh it.

> 
> _______________________________________________
> QNX Momentics Community Support
> http://community.qnx.com/sf/go/post28681
> 
Re: RE: RE: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  
Salut Mario,

Since you've been using QNX for many years you must have a similar setup.
How are you managing a projects that are composed of many nested binaries,
share interfaces (.h) and libraries?

What I'm trying to achieve is
SVN Checkout of my development tree
Then with any new module, create an "Eclipse project" and use ENV variables to include interfaces and libraries from the
 dev. tree into my new project.

Once the "project" is done, put it back into the SVN tree at the right nested location.

Merci à l'avance,
Martin.
Re: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  
You can use eclipse linked resources for that. The article I sent did not help?

Martin Politick wrote:
> Salut Mario,
> 
> Since you've been using QNX for many years you must have a similar setup.
> How are you managing a projects that are composed of many nested binaries,
> share interfaces (.h) and libraries?
> 
> What I'm trying to achieve is
> SVN Checkout of my development tree
> Then with any new module, create an "Eclipse project" and use ENV variables to include interfaces and libraries from 
the dev. tree into my new project.
> 
> Once the "project" is done, put it back into the SVN tree at the right nested location.
> 
> Merci à l'avance,
> Martin.
> 
> _______________________________________________
> QNX Momentics Community Support
> http://community.qnx.com/sf/go/post28714
RE: RE: RE: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  

> -----Original Message-----
> From: Martin Politick [mailto:community-noreply@qnx.com]
> Sent: May-05-09 12:10 PM
> To: momentics-community
> Subject: Re: RE: RE: How to handle Projects with multiple programs and
> libraries in Eclipse / Momentics.
> 
> Salut Mario,
> 

Salut Martin ;-)

> Since you've been using QNX for many years you must have a similar
> setup.

It is similar indeed.

> How are you managing a projects that are composed of many nested
> binaries, share interfaces (.h) and libraries?
> 
> What I'm trying to achieve is
> SVN Checkout of my development tree
> Then with any new module, create an "Eclipse project" and use ENV
> variables to include interfaces and libraries from the dev. tree into
> my new project.

That is what I've given up on trying to do.

What I ended up doing is creating a Makefile file project with my own makefile system.  The root of the project contains
 a makefile that will recursively go in each directories and build whatever is in there, respecting dependencies. 

- Project
  Makefile
  Common.mk
  - bin
  - lib
  - include
    - common
    - math
  - libraries
    - common
      Makefile
    - math
      Makefile
  - tools
    - converter
      - include
      - Makefile
    - ...
  - comm
    - ...
  - ...

Common.mk is included by every makefile, so common rules are put in there.  The lib directory is where all .a/.so will 
go when being build, that makes them easy to reference, no need to know where they were build from.  When a binary is 
build it is copied in the bin directory.  The directory include is where all the headers from the various library live.

The project has a root make target to build everything and targets (lib or executable) have a make target of their own. 
 That makes for a lot of make targets ( we have over 60 executable)  when considering each has a build/clean/copy/doc/
flint target.  Upcoming CDT has means of doing copy/paste of target, but current version distributed by QNX  doesn't so 
I ended up editing the .cproject file by hand to create all these make targets.

Most of the solution proposed by QNX (using links) wouldn't work for me as one of our requirement was the ability to 
work on multiple project/product at the same time, single checkout etc.  I haven't tried it cause I've spend so much 
time making this works that Eclipse is becoming counter-productive.  Before I try any sort of other mechanism I'll wait 
till Eclipse becomes mature enough to really handle big project.  I was expecting the QNX source available via SVN ( os,
 network, filesystem, etc) to show off how to handle big projects in Eclipse and learn from that. That has not 
materialize for obvious reasons ;-)

Using a makefile has it's drawback, but I manage.

> 
> Once the "project" is done, put it back into the SVN tree at the right nested location.
> 
> Merci à l'avance,

Hope that helps.

> Martin.
> 
> _______________________________________________
> QNX Momentics Community Support
> http://community.qnx.com/sf/go/post28714
Re: RE: RE: RE: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  
> That is what I've given up on trying to do.

I'm really sad to hear that.  I was hoping that the IDE would simplify our tool set and make system.

My next problem is our packaging...  We have our home brewed packaging system which will become a nightmare to support 
under Win/Eclipse. 

> 
> What I ended up doing is creating a Makefile file project with my own makefile
>  system.  The root of the project contains a makefile that will recursively go
>  in each directories and build whatever is in there, respecting dependencies. 


Yes, that's the system we currently have, but hosted on a QNX server using qmake and the QNXv4 make system.  I was 
hoping to replace it with something native to Eclipse.


RE: RE: RE: RE: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  

> -----Original Message-----
> From: Martin Politick [mailto:community-noreply@qnx.com]
> Sent: May-05-09 1:22 PM
> To: momentics-community
> Subject: Re: RE: RE: RE: How to handle Projects with multiple programs
> and libraries in Eclipse / Momentics.
> 
> 
> > That is what I've given up on trying to do.
> 
> I'm really sad to hear that.  I was hoping that the IDE would simplify
> our tool set and make system.
> 
> My next problem is our packaging...  We have our home brewed packaging
> system which will become a nightmare to support under Win/Eclipse.
> 
> >
> > What I ended up doing is creating a Makefile file project with my own
> makefile
> >  system.  The root of the project contains a makefile that will
> recursively go
> >  in each directories and build whatever is in there, respecting
> dependencies.
> 
> 
> Yes, that's the system we currently have, but hosted on a QNX server
> using qmake and the QNXv4 make system.  I was hoping to replace it with
> something native to Eclipse.

We also came from a QNX4 background.  With QNX6.4.0 QNX has pushed us outside of the self-hosted world hence we had to 
work very hard to get everything working under Windows.  I mean very hard....  That is until I tried Eclipse under Linux
, what a difference, most of our QNX4/QNX6 scripts worked only requiring minor tweaking. Too bad I didn't realized it 
before.  As far as I'm concern that probably means we can keep on using QNX otherwise that would probably have tipped 
the balanced in favour of switching OS altogether.

However we still need a QNX6 machine to build HDs with qnx4fs/qnx6fs.  I hope they come up with a solution to that 
before they drop self-hosted all together....  We deal with that with vmware running QNX6, creating our runtime disk 
connected via USB<->IDE or USB<->SATA interface.

> 
> 
> 
> 
> _______________________________________________
> QNX Momentics Community Support
> http://community.qnx.com/sf/go/post28722
> 
Re: RE: RE: RE: RE: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  
 
> We also came from a QNX4 background.  With QNX6.4.0 QNX has pushed us outside 
> of the self-hosted world hence we had to work very hard to get everything 
> working under Windows.  I mean very hard....  


Yes, pushed is the right word.  But at the end, after a lot of complaining,  I was told that we could still self host 
with 6.4.  But we were strongly encouraged to move to Eclipse.
RE: RE: RE: RE: RE: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  

> -----Original Message-----
> From: Martin Politick [mailto:community-noreply@qnx.com]
> Sent: May-05-09 3:52 PM
> To: momentics-community
> Subject: Re: RE: RE: RE: RE: How to handle Projects with multiple
> programs and libraries in Eclipse / Momentics.
> 
> 
> > We also came from a QNX4 background.  With QNX6.4.0 QNX has pushed us
> outside
> > of the self-hosted world hence we had to work very hard to get
> everything
> > working under Windows.  I mean very hard....
> 
> 
> Yes, pushed is the right word.  But at the end, after a lot of
> complaining,  I was told that we could still self host with 6.4. 

Are you saying you were first told that you could not work and build executable from self-hosted?

> But we were strongly encouraged to move to Eclipse.
> 
> _______________________________________________
> QNX Momentics Community Support
> http://community.qnx.com/sf/go/post28737
> 
RE: RE: RE: RE: RE: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  

> -----Original Message-----
> From: Martin Politick [mailto:community-noreply@qnx.com]
> Sent: May-05-09 3:52 PM
> To: momentics-community
> Subject: Re: RE: RE: RE: RE: How to handle Projects with multiple
> programs and libraries in Eclipse / Momentics.
> 
> 
> > We also came from a QNX4 background.  With QNX6.4.0 QNX has pushed us
> outside
> > of the self-hosted world hence we had to work very hard to get
> everything
> > working under Windows.  I mean very hard....
> 
> 
> Yes, pushed is the right word.  But at the end, after a lot of
> complaining,  I was told that we could still self host with 6.4.

That is probably for your own good, I'm guessing soon compilers/tools won't be available for x86 and x86 will become a 
target just like for the other processors (PPC, ARM, etc).  

Ok enough said on that subject.
Re: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  
Mario Charest wrote:
> 
>> -----Original Message-----
>> From: Martin Politick [mailto:community-noreply@qnx.com]
>> Sent: May-05-09 3:52 PM
>> To: momentics-community
>> Subject: Re: RE: RE: RE: RE: How to handle Projects with multiple
>> programs and libraries in Eclipse / Momentics.
>>
>>
>>> We also came from a QNX4 background.  With QNX6.4.0 QNX has pushed us
>> outside
>>> of the self-hosted world hence we had to work very hard to get
>> everything
>>> working under Windows.  I mean very hard....
>>
>> Yes, pushed is the right word.  But at the end, after a lot of
>> complaining,  I was told that we could still self host with 6.4.
> 
> That is probably for your own good, I'm guessing soon compilers/tools won't be available for x86 and x86 will become a
 target just like for the other processors (PPC, ARM, etc).  

The toolchain doesn't rely on a 3rd party JVM so this seems unlikely.

Regards,

Ryan Mansfield
RE: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  
> > That is probably for your own good, I'm guessing soon compilers/tools
> won't be available for x86 and x86 will become a target just like for
> the other processors (PPC, ARM, etc).
> 
> The toolchain doesn't rely on a 3rd party JVM so this seems unlikely.
> 

As a matter of principle I never bet, but if I would this is one I'd be willing to take.

For anyone reading this, don't take me wrong, I have no inside information to base my statement.  It's all gut feeling, 
 speculation and probably a bit of venting as well.


> Regards,
> 
> Ryan Mansfield
> 

> _______________________________________________
> QNX Momentics Community Support
> http://community.qnx.com/sf/go/post28741
> 
Re: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  
I'm starting to progress on a not too painful path,
but I still need to work on it.


The concept is:

Code structure:
SVN://Trunk/
--Common
  --inlude
  --lib
  --Server1
  --Server1Lib (because Eclipse considers a lib as a project)
  --Client1
  --MyEncryptionLib
  --Client2
  ...
--ProductA
  --include
  --lib
  --ServerA1
  --ServerA1Lib
  --ClientA1
  --ProductASpecificLib
  --ClientA2
  ...
--ProductB
 ...

Where product A and product B are completely independant products,
but they share common Services and libraries stored in TRUNK/Common/...
Each Server*, Server*Lib, Client* is a "project" in Eclipse's world.

--------------------------------------------
In Eclipse:
-Recursive Checkout SVN Trunk in Eclipse Worspace and leave it there for ever. (Update the Trunk when required of 
course)

-Make sure you have the default QNX Makefile in every directory above the projects (so it can be called from the root 
and recurse down)

-open CMD and goto "EclipseWorkspace"/TRUNK , and type make.  This make will recurse down and build every SVN Released 
library and binary.

-File->Import.ProjectFromSVN, and pick a "project", say ServerA1
Project propreties -> Share All Project Properties
                         -> Make Builder -> unselect Use default and add WORKSPACE_LOC=${workspace_loc}
You now have ServerA1 as a true eclipse project.

-now open "common.mk" and if not present add : 
include ../../project.mk
below the line "USEFILE="

-Copy the below project.mk file (template) in your eclipse project:
#-------Start of project.mk-----------------------------
PRODUCT=
SHARED=Core
CODE_TRUNK=QNX-Momentics
TARGET="C:/Data/run/"

# A List of directories to search for include files.
EXTRA_INCVPATH+=$(WORKSPACE_LOC)/$(CODE_TRUNK)/$(SHARED)/include
ifdef PRODUCT
   EXTRA_INCVPATH+=$(WORKSPACE_LOC)/$(CODE_TRUNK)/$(PRODUCT)/include
endif

# A list of directories to search for Core or project library files.
EXTRA_LIBVPATH+=$(WORKSPACE_LOC)/$(CODE_TRUNK)/$(SHARED)/lib
ifdef PRODUCT
   EXTRA_LIBVPATH+=$(WORKSPACE_LOC)/$(CODE_TRUNK)/$(PRODUCT)/lib
endif
#===== POST_BUILD - extra steps to do after building the image.
ifndef PRODUCT
   define PRE_BUILD
      -$(if $(filter AR, $(BUILD_TYPE)), @$(CP_HOST) $(PROJECT_ROOT)/*.h "$(WORKSPACE_LOC)"/$(CODE_TRUNK)/$(SHARED)/
include/)
      -$(if $(filter EX, $(BUILD_TYPE)), @$(CP_HOST) $(PROJECT_ROOT)/*_lib.h "$(WORKSPACE_LOC)"/$(CODE_TRUNK)/$(SHARED)/
include/)
   endef
   define POST_BUILD
      -$(if $(filter AR, $(BUILD_TYPE)), @$(CP_HOST) *.a* "$(WORKSPACE_LOC)"/$(CODE_TRUNK)/$(SHARED)/lib/)
      -$(if $(filter EX, $(BUILD_TYPE)), @$(CP_HOST) $(BUILDNAME) $(TARGET)/bin/) 
   endef
   else
   define PRE_BUILD
      -$(if $(filter AR, $(BUILD_TYPE)), @$(CP_HOST) $(PROJECT_ROOT)/*.h "$(WORKSPACE_LOC)"/$(CODE_TRUNK)/$(PRODUCT)/
include/)
      -$(if $(filter EX, $(BUILD_TYPE)), @$(CP_HOST) $(PROJECT_ROOT)/*_lib.h "$(WORKSPACE_LOC)"/$(CODE_TRUNK)/$(PRODUCT)
/include/)
   endef
   define POST_BUILD
      -$(if $(filter AR, $(BUILD_TYPE)), @$(CP_HOST) *.a* "$(WORKSPACE_LOC)"/$(CODE_TRUNK)/$(PRODUCT)/lib/)
      -$(if $(filter EX, $(BUILD_TYPE)), @$(CP_HOST) $(BUILDNAME) $(TARGET)/bin/) 
   endef
endif

#-------End of project.mk-----------------------------

Tailor the 4 variables if needed.
PRODUCT : is the name of the Product Directory.  Leave empty for "Common"
SHARED : is the name of the Common project Directory.  Core for my structure
CODE_TRUNK : is the "Eclipse project" where you have checked out
your SVN code tree.  Mine is QNX-Momentics because we have many "TRUNKS" for many oter products under other OSes.
TARGET : is the place where you can have all binaries dumped so you can
easily transfer all these targets to your test platform.  It does not take multiple targets for now (i.e. x86 + ARM + ..
. at the same time)


It would be nice if QNX would export all the Eclipse variables (like...
View Full Message
RE: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  
That didn`t work for us because this mean you have one set of source per workspace.  I wanted to have multiple revision/
branches live in the same workspace.  I also didn`t want to work with environment variable to setup a project.  It has 
to be very simple procedure, checkout, build and release.  It`s still not a 100% because you have to manually select the
 version of tools you need (6.3.2/6.4.0/6.4.1). To prevent against mistake, our makefile checks if the setup is ok and 
will refuse to build if it's not.  

> -----Original Message-----
> From: Martin Politick [mailto:community-noreply@qnx.com]
> Sent: May-06-09 9:31 PM
> To: momentics-community
> Subject: Re: How to handle Projects with multiple programs and
> libraries in Eclipse / Momentics.
> 
> I'm starting to progress on a not too painful path,
> but I still need to work on it.
> 
> 
> The concept is:
> 
> Code structure:
> SVN://Trunk/
> --Common
>   --inlude
>   --lib
>   --Server1
>   --Server1Lib (because Eclipse considers a lib as a project)
>   --Client1
>   --MyEncryptionLib
>   --Client2
>   ...
> --ProductA
>   --include
>   --lib
>   --ServerA1
>   --ServerA1Lib
>   --ClientA1
>   --ProductASpecificLib
>   --ClientA2
>   ...
> --ProductB
>  ...
> 
> Where product A and product B are completely independant products,
> but they share common Services and libraries stored in TRUNK/Common/...
> Each Server*, Server*Lib, Client* is a "project" in Eclipse's world.
> 
> --------------------------------------------
> In Eclipse:
> -Recursive Checkout SVN Trunk in Eclipse Worspace and leave it there
> for ever. (Update the Trunk when required of course)
> 
> -Make sure you have the default QNX Makefile in every directory above
> the projects (so it can be called from the root and recurse down)
> 
> -open CMD and goto "EclipseWorkspace"/TRUNK , and type make.  This make
> will recurse down and build every SVN Released library and binary.
> 
> -File->Import.ProjectFromSVN, and pick a "project", say ServerA1
> Project propreties -> Share All Project Properties
>                          -> Make Builder -> unselect Use default and
> add WORKSPACE_LOC=${workspace_loc}
> You now have ServerA1 as a true eclipse project.
> 
> -now open "common.mk" and if not present add :
> include ../../project.mk
> below the line "USEFILE="
> 
> -Copy the below project.mk file (template) in your eclipse project:
> #-------Start of project.mk-----------------------------
> PRODUCT=
> SHARED=Core
> CODE_TRUNK=QNX-Momentics
> TARGET="C:/Data/run/"
> 
> # A List of directories to search for include files.
> EXTRA_INCVPATH+=$(WORKSPACE_LOC)/$(CODE_TRUNK)/$(SHARED)/include
> ifdef PRODUCT
>    EXTRA_INCVPATH+=$(WORKSPACE_LOC)/$(CODE_TRUNK)/$(PRODUCT)/include
> endif
> 
> # A list of directories to search for Core or project library files.
> EXTRA_LIBVPATH+=$(WORKSPACE_LOC)/$(CODE_TRUNK)/$(SHARED)/lib
> ifdef PRODUCT
>    EXTRA_LIBVPATH+=$(WORKSPACE_LOC)/$(CODE_TRUNK)/$(PRODUCT)/lib
> endif
> #===== POST_BUILD - extra steps to do after building the image.
> ifndef PRODUCT
>    define PRE_BUILD
>       -$(if $(filter AR, $(BUILD_TYPE)), @$(CP_HOST)
> $(PROJECT_ROOT)/*.h
> "$(WORKSPACE_LOC)"/$(CODE_TRUNK)/$(SHARED)/include/)
>       -$(if $(filter EX, $(BUILD_TYPE)), @$(CP_HOST)
> $(PROJECT_ROOT)/*_lib.h
> "$(WORKSPACE_LOC)"/$(CODE_TRUNK)/$(SHARED)/include/)
>    endef
>    define POST_BUILD
>       -$(if $(filter AR, $(BUILD_TYPE)), @$(CP_HOST) *.a*
> "$(WORKSPACE_LOC)"/$(CODE_TRUNK)/$(SHARED)/lib/)
>       -$(if $(filter EX, $(BUILD_TYPE)), @$(CP_HOST) $(BUILDNAME)
> $(TARGET)/bin/)
>    endef
>    else
> ...
View Full Message
Re: RE: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  
>you have to manually select the version of tools  you need (6.3.2/6.4.0/6.4.1).

I don't know if this would work for you, but we have one VMWare
virtual machine per tool set.  So if you want to use a particular developemnt configuration, you start that particular 
virtual machine and sync with SVN.  All our development env are in VMs.  
It makes them:
1- Reproducible
2- backup able
3- portable
This is useful when we need to work on old stuff like our 
QNXv4.25 dev environments (QNX self hosted).  It would be a challenge
to re-create that environment... it evolved so much over a long period of time with a lot of our home brewed tools.



> That didn`t work for us because this mean you have one set of source per workspace. 

Yes that's true.  We only work on one branch/revision at a time in our workspace, even today under our QNX hosted.  We 
create a new / different workspace for each branch.

I didn't try to do it under Eclipse yet, but I saw a "Switch Workspace"
File->SwitchWorkspace
that looks like it could support this concept.  But this is just a hope at the moment.


RE: RE: How to handle Projects with multiple programs and libraries in Eclipse / Momentics.  

> -----Original Message-----
> From: Martin Politick [mailto:community-noreply@qnx.com]
> Sent: May-07-09 10:29 AM
> To: momentics-community
> Subject: Re: RE: How to handle Projects with multiple programs and
> libraries in Eclipse / Momentics.
> 
> 
> >you have to manually select the version of tools  you need
> (6.3.2/6.4.0/6.4.1).
> 
> I don't know if this would work for you, but we have one VMWare
> virtual machine per tool set. 

That is something we have to think about, but with 10 developers it sounds to me like it's a bit too complicated to 
support. It doesn't prevent anyone from mixing things up ;-)

Under Windows/Linux it's not too bad because all these versions can co-exists.  Under self-hosted unfortunately that's 
not possible ( see Malte the IDE is not the only thing that self-hosted doesn't provide over non-self-hosted).