This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

uVision Projects: Variations Between Targets

Here's a really basic project management task I just can't figure out to do properly in uVision.

I want to build two executables, with minor differences between them. Differences are encapsulated in library code. The projects that produce executables have a few extra files (main, STARTUP.A51, build date, etc), plus the library.

The library project has two targets, and produces two libraries, with two different names, one for each variant. The executable projects also have two targets, and are identical except for the library with which they link. In other words, all I need to do is supply a different library to each target in a project.

I can't add files directly to the target. They have to go into a group. If I make a group to hold a library file, it's shared between all targets in the project, and so both libraries appear in both targets. Changes to one target change the other target.

This is a pretty elementary task, but I can't see how to do this without creating a separate project for every executable, so they can each have their own independent list of files, just so they can use different libraries. (This would be undesirable for maintence reasons, as all the other files are common, and I would rather not have to update four projects every time I add a file.)

I get the impression I'm not using uVision the way it was intended, or else I'm overlooking something. What?

(While I'm on the subject: I'd prefer the targets to all be listed in the tree view, rather than have a pulldown list for the top level of the tree, with a seperate tree view. That is, something that looks like:

+ Target1
- Target2
    - Group1
        - File1
        - File2
    + Group2

Along with this, there should be a menu/key to build / rebuild all targets in the project. "Rebuild all target files" is actually "Rebuild all (target files)" and not "Rebuild (all target) files". I don't see a way to rebuild everything without manually choosing each target and rebuilding it.

Or should I just bail on uVision and switch to another project management system?)

Parents
  • do it in a .bat file

    That's certainly one of the "bail on uVision" options. Or make (etc).

    people who know what editors should be

    I don't use the uVision editor much. Sometimes I'll make minimal edits for a quick-fix for some syntax error during compile. But I don't spend much time there.

    uncheck the 'Include in Build' option

    Ah! Many thanks. That's the feature I was overlooking. I was stuck on the WYSIWYG notion that if a file was in the list, it was part of the build. So it looks weird, but seems to work.

    let us know if you find anything

    There's an analogue to make called "Jam" that I've used before, which has some nice features. It's still text-file-driven, like make.

    http://www.perforce.com/jam/jam.html

    So if there's a GUI front end, that could be good. I'll have to poke around on the Web some later.

    Thanks for the help!

Reply
  • do it in a .bat file

    That's certainly one of the "bail on uVision" options. Or make (etc).

    people who know what editors should be

    I don't use the uVision editor much. Sometimes I'll make minimal edits for a quick-fix for some syntax error during compile. But I don't spend much time there.

    uncheck the 'Include in Build' option

    Ah! Many thanks. That's the feature I was overlooking. I was stuck on the WYSIWYG notion that if a file was in the list, it was part of the build. So it looks weird, but seems to work.

    let us know if you find anything

    There's an analogue to make called "Jam" that I've used before, which has some nice features. It's still text-file-driven, like make.

    http://www.perforce.com/jam/jam.html

    So if there's a GUI front end, that could be good. I'll have to poke around on the Web some later.

    Thanks for the help!

Children
No data