Developer forums (C::B DEVELOPMENT STRICTLY!) > Plugins development
[UPDATED] EnvVars plugin
MortenMacFly:
Dear community,
I've taken some time to implement the most requested feature for the EnvVars plugin: EnvVar sets and their applicability to projects. Thus the result is an updated EnvVar plugin accordingly. I would like to start something like a "BETA" testing for people that like to play around with the new features. Most important (as I can't do it myself) is the following:
- compatibility / issues with wxWidgets 2.8.x
- compatibility / issues with *nix/MAC
- issues with build system (a.k.a. autobuild...)
Any reports are welcome...
With regards, Morten.
Ps.: Best to be placed within the "old" envvar plugin folder under contrib plugins which should be cleared before...
Edit: Removed attachment. Latest revision is merged into SVN trunk.
dmoore:
Hi Morten: you are off to a great start.
I managed to get the code to compile on Ubuntu Linux. (The only thing I need to change was the paths in the build options - i changed ../../../devel to $(#cb)/devel etc)
a few things i noticed
1. the list control in the project properties is huge (expands to the whole height of the panel) (but also see 4)
2. it would be clearer if the custom sets list control appeared above instead of below the list of environment variables in environment settings (but also see 4)
3. the environment variables show up in the child processes as they are supposed to. are they also subsituted in any of the build options?
4. it seems that the environment sets are kept in the program settings. would the projects be more portable if kept in the project settings?
dmoore:
attached my version of the linux project file
[attachment deleted by admin]
MortenMacFly:
Thanks for the report! :-)
--- Quote from: dmoore on May 30, 2007, 03:00:24 am ---1. the list control in the project properties is huge (expands to the whole height of the panel) (but also see 4)
--- End quote ---
Mmmh... not for me. Mind sending me a screenshot? It is setup to be as width as the propeties dialog... but you really mean the height?!
--- Quote from: dmoore on May 30, 2007, 03:00:24 am ---2. it would be clearer if the custom sets list control appeared above instead of below the list of environment variables in environment settings (but also see 4)
--- End quote ---
Ok - can do that (had in mind to move the label, too...).
--- Quote from: dmoore on May 30, 2007, 03:00:24 am ---3. the environment variables show up in the child processes as they are supposed to. are they also subsituted in any of the build options?
--- End quote ---
Yes, they are. The project specific envvars are applied as soon as the project jets activated (consult the C::B debug console to see what exactly is going on - there is currently a lot of debug messages.). By using default user variable expansion, e.g. $(MY_VAR) you can access the envvars during build.
--- Quote from: dmoore on May 30, 2007, 03:00:24 am ---4. it seems that the environment sets are kept in the program settings. would the projects be more portable if kept in the project settings?
--- End quote ---
Yes and no. I decided to do it like that for several reasons:
1.) You will need C::B anyway for this feature to work so it's easier to keep the sets in one place.
2.) You can easily share envvar sets between C::B users using the cb_share_config tool.
3.) I wanted to be compatible to the GCV's as they are working the same way (e.g. #(My_VAR)).
In the end I believe maintaining them at one place is easier. Imagine you have an envvar set for a specific platform. If you have 10 projects you would have to maintain all 10 projects if *one* envvar changes. This seems not convenient to me. But I'm open for discussion...
With regards, Morten.
Game_Ender:
EDIT: Ignore below, I am an idiot and should definitly be more grateful when I feature I asked for gets implemented.
It should obviously be per project, per target and global, just like the current compiler settings. I have several difference projects on my computer that all need custom LD_LIBRARY_PATH's, and random environment variables. I don't want to have to be constantly edit on LD_LIBRARY_PATH every time I change projects.
Really this is a flaw/missing feature in CB almost all other IDE's I have used let you set these on a per executable basis. These being Eclipse, XCode and VS.
Navigation
[0] Message Index
[#] Next page
Go to full version