This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCS project dependencies and revision control systems

Hello,

It was suggested that here is better place to continue other discussion.

Here is my situation. I have created custom platform. I have placed only source files under revision control and created a standalone 'mk_platform' project to build  platform stuff. Next I set this project as dependency to another application project. This way platform gets build before application if necessary. My application project checked into revision control system as well as mk_platform project. However, I cannot share my application project with collaborators through revision control system. Whenever application project is opened from another workspace I get the following error:

Invalid project path: Referenced project is not accessible.

My guess is that project referencing works only for projects within workspace, but does not work for other path.

I've read in CCS tips, that workspaces is a thing not for sharing. So I'd like, what is supposed way to make project references and distribute them with revision control systems?

Thanks in advance.

  • rrlagic said:

    My guess is that project referencing works only for projects within workspace, but does not work for other path.

    You are correct that referenced project should be within the same workpace. Given that, these are options I see (although there may be other solutions that are not coming to mind or that I am not aware of):

    1) Users will need to import both the platform project as well as application project into their workspace so if the referenced project needs to be rebuilt, it can be

    2) If platform project will not be used/changed by other users, instead of making it a referenced project, simply use the platform in the application project and add the path to the platform as an additional path to the RTSC repositories

    3) As mentioned by Sasha in the thread you referenced, you could put the platform zip file (which contains all the files needed to use the platform) into source control. So, the users could check out the zip file, extract the files and use the platform without building it (in a way similar to #2).  

  • Hello AartiG,

    Thank you for your comments.

    From your explanations, I see that there is no way to make project referencing friendly to revision control system. Option 1) would require user to know which project to import. Communication between collaborators is assumed but, adding dependencies manually is what we'd like to avoid. Option 2) requires all platform stuff to be checked into repository rather than just sources. Option 3) requires extra step by user too and is hard to keep things synced, because zip file must be unzipped every time it changes.

    I think about adding some prebuild step, which would inform user to either import dependency project or build it, but I'm afraid that might be not portable.

    At this point we may consider the issue resolved in a way that there is no solution to it. I hope some time TI would make its solutions more friendly to revision control which I believe is a must have in software development.

    Thanks.